dynrules
|
00001 /* 00002 * dynrules - Python dynamic rules engine 00003 * 00004 * Authors: Marcus von Appen 00005 * 00006 * This file is distributed under the Public Domain. 00007 */ 00008 00009 #ifndef _RULEMANAGEMENT_H_ 00010 #define _RULEMANAGEMENT_H_ 00011 00012 #include <vector> 00013 #include <sstream> 00014 #include <fstream> 00015 00016 #include "Rule.h" 00017 #include "LearnSystem.h" 00018 00019 namespace dynrules 00020 { 00029 class RuleManagement 00030 { 00031 public: 00032 00038 RuleManagement (unsigned int maxrules); 00039 00045 virtual ~RuleManagement (); 00046 00052 virtual std::vector<Rule*> loadRules () = 0; 00053 00060 virtual std::vector<Rule*> loadRules (unsigned int maxrules) = 0; 00061 00068 virtual bool saveRules (std::vector<Rule*> rules) = 0; 00069 00078 bool saveRulesHintFile (std::string filename, LearnSystem& lsystem) const; 00079 00085 unsigned int getMaxRules () const; 00086 00087 protected: 00088 00093 unsigned int _maxrules; 00094 00095 }; 00096 00097 } // namespace 00098 00099 #endif /* _RULEMANAGEMENT_H_ */