24 #ifndef _PANODATA_IMAGEVARIABLE_H
25 #define _PANODATA_IMAGEVARIABLE_H
139 template <
class Type>
144 template <
class Type>
149 template <
class Type>
154 template <
class Type>
161 template <
class Type>
168 template <
class Type>
174 template <
class Type>
180 template <
class Type>
184 if (m_ptr == link->
m_ptr)
186 DEBUG_INFO(
"Attempt to link already linked variables");
196 template <
class Type>
199 m_ptr.reset(
new Type(*m_ptr));
202 template <
class Type>
205 return m_ptr.use_count() > 1;
208 template <
class Type>
212 return m_ptr == otherVariable->
m_ptr;
217 #endif // ndef _PANODATA_IMAGEVARIABLE_H
void removeLinks()
remove all links
An ImageVariable stores a value that can be linked to other ImageVariables of the same type...
bool isLinked() const
Find out if there are other linked variables.
void setData(const Type data)
Set the variable groups' value.
void linkWith(ImageVariable< Type > *link)
Create a link.
Type getData() const
get the variable's value
bool isLinkedWith(const ImageVariable< Type > *otherVariable) const
Find out if this variable is linked to a given variable.
std::shared_ptr< Type > m_ptr
ImageVariable()
constructor
options wxIntPtr wxIntPtr sortData std::vector< PanoInfo > * data
~ImageVariable()
destructor