EvolvingObjects
valueParam.h
00001 #ifndef VALUEPARAM_H
00002 #define VALUEPARAM_H
00003 
00004 #include <string>
00005 #include <boost/python.hpp>
00006 
00007 class ValueParam : public eoParam // ValueParam containing python object
00008 {
00009     boost::python::object obj;
00010 
00011 public:
00012 
00013     ValueParam() : eoParam(), obj() {}
00014 
00015     ValueParam(boost::python::object o,
00016                std::string longName,
00017                std::string d = "No Description",
00018                char s = 0,
00019                bool r = false) : eoParam(longName, "", d, s, r)
00020     {
00021         std::cerr << "HI" << std::endl;
00022         obj = o;
00023         eoParam::defValue(getValue());
00024     }
00025 
00026     std::string getValue() const
00027     {
00028         boost::python::str s = boost::python::str(obj);
00029         return std::string(boost::python::extract<const char*>(s));
00030     }
00031 
00032     void setValue(const std::string& v)
00033     {
00034         std::cerr << "not implemented yet" << std::endl;
00035     }
00036 
00037     boost::python::object getObj() const { return obj;}
00038     void setObj(boost::python::object o) { obj = o; }
00039 };
00040 
00041 #endif
 All Classes Namespaces Files Functions Variables Typedefs Friends