Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef ROSCPP_PARAM_H
00029 #define ROSCPP_PARAM_H
00030
00031 #include "forwards.h"
00032 #include "common.h"
00033 #include "XmlRpcValue.h"
00034
00035 namespace ros
00036 {
00037
00041 namespace param
00042 {
00043
00050 ROSCPP_DECL void set(const std::string& key, const XmlRpc::XmlRpcValue& v);
00057 ROSCPP_DECL void set(const std::string& key, const std::string& s);
00064 ROSCPP_DECL void set(const std::string& key, const char* s);
00071 ROSCPP_DECL void set(const std::string& key, double d);
00078 ROSCPP_DECL void set(const std::string& key, int i);
00085 ROSCPP_DECL void set(const std::string& key, bool b);
00086
00095 ROSCPP_DECL bool get(const std::string& key, std::string& s);
00104 ROSCPP_DECL bool get(const std::string& key, double& d);
00113 ROSCPP_DECL bool get(const std::string& key, int& i);
00122 ROSCPP_DECL bool get(const std::string& key, bool& b);
00131 ROSCPP_DECL bool get(const std::string& key, XmlRpc::XmlRpcValue& v);
00132
00146 ROSCPP_DECL bool getCached(const std::string& key, std::string& s);
00160 ROSCPP_DECL bool getCached(const std::string& key, double& d);
00174 ROSCPP_DECL bool getCached(const std::string& key, int& i);
00188 ROSCPP_DECL bool getCached(const std::string& key, bool& b);
00202 ROSCPP_DECL bool getCached(const std::string& key, XmlRpc::XmlRpcValue& v);
00203
00211 ROSCPP_DECL bool has(const std::string& key);
00219 ROSCPP_DECL bool del(const std::string& key);
00220
00235 ROSCPP_DECL bool search(const std::string& ns, const std::string& key, std::string& result);
00236
00251 ROSCPP_DECL bool search(const std::string& key, std::string& result);
00252
00265 template<typename T>
00266 void param(const std::string& param_name, T& param_val, const T& default_val)
00267 {
00268 if (has(param_name))
00269 {
00270 if (get(param_name, param_val))
00271 {
00272 return;
00273 }
00274 }
00275
00276 param_val = default_val;
00277 }
00278
00279 }
00280
00281 }
00282
00283 #endif // ROSCPP_PARAM_H
roscpp
Author(s): Morgan Quigley mquigley@cs.stanford.edu, Josh Faust jfaust@willowgarage.com, Brian Gerkey gerkey@willowgarage.com, Troy Straszheim straszheim@willowgarage.com
autogenerated on Sat Dec 28 2013 17:35:52