IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
RuleAllowedTileCollBufferType.h
1 // RuleAllowedTileCollBufferType.h:
3 // --------------------------------
4 //
15 
16 #ifndef __IPSDKIMAGEPROCESSING_RULEALLOWEDTILECOLLBUFFERTYPE_H__
17 #define __IPSDKIMAGEPROCESSING_RULEALLOWEDTILECOLLBUFFERTYPE_H__
18 
19 // suppression warnings
20 // warning C4251: 'ipsdk::imaproc::RuleAllowedTileCollBufferType::_bufferTypeColl' : class 'std::set<ipsdk::image::eImageBufferType,std::less<_Kty>,std::allocator<_Kty>>' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::RuleAllowedTileCollBufferType'
21 #pragma warning (push)
22 #pragma warning (disable : 4251)
23 
24 #include <IPSDKImageProcessing/Rule/TileColl/TileCollProperty/BaseTileCollPropertyRule.h>
25 #include <IPSDKImageProcessing/Attribute/IPEnum/ImageBufferTypeAttributeTypes.h>
26 
27 namespace ipsdk {
28 namespace imaproc {
29 
32 
34 {
35 // predefined public type
36 public:
38  static const eTileCollPropertyRuleType::domain g_tileCollPropertyRuleType = eTileCollPropertyRuleType::eTCPRT_AllowedBufferType;
39 
40 public:
46 
47 // methods
48 public:
50  eTileCollPropertyRuleType getTileCollPropertyRuleType() const;
51 
56  void init(const TileCollAttributeConstWeakPtr& pAttribute,
57  const image::eImageBufferType& imageBufferType0);
58  void init(const TileCollAttributeConstWeakPtr& pAttribute,
59  const image::eImageBufferType& imageBufferType0,
60  const image::eImageBufferType& imageBufferType1);
62 
65  const ImageBufferTypeColl& getImageBufferTypeColl() const;
66 
67 protected:
69  bool testRule() const;
70 
72  std::string createRuleFormalString() const;
73 
75  std::string createRuleEvaluatedString(const ipUInt32 increment) const;
76 
77 // attributes
78 protected:
81 };
82 
85 
88 {
90 }
91 
94 
95 } // end of namespace imaproc
96 } // end of namespace ipsdk
97 
98 #pragma warning (pop)
99 
100 #endif // __IPSDKIMAGEPROCESSING_RULEALLOWEDTILECOLLBUFFERTYPE_H__
boost::weak_ptr< const BaseTileCollAttribute > TileCollAttributeConstWeakPtr
weak pointer to attribute associated to a collection of image tiles
Definition: TileCollAttributeTypes.h:58
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Rule allowing to check that a collection of tile share a same given buffer type.
Definition: RuleAllowedTileCollBufferType.h:33
ImageBufferTypeColl _bufferTypeColl
collection of allowed buffer types
Definition: RuleAllowedTileCollBufferType.h:80
check that all tiles are associated to a given buffer type
Definition: TileCollPropertyRuleTypes.h:33
eTileCollPropertyRuleType
enumerate describing rule operation type applied on property of attributes associated to collection o...
Definition: TileCollPropertyRuleTypes.h:31
eTileCollPropertyRuleType getTileCollPropertyRuleType() const
get tile collection property rule type
Definition: RuleAllowedTileCollBufferType.h:87
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
Base class for rule checking properties of tile collections.
Definition: BaseTileCollPropertyRule.h:27
static const eTileCollPropertyRuleType::domain g_tileCollPropertyRuleType
image tile collection property rule type associated to rule
Definition: RuleAllowedTileCollBufferType.h:38
std::set< image::eImageBufferType > ImageBufferTypeColl
collection of image buffer types
Definition: ImageBufferTypeAttributeTypes.h:50
eImageBufferType
types associated to image buffers
Definition: ImageTypes.h:78
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53