IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
RuleAllowedStripBufferType.h
1 // RuleAllowedStripBufferType.h:
3 // -----------------------------
4 //
15 
16 #ifndef __IPSDKIMAGEPROCESSING_RULEALLOWEDSTRIPBUFFERTYPE_H__
17 #define __IPSDKIMAGEPROCESSING_RULEALLOWEDSTRIPBUFFERTYPE_H__
18 
19 // suppression of warnings
20 // warning C4251: 'ipsdk::imaproc::RuleAllowedStripBufferType::_bufferTypeColl' : class 'std::set<_Kty>' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::RuleAllowedStripBufferType'
21 #pragma warning (push)
22 #pragma warning (disable : 4251)
23 
24 #include <IPSDKImageProcessing/Rule/Strip/StripProperty/BaseStripPropertyRule.h>
25 
26 namespace ipsdk {
27 namespace imaproc {
28 
31 
33 {
34 // predefined public type
35 public:
37  static const eStripPropertyRuleType::domain g_stripPropertyRuleType = eStripPropertyRuleType::eSPRT_AllowedBufferType;
38 
39 public:
45 
46 // methods
47 public:
49  eStripPropertyRuleType getStripPropertyRuleType() const;
50 
57  void init(const StripAttributeConstWeakPtr& pAttribute,
58  const image::eImageBufferType& bufferType0);
59  void init(const StripAttributeConstWeakPtr& pAttribute,
60  const image::eImageBufferType& bufferType0,
61  const image::eImageBufferType& bufferType1);
62  void init(const StripAttributeConstWeakPtr& pAttribute,
63  const image::eImageBufferType& bufferType0,
64  const image::eImageBufferType& bufferType1,
65  const image::eImageBufferType& bufferType2);
66  void init(const StripAttributeConstWeakPtr& pAttribute,
67  const image::eImageBufferType& bufferType0,
68  const image::eImageBufferType& bufferType1,
69  const image::eImageBufferType& bufferType2,
70  const image::eImageBufferType& bufferType3);
71  void init(const StripAttributeConstWeakPtr& pAttribute,
72  const image::eImageBufferType& bufferType0,
73  const image::eImageBufferType& bufferType1,
74  const image::eImageBufferType& bufferType2,
75  const image::eImageBufferType& bufferType3,
76  const image::eImageBufferType& bufferType4);
77  void init(const StripAttributeConstWeakPtr& pAttribute,
78  const image::eImageBufferType& bufferType0,
79  const image::eImageBufferType& bufferType1,
80  const image::eImageBufferType& bufferType2,
81  const image::eImageBufferType& bufferType3,
82  const image::eImageBufferType& bufferType4,
83  const image::eImageBufferType& bufferType5);
84  void init(const StripAttributeConstWeakPtr& pAttribute,
85  const image::eImageBufferType& bufferType0,
86  const image::eImageBufferType& bufferType1,
87  const image::eImageBufferType& bufferType2,
88  const image::eImageBufferType& bufferType3,
89  const image::eImageBufferType& bufferType4,
90  const image::eImageBufferType& bufferType5,
91  const image::eImageBufferType& bufferType6);
92  void init(const StripAttributeConstWeakPtr& pAttribute,
93  const image::eImageBufferType& bufferType0,
94  const image::eImageBufferType& bufferType1,
95  const image::eImageBufferType& bufferType2,
96  const image::eImageBufferType& bufferType3,
97  const image::eImageBufferType& bufferType4,
98  const image::eImageBufferType& bufferType5,
99  const image::eImageBufferType& bufferType6,
100  const image::eImageBufferType& bufferType7);
101  void init(const StripAttributeConstWeakPtr& pAttribute,
102  const image::eImageBufferType& bufferType0,
103  const image::eImageBufferType& bufferType1,
104  const image::eImageBufferType& bufferType2,
105  const image::eImageBufferType& bufferType3,
106  const image::eImageBufferType& bufferType4,
107  const image::eImageBufferType& bufferType5,
108  const image::eImageBufferType& bufferType6,
109  const image::eImageBufferType& bufferType7,
110  const image::eImageBufferType& bufferType8);
112 
115  const ImageBufferTypeColl& getImageBufferTypeColl() const;
116 
117 protected:
119  bool testRule() const;
120 
122  std::string createRuleFormalString() const;
123 
125  std::string createRuleEvaluatedString(const ipUInt32 increment) const;
126 
127 // attributes
128 protected:
131 };
132 
135 
138 {
140 }
141 
144 
145 } // end of namespace imaproc
146 } // end of namespace ipsdk
147 
148 #pragma warning (pop)
149 
150 #endif // __IPSDKIMAGEPROCESSING_RULEALLOWEDSTRIPBUFFERTYPE_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
eStripPropertyRuleType
enumerate describing image strip property rule operation type
Definition: StripPropertyRuleTypes.h:34
ImageBufferTypeColl _bufferTypeColl
collection of allowed buffer types
Definition: RuleAllowedStripBufferType.h:130
Base class for rules allowing to check property of an image strip attributes.
Definition: BaseStripPropertyRule.h:28
eStripPropertyRuleType getStripPropertyRuleType() const
get image strip property rule type
Definition: RuleAllowedStripBufferType.h:137
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
Rule allowing to check allowed image strip buffer type for an attribute.
Definition: RuleAllowedStripBufferType.h:32
boost::weak_ptr< const BaseStripAttribute > StripAttributeConstWeakPtr
weak pointer to image strip attribute
Definition: StripAttributeTypes.h:80
static const eStripPropertyRuleType::domain g_stripPropertyRuleType
image strip property rule type associated to rule
Definition: RuleAllowedStripBufferType.h:37
std::set< image::eImageBufferType > ImageBufferTypeColl
collection of image buffer types
Definition: ImageBufferTypeAttributeTypes.h:50
check image strip allowed buffer types
Definition: StripPropertyRuleTypes.h:36
eImageBufferType
types associated to image buffers
Definition: ImageTypes.h:78
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53