IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
ShapeMeasureInfoSetAttributeHdrMacros.h
Go to the documentation of this file.
1 // ShapeMeasureInfoSetAttributeHdrMacros.h:
3 // ----------------------------------------
4 //
15 
16 #ifndef __IPSDKIMAGEPROCESSING_SHAPEMEASUREINFOSETATTRIBUTEHDRMACROS_H__
17 #define __IPSDKIMAGEPROCESSING_SHAPEMEASUREINFOSETATTRIBUTEHDRMACROS_H__
18 
20 #include <IPSDKImageProcessing/Attribute/ShapeMeasureInfoSet/InputShapeMeasureInfoSetAttribute.h>
22 
25 
28 #define IPSDK_DECLARE_SHAPEMEASUREINFOSET_ATTRIBUTE_BODY(libraryName, className, baseClassName, RuleString) \
29  IPSDK_DECLARE_SERIAL_WITHOUT_COPY(libraryName, className) \
30  IPSDK_DECLARE_TOOLTIP() \
31  IPSDK_DECLARE_ATTRIBUTE_BASE_BODY(libraryName, className, RuleString) \
32 public: \
33  typedef baseClassName BaseShapeMeasureInfoSetAttributeClassType; \
34 protected: \
35  className(); \
36 public: \
37  ~className();
38 
41 
44 #define IPSDK_DECLARE_MANDATORY_SHAPEMEASUREINFOSET_ATTRIBUTE(libraryName, className, baseClassName, RuleString) \
45 class IPSDK_LIB_API(libraryName) className : public baseClassName { \
46  IPSDK_DECLARE_SHAPEMEASUREINFOSET_ATTRIBUTE_BODY(libraryName, className, baseClassName, RuleString); \
47  IPSDK_DECLARE_MANDATORY_DATA(); \
48 };
49 
52 #define IPSDK_DECLARE_OPTIONAL_SHAPEMEASUREINFOSET_ATTRIBUTE(libraryName, className, baseClassName, RuleString) \
53 class IPSDK_LIB_API(libraryName) className : public baseClassName { \
54  IPSDK_DECLARE_SHAPEMEASUREINFOSET_ATTRIBUTE_BODY(libraryName, className, baseClassName, RuleString); \
55  IPSDK_DECLARE_OPTIONAL_DATA(); \
56 };
57 
59 // Mandatory attributes
61 
64 #define IPSDK_DECLARE_INPUT_SHAPEMEASUREINFOSET_ATTRIBUTE(libraryName, className, RuleString) \
65  IPSDK_DECLARE_MANDATORY_SHAPEMEASUREINFOSET_ATTRIBUTE(libraryName, className, \
66  ipsdk::imaproc::InputShapeMeasureInfoSetAttribute, \
67  RuleString)
68 
70 // Optional attributes
72 
75 #define IPSDK_DECLARE_INPUT_OPTIONAL_SHAPEMEASUREINFOSET_ATTRIBUTE(libraryName, className, RuleString) \
76  IPSDK_DECLARE_OPTIONAL_SHAPEMEASUREINFOSET_ATTRIBUTE(libraryName, className, \
77  ipsdk::imaproc::InputShapeMeasureInfoSetAttribute, \
78  RuleString)
79 
82 
83 #endif // __IPSDKIMAGEPROCESSING_SHAPEMEASUREINFOSETATTRIBUTEHDRMACROS_H__
Header part of macros set for attribute class declaration.
Operators used to enable rules on shape measure information set attributes.