dynrules
 All Classes Functions Variables
Rule.h
1 /*
2  * dynrules - Python dynamic rules engine
3  *
4  * Authors: Marcus von Appen
5  *
6  * This file is distributed under the Public Domain.
7  */
8 
9 #ifndef _RULE_H_
10 #define _RULE_H_
11 
12 #include <string>
13 
14 namespace dynrules
15 {
23  class Rule
24  {
25  public:
29  Rule ();
30 
36  Rule (int id);
37 
44  Rule (int id, std::string code);
45 
52  Rule (int id, double weight);
53 
61  Rule (int id, std::string code, double weight);
62 
66  virtual ~Rule ();
67 
73  double getWeight () const;
74 
80  void setWeight (double weight);
81 
87  bool getUsed () const;
88 
94  void setUsed (bool used);
95 
101  int getId () const;
102 
108  void setId (int id);
109 
115  std::string getCode () const;
116 
122  void setCode (const std::string& code);
123 
134  bool operator ==(const Rule& rule);
135 
136  protected:
137 
141  int _id;
142 
146  double _weight;
147 
151  bool _used;
152 
156  std::string _code;
157  };
158 
167  bool operator ==(const Rule& a, const Rule& b);
168 
169 } //namespace
170 
171 #endif /* _RULE_H_ */