IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
RuleImageBufferTypeNotOneOf.h
1 // RuleImageBufferTypeNotOneOf.h:
3 // ---------------------------
4 //
15 
16 #ifndef __IPSDKIMAGEPROCESSING_RULEIMAGEBUFFERTYPENOTONEOF_H__
17 #define __IPSDKIMAGEPROCESSING_RULEIMAGEBUFFERTYPENOTONEOF_H__
18 
19 // suppression warnings
20 // warning C4251: 'ipsdk::imaproc::RuleImageBufferTypeNotOneOf::_imageBufferTypeSet' : class 'std::set<_Kty>' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::RuleImageBufferTypeNotOneOf'
21 #pragma warning (push)
22 #pragma warning (disable : 4251)
23 
24 #include <IPSDKImageProcessing/Rule/ImageBufferType/BaseImageBufferTypeRule.h>
25 #include <set>
26 
27 namespace ipsdk {
28 namespace imaproc {
29 
32 
34 {
35 // predefined public type
36 public:
38  static const eIBTRuleType::domain g_ibtRuleType = eIBTRuleType::eIBTRT_NotOneOf;
39 
40 public:
46 
47 // methods
48 public:
50  eIBTRuleType getIBTRuleType() const;
51 
58  void init(const IBTAttributeConstWeakPtr& pAttribute,
59  const image::eImageBufferType& imageBufferType0);
60  void init(const IBTAttributeConstWeakPtr& pAttribute,
61  const image::eImageBufferType& imageBufferType0,
62  const image::eImageBufferType& imageBufferType1);
63  void init(const IBTAttributeConstWeakPtr& pAttribute,
64  const image::eImageBufferType& imageBufferType0,
65  const image::eImageBufferType& imageBufferType1,
66  const image::eImageBufferType& imageBufferType2);
67  void init(const IBTAttributeConstWeakPtr& pAttribute,
68  const image::eImageBufferType& imageBufferType0,
69  const image::eImageBufferType& imageBufferType1,
70  const image::eImageBufferType& imageBufferType2,
71  const image::eImageBufferType& imageBufferType3);
72  void init(const IBTAttributeConstWeakPtr& pAttribute,
73  const image::eImageBufferType& imageBufferType0,
74  const image::eImageBufferType& imageBufferType1,
75  const image::eImageBufferType& imageBufferType2,
76  const image::eImageBufferType& imageBufferType3,
77  const image::eImageBufferType& imageBufferType4);
78  void init(const IBTAttributeConstWeakPtr& pAttribute,
79  const image::eImageBufferType& imageBufferType0,
80  const image::eImageBufferType& imageBufferType1,
81  const image::eImageBufferType& imageBufferType2,
82  const image::eImageBufferType& imageBufferType3,
83  const image::eImageBufferType& imageBufferType4,
84  const image::eImageBufferType& imageBufferType5);
85  void init(const IBTAttributeConstWeakPtr& pAttribute,
86  const image::eImageBufferType& imageBufferType0,
87  const image::eImageBufferType& imageBufferType1,
88  const image::eImageBufferType& imageBufferType2,
89  const image::eImageBufferType& imageBufferType3,
90  const image::eImageBufferType& imageBufferType4,
91  const image::eImageBufferType& imageBufferType5,
92  const image::eImageBufferType& imageBufferType6);
93  void init(const IBTAttributeConstWeakPtr& pAttribute,
94  const image::eImageBufferType& imageBufferType0,
95  const image::eImageBufferType& imageBufferType1,
96  const image::eImageBufferType& imageBufferType2,
97  const image::eImageBufferType& imageBufferType3,
98  const image::eImageBufferType& imageBufferType4,
99  const image::eImageBufferType& imageBufferType5,
100  const image::eImageBufferType& imageBufferType6,
101  const image::eImageBufferType& imageBufferType7);
102  void init(const IBTAttributeConstWeakPtr& pAttribute,
103  const image::eImageBufferType& imageBufferType0,
104  const image::eImageBufferType& imageBufferType1,
105  const image::eImageBufferType& imageBufferType2,
106  const image::eImageBufferType& imageBufferType3,
107  const image::eImageBufferType& imageBufferType4,
108  const image::eImageBufferType& imageBufferType5,
109  const image::eImageBufferType& imageBufferType6,
110  const image::eImageBufferType& imageBufferType7,
111  const image::eImageBufferType& imageBufferType8);
113 
116  const ImageBufferTypeColl& getImageBufferTypeColl() const;
117 
118 protected:
120  bool testRule() const;
121 
123  std::string createRuleFormalString() const;
124 
126  std::string createRuleEvaluatedString(const ipUInt32 increment) const;
127 
128 // attributes
129 protected:
132 };
133 
136 
137 inline eIBTRuleType
139 {
140  return g_ibtRuleType;
141 }
142 
145 
146 } // end of namespace imaproc
147 } // end of namespace ipsdk
148 
149 #pragma warning (pop)
150 
151 #endif // __IPSDKIMAGEPROCESSING_RULEIMAGEBUFFERTYPENOTONEOF_H__
Base class for rules allowing to check image buffer type values.
Definition: BaseImageBufferTypeRule.h:28
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
eIBTRuleType
enumerate describing image buffer type rule operation type
Definition: ImageBufferTypeRuleTypes.h:33
Rule allowing to check whether an image buffer type value is not part of a collection.
Definition: RuleImageBufferTypeNotOneOf.h:33
ImageBufferTypeColl _imageBufferTypeColl
collection of allowed image buffer types for rule
Definition: RuleImageBufferTypeNotOneOf.h:131
boost::weak_ptr< const BaseImageBufferTypeAttribute > IBTAttributeConstWeakPtr
Definition: ImageBufferTypeAttributeTypes.h:43
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
check whether image buffer type value is not part of a predefined collection
Definition: ImageBufferTypeRuleTypes.h:37
static const eIBTRuleType::domain g_ibtRuleType
image buffer type rule type associated to rule
Definition: RuleImageBufferTypeNotOneOf.h:38
std::set< image::eImageBufferType > ImageBufferTypeColl
collection of image buffer types
Definition: ImageBufferTypeAttributeTypes.h:50
eIBTRuleType getIBTRuleType() const
get image buffer type rule type
Definition: RuleImageBufferTypeNotOneOf.h:138
eImageBufferType
types associated to image buffers
Definition: ImageTypes.h:78
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53