StandardImageVariableGroups.h

Go to the documentation of this file.
00001 // -*- c-basic-offset: 4 -*-
00024 #ifndef STANDARD_IMAGE_VARIABLE_GROUPS_H
00025 #define STANDARD_IMAGE_VARIABLE_GROUPS_H
00026 
00027 #include <hugin_shared.h>
00028 #include "ImageVariableGroup.h"
00029 #include "PanoramaData.h"
00030 
00031 // remove when todo below is complete.
00032 #include "Lens.h"
00033 
00034 namespace HuginBase {
00035 
00043 class IMPEX ConstStandardImageVariableGroups
00044 {
00045 public:
00051     ConstStandardImageVariableGroups(const PanoramaData & pano);
00052     
00058     ConstImageVariableGroup & getLenses()
00059     { return m_lenses; }
00060     
00066     static const std::set<ConstImageVariableGroup::ImageVariableEnum> & getLensVariables();
00067     
00082      Lens getLens(std::size_t lens_number);
00083      
00092     Lens getLensForImage(std::size_t imgNr);
00093     
00099     ConstImageVariableGroup & getStacks()
00100     { return m_stacks; }
00101     
00107     static const std::set<ConstImageVariableGroup::ImageVariableEnum> & getStackVariables();
00108     
00113     void update();
00114 protected:
00119     ConstImageVariableGroup m_lenses;
00120     
00125     ConstImageVariableGroup m_stacks;
00126     
00127     const PanoramaData & m_pano;
00128 };
00129 
00130 class IMPEX StandardImageVariableGroups: public ConstStandardImageVariableGroups
00131 {
00132 public:
00133     StandardImageVariableGroups(PanoramaData & pano);
00134     
00140     ImageVariableGroup & getLenses()
00141     { return m_lenses; }
00142     
00148     ImageVariableGroup & getStacks()
00149     { return m_stacks; }
00150     
00155     void update();
00156 protected:
00157         ImageVariableGroup m_lenses;
00158         ImageVariableGroup m_stacks;
00159         PanoramaData & m_pano;
00160 };
00161 
00162 } // namespace
00163 
00164 #endif

Generated on 23 Nov 2014 for Hugintrunk by  doxygen 1.4.7