dynrules

RuleManagement.h

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_ */
 All Classes Functions Variables