Go to the documentation of this file.00001
00002
00003
00004
00005 #ifndef DDYNAMIC_RECONFIGURE_DD_PARAM_H
00006 #define DDYNAMIC_RECONFIGURE_DD_PARAM_H
00007
00008 #include <string>
00009 #include <dynamic_reconfigure/Group.h>
00010 #include <dynamic_reconfigure/Config.h>
00011 #include <dynamic_reconfigure/ConfigDescription.h>
00012 #include "dd_value.h"
00013
00014 using namespace dynamic_reconfigure;
00015 using namespace std;
00016 namespace ddynamic_reconfigure {
00017 class DDParam;
00018
00019 typedef boost::shared_ptr<DDParam> DDPtr;
00048 class DDParam {
00049 public:
00050
00055 virtual string getName() const = 0;
00056
00061 virtual int getLevel() const = 0;
00062
00067 virtual Value getValue() const = 0;
00068
00076 virtual bool sameType(Value val) = 0;
00077
00084 virtual bool sameValue(Value val) = 0;
00085
00090 virtual void setValue(Value val) = 0;
00091
00097 virtual void prepGroup(Group &group) = 0;
00098
00104 virtual void prepConfig(Config &conf) = 0;
00105
00111 virtual void prepConfigDescription(ConfigDescription &conf_desc) = 0;
00112
00119 friend ostream& operator<<(ostream& os, const DDParam ¶m);
00120 };
00121 }
00122 #endif //DDYNAMIC_RECONFIGURE_DD_PARAM_H