IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
RuleShapeMeasureInfoSetVolumePolicy.h
1 // RuleShapeMeasureInfoSetVolumePolicy.h:
3 // --------------------------------------
4 //
15 
16 #ifndef __IPSDKIMAGEPROCESSING_RULESHAPEMEASUREINFOSETVOLUMEPOLICY_H__
17 #define __IPSDKIMAGEPROCESSING_RULESHAPEMEASUREINFOSETVOLUMEPOLICY_H__
18 
19 // suppression warnings
20 // warning C4251: 'ipsdk::imaproc::RuleShapeMeasureInfoSetVolumePolicy::_msrVolumePolicy' : class 'ipsdk::shape::analysis::eMsrVolumePolicy' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::RuleShapeMeasureInfoSetVolumePolicy'
21 #pragma warning (push)
22 #pragma warning (disable : 4251)
23 
24 #include <IPSDKImageProcessing/Rule/ShapeMeasureInfoSet/BaseShapeMeasureInfoSetRule.h>
25 
26 namespace ipsdk {
27 namespace imaproc {
28 
31 
33 {
34 public:
40 
41 // methods
42 public:
44  eSMISRuleType getSMISRuleType() const;
45 
49  void init(const ShapeMeasureInfoSetAttributeConstWeakPtr& pAttribute,
50  const shape::analysis::eMsrVolumePolicy& msrVolumePolicy);
51 
55  const shape::analysis::eMsrVolumePolicy& getMsrVolumePolicy() const;
56 
57 protected:
59  bool testRule() const;
60 
62  std::string createRuleFormalString() const;
63 
65  std::string createRuleEvaluatedString(const ipUInt32 increment) const;
66 
67 // attributes
68 protected:
71 };
72 
75 
76 inline eSMISRuleType
78 {
80 }
81 
84 
85 } // end of namespace imaproc
86 } // end of namespace ipsdk
87 
88 #pragma warning (pop)
89 
90 #endif // __IPSDKIMAGEPROCESSING_RULESHAPEMEASUREINFOSETVOLUMEPOLICY_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
check measure information set volume policy
Definition: ShapeMeasureInfoSetRuleTypes.h:35
eMsrVolumePolicy
Enumerate describing measure volume policy.
Definition: MeasureInfoTypes.h:60
eSMISRuleType
enumerate describing shape measure information set rule operation type
Definition: ShapeMeasureInfoSetRuleTypes.h:33
Base class for rules allowing to check shape measure information set properties.
Definition: BaseShapeMeasureInfoSetRule.h:29
eSMISRuleType getSMISRuleType() const
get shape measure set rule type
Definition: RuleShapeMeasureInfoSetVolumePolicy.h:77
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
shape::analysis::eMsrVolumePolicy _msrVolumePolicy
expected shape measure volume policy for attribute
Definition: RuleShapeMeasureInfoSetVolumePolicy.h:70
Rule allowing to check shape measure information set volume policy property.
Definition: RuleShapeMeasureInfoSetVolumePolicy.h:32
boost::weak_ptr< const BaseShapeMeasureInfoSetAttribute > ShapeMeasureInfoSetAttributeConstWeakPtr
Definition: ShapeMeasureInfoSetAttributeTypes.h:40
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53