IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
IPEnumAttribute.h
1 // IPEnumAttribute.h:
3 // ------------------
4 //
15 
16 #ifndef __IPSDKIMAGEPROCESSING_IPENUMATTRIBUTE_H__
17 #define __IPSDKIMAGEPROCESSING_IPENUMATTRIBUTE_H__
18 
19 #include <IPSDKImageProcessing/Attribute/IPEnum/BaseIPEnumAttribute.h>
20 
21 namespace ipsdk {
22 namespace imaproc {
23 
26 
27 template <typename EnumType>
28 class IPEnumAttribute : public BaseIPEnumAttribute
29 {
30 // predefined public types
31 public:
33  typedef EnumType ValueType;
34 
36  typedef EnumType StorageType;
37 
38 protected:
41 
42 public:
45 
46 // methods
47 public:
49  virtual void init(const EnumType& value) = 0;
50 
53  virtual EnumType getValue() const = 0;
54 
55 // attributes
56 protected:
57 
58 };
59 
62 
63 } // end of namespace imaproc
64 } // end of namespace ipsdk
65 
66 #endif // __IPSDKIMAGEPROCESSING_IPENUMATTRIBUTE_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
~IPEnumAttribute()
destructor
Definition: IPEnumAttribute.h:44
EnumType StorageType
Value type associated to object.
Definition: IPEnumAttribute.h:36
virtual EnumType getValue() const =0
get value associated to attribute
EnumType ValueType
Storage type associated to object.
Definition: IPEnumAttribute.h:33
virtual void init(const EnumType &value)=0
initialize enumerate associated to attribute
IPEnumAttribute()
constructor
Definition: IPEnumAttribute.h:40