IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
GreyMomentsData.h
1 // GreyMomentsData.h:
3 // ------------------
4 //
14 
15 #ifndef __IPSDKIPLSHAPEANALYSIS_GREYMOMENTSDATA_H__
16 #define __IPSDKIPLSHAPEANALYSIS_GREYMOMENTSDATA_H__
17 
19 #include <IPSDKSerialization/Engine/BaseSerializationObject.h>
20 
21 namespace ipsdk {
22 namespace imaproc {
23 namespace shape {
24 namespace analysis {
25 
28 
30 {
31  // declare serial class
32  IPSDK_DECLARE_SERIAL_WITH_COPY(IPSDKIPLShapeAnalysis, GreyMomentsData)
33 
34 // predefined public types
35 public:
38  (eGM3I_X0Y0Z0)
39  (eGM3I_X1Y0Z0)
40  (eGM3I_X2Y0Z0)
41  (eGM3I_X3Y0Z0)
42  (eGM3I_X0Y1Z0)
43  (eGM3I_X1Y1Z0)
44  (eGM3I_X2Y1Z0)
45  (eGM3I_X0Y2Z0)
46  (eGM3I_X1Y2Z0)
47  (eGM3I_X0Y3Z0)
48  (eGM3I_X0Y0Z1)
49  (eGM3I_X1Y0Z1)
50  (eGM3I_X2Y0Z1)
51  (eGM3I_X0Y1Z1)
52  (eGM3I_X1Y1Z1)
53  (eGM3I_X0Y2Z1)
54  (eGM3I_X0Y0Z2)
55  (eGM3I_X1Y0Z2)
56  (eGM3I_X0Y1Z2)
57  (eGM3I_X0Y0Z3)
58  )
59 
60 public:
64  ~GreyMomentsData();
66 
67 // methods
68 public:
70  inline ipReal64 getMoment(const eGreyMoment3Id& id) const
71  {
72  return _tabMoments[id.value()];
73  }
74 
75 // attributes
76 public:
78  ipReal64 _tabMoments[eGreyMoment3Id::size];
79 };
80 
83 
84 } // end of namespace analysis
85 } // end of namespace shape
86 } // end of namespace imaproc
87 } // end of namespace ipsdk
88 
89 #endif // __IPSDKIPLSHAPEANALYSIS_GREYMOMENTSDATA_H__
#define IPSDK_DECLARE_SERIAL_WITH_COPY(libraryName, className)
eGreyMoment3Id
Definition: GreyMomentsData.h:39
double ipReal64
Definition of import/export macro for library.
storage class for grey moments data
Definition: GreyMomentsData.h:29
#define IPSDKIPLSHAPEANALYSIS_API
Import/Export macro for library IPSDKIPLShapeAnalysis.
Definition: IPSDKIPLShapeAnalysisExports.h:25
#define IPSDK_ENUM(enumTypeStr, enumSeq)