IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
RulePlanIndexedProperty.h
1 // RulePlanIndexedProperty.h:
3 // --------------------------
4 //
14 
15 #ifndef __IPSDKIMAGEPROCESSING_RULEPLANINDEXEDPROPERTY_H__
16 #define __IPSDKIMAGEPROCESSING_RULEPLANINDEXEDPROPERTY_H__
17 
18 // suppression warnings
19 // warning C4251: 'ipsdk::imaproc::RulePlanIndexedProperty::_planIndexedProperty': class 'ipsdk::imaproc::ePlanIndexedProperty' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::RulePlanIndexedProperty'
20 #pragma warning (push)
21 #pragma warning (disable : 4251)
22 
23 #include <IPSDKImageProcessing/Rule/PlanIndexed/BasePlanIndexedRule.h>
24 
25 namespace ipsdk {
26 namespace imaproc {
27 
30 
32 {
33 // predefined public types
34 public:
35  // plan indexed rule type
36  static const ePlanIndexedRuleType::domain g_planIndexedRuleType = ePlanIndexedRuleType::ePIRT_Property;
37 
38 public:
44 
45 // methods
46 public:
48  ePlanIndexedRuleType getPlanIndexedRuleType() const;
49 
53  void init(const PlanIndexedAttributeConstWeakPtr& pPlanIndexedAttribute,
54  const ePlanIndexedProperty& planIndexedProperty);
55 
58  const ePlanIndexedProperty& getPlanIndexedProperty() const;
59 
60 protected:
62  bool testRule() const;
63 
65  std::string createRuleFormalString() const;
66 
68  std::string createRuleEvaluatedString(const ipUInt32 increment) const;
69 
70 // attributes
71 protected:
74 };
75 
78 
81 {
82  return g_planIndexedRuleType;
83 }
84 
87 
88 } // end of namespace imaproc
89 } // end of namespace ipsdk
90 
91 #pragma warning (pop)
92 
93 #endif // __IPSDKIMAGEPROCESSING_RULEPLANINDEXEDPROPERTY_H__
boost::weak_ptr< const BasePlanIndexedAttribute > PlanIndexedAttributeConstWeakPtr
weak pointer to const plan indexed attribute
Definition: PlanIndexedAttributeTypes.h:39
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
ePlanIndexedRuleType
enumerate describing plan indexed attribute rule operation type
Definition: PlanIndexedRuleTypes.h:33
check a given property of a plan indexed attribute
Definition: PlanIndexedRuleTypes.h:39
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
ePlanIndexedProperty
Definition: PlanIndexedRuleTypes.h:73
Rule allowing to check a given property of a plan indexed attribute.
Definition: RulePlanIndexedProperty.h:31
Base class for rules allowing to check plan indexed attribute properties.
Definition: BasePlanIndexedRule.h:29
ePlanIndexedProperty _planIndexedProperty
plan indexed checked property
Definition: RulePlanIndexedProperty.h:73
ePlanIndexedRuleType getPlanIndexedRuleType() const
get plan indexed attribute rule type
Definition: RulePlanIndexedProperty.h:80
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53