00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #if !defined(AFX_ConsoleRULEFNIADAPTER_H__A8429FA2_3499_4F4A_95BC_9F94FC58C087__INCLUDED_)
00022 #define AFX_ConsoleRULEFNIADAPTER_H__A8429FA2_3499_4F4A_95BC_9F94FC58C087__INCLUDED_
00023
00024 #include <common/OptionEntry.h>
00025 #include <console/ConsoleRuleFn.h>
00026 #include <string>
00027
00028 class ConsoleRuleFnIBooleanAdapter :
00029 public ConsoleRuleFnI
00030 {
00031 public:
00032 ConsoleRuleFnIBooleanAdapter(const char *name, bool ¶m);
00033 virtual ~ConsoleRuleFnIBooleanAdapter();
00034
00035
00036 virtual bool getBoolParam(const char *name);
00037 virtual void setBoolParam(const char *name, bool value);
00038
00039 protected:
00040 ConsoleRuleFn *readRule_, *writeRule_;
00041 std::string name_;
00042 bool ¶m_;
00043
00044 };
00045
00046 class ConsoleRuleFnINumberAdapter :
00047 public ConsoleRuleFnI
00048 {
00049 public:
00050 ConsoleRuleFnINumberAdapter(const char *name, float ¶m);
00051 virtual ~ConsoleRuleFnINumberAdapter();
00052
00053
00054 virtual float getNumberParam(const char *name);
00055 virtual void setNumberParam(const char *name, float value);
00056
00057 protected:
00058 ConsoleRuleFn *readRule_, *writeRule_;
00059 std::string name_;
00060 float ¶m_;
00061
00062 };
00063
00064 class ConsoleRuleFnIOptionsAdapter :
00065 public ConsoleRuleFnI
00066 {
00067 public:
00068 ConsoleRuleFnIOptionsAdapter(OptionEntry &entry, bool write = false);
00069 virtual ~ConsoleRuleFnIOptionsAdapter();
00070
00071
00072 virtual bool getBoolParam(const char *name);
00073 virtual void setBoolParam(const char *name, bool value);
00074 virtual float getNumberParam(const char *name);
00075 virtual void setNumberParam(const char *name, float value);
00076 virtual const char *getStringParam(const char *name);
00077 virtual void setStringParam(const char *name, const char *value);
00078
00079 protected:
00080 OptionEntry &entry_;
00081 ConsoleRuleFn *readRule_, *writeRule_;
00082 };
00083
00084 #endif // !defined(AFX_ConsoleRULEFNIADAPTER_H__A8429FA2_3499_4F4A_95BC_9F94FC58C087__INCLUDED_)