IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
ValueAttributeSrcMacros.h
Go to the documentation of this file.
1 // ValueAttributeSrcMacros.h:
3 // --------------------------
4 //
15 
16 #ifndef __IPSDKBASEPROCESSING_VALUEATTRIBUTESRCMACROS_H__
17 #define __IPSDKBASEPROCESSING_VALUEATTRIBUTESRCMACROS_H__
18 
21 
23 // Mandatory attributes
25 
28 #define IPSDK_IMPLEMENT_VALUE_ATTRIBUTE(libraryName, namespaceSeq, className, \
29  eMsgEnum) \
30  IPSDK_IMPLEMENT_SERIAL_WITHOUT_COPY(libraryName, namespaceSeq, className, 1) \
31  IPSDK_IMPLEMENT_TOOLTIP(libraryName, className, eMsgEnum) \
32  IPSDK_IMPLEMENT_ATTRIBUTE_BASE_BODY(className, eMsgEnum) \
33  className::className() \
34  { \
35  } \
36  className::~className() \
37  { \
38  } \
39  IPSDK_IMPLEMENT_SERIAL_WRITE(className, className::BaseValueAttributeClassType) \
40  return true; \
41  } \
42  IPSDK_IMPLEMENT_SERIAL_READ(className, className::BaseValueAttributeClassType) \
43  return true; \
44  }
45 
47 // Optional attributes
49 
52 #define IPSDK_IMPLEMENT_OPTIONAL_VALUE_ATTRIBUTE(libraryName, namespaceSeq, className, eMsgEnum) \
53  IPSDK_IMPLEMENT_SERIAL_WITHOUT_COPY(libraryName, namespaceSeq, className, 1) \
54  IPSDK_IMPLEMENT_TOOLTIP(libraryName, className, eMsgEnum) \
55  IPSDK_IMPLEMENT_ATTRIBUTE_BASE_BODY(className, eMsgEnum) \
56  className::className() : \
57  className::BaseValueAttributeClassType(retrieveDefaultValue()) \
58  { \
59  } \
60  className::~className() \
61  { \
62  } \
63  IPSDK_IMPLEMENT_SERIAL_WRITE(className, className::BaseValueAttributeClassType) \
64  return true; \
65  } \
66  IPSDK_IMPLEMENT_SERIAL_READ(className, className::BaseValueAttributeClassType) \
67  return true; \
68  }
69 
72 
73 #endif // __IPSDKBASEPROCESSING_VALUEATTRIBUTESRCMACROS_H__
Log messages description.
Source part of macros set for attribute class implementation.