IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
RuleIf.h
1 // RuleIf.h:
3 // ---------
4 //
19 
20 #ifndef __IPSDKBASEPROCESSING_RULEIF_H__
21 #define __IPSDKBASEPROCESSING_RULEIF_H__
22 
23 #include <IPSDKBaseProcessing/Rule/Combination/BaseTernaryCombinationRule.h>
24 
25 namespace ipsdk {
26 namespace processor {
27 
30 
32 {
33 // predefined public type
34 public:
36  static const eCombinationRuleType::domain g_combinationRuleType = eCombinationRuleType::eCRT_If;
37 
38 public:
41  RuleIf();
42  ~RuleIf();
44 
45 // methods
46 public:
48  eCombinationRuleType getCombinationRuleType() const;
49 
50 protected:
52  bool testRule(const BaseRule& rule1,
53  const BaseRule& rule2,
54  const BaseRule& rule3) const;
55 
57  std::string createRuleFormalString() const;
58 
60  std::string createRuleEvaluatedString(const ipUInt32 increment) const;
61 
62 // attributes
63 protected:
64 
65 };
66 
69 
72 {
73  return g_combinationRuleType;
74 }
75 
78 
79 } // end of namespace processor
80 } // end of namespace ipsdk
81 
82 #endif // __IPSDKBASEPROCESSING_RULEIF_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
#define IPSDKBASEPROCESSING_API
Import/Export macro for library IPSDKBaseProcessing.
Definition: IPSDKBaseProcessingExports.h:27
Base class for rules composed of an operation on three other rules.
Definition: BaseTernaryCombinationRule.h:31
static const eCombinationRuleType::domain g_combinationRuleType
rule type associated to rule
Definition: RuleIf.h:36
Rule allowing to check a conditional condition.
Definition: RuleIf.h:31
eCombinationRuleType
enumerate describing combination rule operation type
Definition: CombinationRuleTypes.h:32
Base class for processing attributes rules.
Definition: BaseRule.h:41
Predicate base rule operation of type if(predicate, ruleTrue, ruleFalse)
Definition: CombinationRuleTypes.h:40
eCombinationRuleType getCombinationRuleType() const
retrieve combination rule operation type
Definition: RuleIf.h:71
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53