IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
RulePlanIndexedMatchImagePlans.h
1 // RulePlanIndexedMatchImagePlans.h:
3 // ---------------------------------
4 //
15 
16 #ifndef __IPSDKIMAGEPROCESSING_RULEPLANINDEXEDMATCHIMAGEPLANS_H__
17 #define __IPSDKIMAGEPROCESSING_RULEPLANINDEXEDMATCHIMAGEPLANS_H__
18 
19 // suppression warnings
20 // warning C4251: 'ipsdk::imaproc::RulePlanIndexedMatchImagePlans::_imagePlansMatchPolicy' : class 'ipsdk::imaproc::eImagePlansMatchPolicy' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::RulePlanIndexedMatchImagePlans'
21 #pragma warning (push)
22 #pragma warning (disable : 4251)
23 
24 #include <IPSDKImageProcessing/Rule/PlanIndexed/BasePlanIndexedRule.h>
26 
27 namespace ipsdk {
28 namespace imaproc {
29 
32 
34 {
35 // predefined public types
36 public:
37  // plan indexed rule type
38  static const ePlanIndexedRuleType::domain g_planIndexedRuleType = ePlanIndexedRuleType::ePIRT_MatchImagePlans;
39 
40 public:
46 
47 // methods
48 public:
50  ePlanIndexedRuleType getPlanIndexedRuleType() const;
51 
55  void init(const PlanIndexedAttributeConstWeakPtr& pPlanIndexedAttribute,
56  const ImageAttributeConstWeakPtr& pImageAttribute,
57  const eImagePlansMatchPolicy& imagePlansMatchPolicy);
58 
61  const eImagePlansMatchPolicy& getImagePlansMatchPolicy() const;
62 
63 protected:
65  bool testRule() const;
66 
68  std::string createRuleFormalString() const;
69 
71  std::string createRuleEvaluatedString(const ipUInt32 increment) const;
72 
73 // attributes
74 protected:
77 };
78 
81 
84 {
85  return g_planIndexedRuleType;
86 }
87 
90 
91 } // end of namespace imaproc
92 } // end of namespace ipsdk
93 
94 #pragma warning (pop)
95 
96 #endif // __IPSDKIMAGEPROCESSING_RULEPLANINDEXEDMATCHIMAGEPLANS_H__
eImagePlansMatchPolicy
enumerate describing rule behavior for image plans matching
Definition: PlanIndexedRuleTypes.h:49
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
boost::weak_ptr< const BaseImageAttribute > ImageAttributeConstWeakPtr
Definition: ImageAttributeTypes.h:38
ePlanIndexedRuleType getPlanIndexedRuleType() const
get plan indexed attribute rule type
Definition: RulePlanIndexedMatchImagePlans.h:83
check that a plan indexed attribute match an image plans geometry
Definition: PlanIndexedRuleTypes.h:35
Rule allowing to check that components of a plan indexed attribute match plan size of a given image...
Definition: RulePlanIndexedMatchImagePlans.h:33
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
Predefined types for image attributes management.
Base class for rules allowing to check plan indexed attribute properties.
Definition: BasePlanIndexedRule.h:29
eImagePlansMatchPolicy _imagePlansMatchPolicy
rule behavior for image plans matching
Definition: RulePlanIndexedMatchImagePlans.h:76
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53