IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
RuleAnd.h
1 // RuleAnd.h:
3 // ----------
4 //
14 
15 #ifndef __IPSDKBASEPROCESSING_RULEAND_H__
16 #define __IPSDKBASEPROCESSING_RULEAND_H__
17 
18 #include <IPSDKBaseProcessing/Rule/Combination/BaseBinaryCombinationRule.h>
19 
20 namespace ipsdk {
21 namespace processor {
22 
25 
27 {
28 // predefined public type
29 public:
31  static const eCombinationRuleType::domain g_combinationRuleType = eCombinationRuleType::eCRT_And;
32 
33 public:
36  RuleAnd();
37  ~RuleAnd();
39 
40 // methods
41 public:
43  eCombinationRuleType getCombinationRuleType() const;
44 
45 protected:
47  bool testRule(const BaseRule& rule1,
48  const BaseRule& rule2) const;
49 
51  std::string createRuleFormalString() const;
52 
54  std::string createRuleEvaluatedString(const ipUInt32 increment) const;
55 
56 // attributes
57 protected:
58 
59 };
60 
63 
66 {
67  return g_combinationRuleType;
68 }
69 
72 
73 } // end of namespace processor
74 } // end of namespace ipsdk
75 
76 #endif // __IPSDKBASEPROCESSING_RULEAND_H__
Base class for rules composed of an operation on two other rules.
Definition: BaseBinaryCombinationRule.h:31
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
#define IPSDKBASEPROCESSING_API
Import/Export macro for library IPSDKBaseProcessing.
Definition: IPSDKBaseProcessingExports.h:27
Class for logical and operations on rules.
Definition: RuleAnd.h:26
eCombinationRuleType getCombinationRuleType() const
retrieve combination rule operation type
Definition: RuleAnd.h:65
static const eCombinationRuleType::domain g_combinationRuleType
rule type associated to rule
Definition: RuleAnd.h:31
eCombinationRuleType
enumerate describing combination rule operation type
Definition: CombinationRuleTypes.h:32
Base class for processing attributes rules.
Definition: BaseRule.h:41
Logical and rule operation.
Definition: CombinationRuleTypes.h:36
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53