config_tools.h
Go to the documentation of this file.
1 #include "sick_scan/sick_scan_base.h" /* Base definitions included in all header files, added by add_sick_scan_base_header.py. Do not edit this line. */
2 #ifndef __DYNAMIC_RECONFIGURE__CONFIG_TOOLS__
3 #define __DYNAMIC_RECONFIGURE__CONFIG_TOOLS__
4 
5 #include <string>
6 #include <vector>
9 
10 namespace dynamic_reconfigure
11 {
12 
14 {
15 public:
16  static std::vector<dynamic_reconfigure::BoolParameter> &getVectorForType(dynamic_reconfigure::Config &set, const bool /*val*/)
17  {
18  return set.bools;
19  }
20 
21  static std::vector<dynamic_reconfigure::IntParameter> &getVectorForType(dynamic_reconfigure::Config &set, const int /*val*/)
22  {
23  return set.ints;
24  }
25 
26  static std::vector<dynamic_reconfigure::StrParameter> &getVectorForType(dynamic_reconfigure::Config &set, const std::string& /*val*/)
27  {
28  return set.strs;
29  }
30 
31  static std::vector<dynamic_reconfigure::DoubleParameter> &getVectorForType(dynamic_reconfigure::Config &set, const double /*val*/)
32  {
33  return set.doubles;
34  }
35 
36  static const std::vector<dynamic_reconfigure::BoolParameter> &getVectorForType(const dynamic_reconfigure::Config &set, const bool /*val*/)
37  {
38  return set.bools;
39  }
40 
41  static const std::vector<dynamic_reconfigure::IntParameter> &getVectorForType(const dynamic_reconfigure::Config &set, const int /*val*/)
42  {
43  return set.ints;
44  }
45 
46  static const std::vector<dynamic_reconfigure::StrParameter> &getVectorForType(const dynamic_reconfigure::Config &set, const std::string& /*val*/)
47  {
48  return set.strs;
49  }
50 
51  static const std::vector<dynamic_reconfigure::DoubleParameter> &getVectorForType(const dynamic_reconfigure::Config &set, const double /*val*/)
52  {
53  return set.doubles;
54  }
55 
56  static dynamic_reconfigure::BoolParameter makeKeyValuePair(const std::string &name, const bool val)
57  {
59  param.name = name;
60  param.value = val ;
61  return param;
62  }
63 
64  static dynamic_reconfigure::IntParameter makeKeyValuePair(const std::string &name, const int val)
65  {
67  param.name = name;
68  param.value = val ;
69  return param;
70  }
71 
72  static dynamic_reconfigure::StrParameter makeKeyValuePair(const std::string &name, const std::string &val)
73  {
75  param.name = name;
76  param.value = val ;
77  return param;
78  }
79 
80  static dynamic_reconfigure::DoubleParameter makeKeyValuePair(const std::string &name, const double val)
81  {
83  param.name = name;
84  param.value = val ;
85  return param;
86  }
87 
88  template <class T>
89  static void appendParameter(dynamic_reconfigure::Config &set, const std::string &name, const T &val)
90  {
91  getVectorForType(set, val).push_back(makeKeyValuePair(name, val));
92  }
93 
94  template <class VT, class T>
95  static bool getParameter(const std::vector<VT> &vec, const std::string &name, T &val)
96  {
97  for (typename std::vector<VT>::const_iterator i = vec.begin(); i != vec.end(); ++i)
98  if (i->name == name)
99  {
100  val = i->value;
101  return true;
102  }
103  return false;
104  }
105 
106  template <class T>
107  static bool getParameter(const dynamic_reconfigure::Config &set, const std::string &name, T &val)
108  {
109  return getParameter(getVectorForType(set, val), name, val);
110  }
111 
112  template<class T>
113  static void appendGroup(dynamic_reconfigure::Config &set, const std::string &name, int id, int parent, const T &val)
114  {
116  msg.name = name;
117  msg.id= id;
118  msg.parent = parent;
119  msg.state = val.state;
120  set.groups.push_back(msg);
121  }
122 
123  template<class T>
124  static bool getGroupState(const dynamic_reconfigure::Config &msg, const std::string &name, T &val)
125  {
126  for(std::vector<dynamic_reconfigure::GroupState>::const_iterator i = msg.groups.begin(); i != msg.groups.end(); ++i)
127  if(i->name == name)
128  {
129  val.state = i->state;
130  return true;
131  }
132  return false;
133  }
134 
136  {
137  size_t curSize = msg.bools.size() + msg.doubles.size() + msg.ints.size() + msg.strs.size();
138  return (int)curSize;
139  }
140 
142  {
143  msg.bools.clear();
144  msg.ints.clear();
145  msg.strs.clear();
146  msg.doubles.clear();
147  msg.groups.clear();
148  }
149 };
150 
151 }
152 
153 #endif
dynamic_reconfigure::ConfigTools::getGroupState
static bool getGroupState(const dynamic_reconfigure::Config &msg, const std::string &name, T &val)
Definition: config_tools.h:124
msg
msg
dynamic_reconfigure::ConfigTools::getVectorForType
static std::vector< dynamic_reconfigure::IntParameter > & getVectorForType(dynamic_reconfigure::Config &set, const int)
Definition: config_tools.h:21
dynamic_reconfigure::Config_< std::allocator< void > >
dynamic_reconfigure::ConfigTools::getParameter
static bool getParameter(const std::vector< VT > &vec, const std::string &name, T &val)
Definition: config_tools.h:95
dynamic_reconfigure::StrParameter_
Definition: StrParameter.h:23
Group.h
sick_ldmrs_driver::param
bool param(rosNodePtr node, const std::string &param_name, T &value, const T &default_value)
Definition: sick_ldmrs_config.hpp:71
dynamic_reconfigure::ConfigTools::getVectorForType
static const std::vector< dynamic_reconfigure::DoubleParameter > & getVectorForType(const dynamic_reconfigure::Config &set, const double)
Definition: config_tools.h:51
dynamic_reconfigure::ConfigTools::getVectorForType
static std::vector< dynamic_reconfigure::BoolParameter > & getVectorForType(dynamic_reconfigure::Config &set, const bool)
Definition: config_tools.h:16
dynamic_reconfigure::ConfigTools::makeKeyValuePair
static dynamic_reconfigure::IntParameter makeKeyValuePair(const std::string &name, const int val)
Definition: config_tools.h:64
roswrap::param::set
void set(const std::string &key, const XmlRpc::XmlRpcValue &v)
Set an arbitrary XML/RPC value on the parameter server.
Definition: param_modi.cpp:66
dynamic_reconfigure::ConfigTools::getVectorForType
static std::vector< dynamic_reconfigure::DoubleParameter > & getVectorForType(dynamic_reconfigure::Config &set, const double)
Definition: config_tools.h:31
dynamic_reconfigure::ConfigTools::getVectorForType
static const std::vector< dynamic_reconfigure::IntParameter > & getVectorForType(const dynamic_reconfigure::Config &set, const int)
Definition: config_tools.h:41
dynamic_reconfigure::BoolParameter_
Definition: BoolParameter.h:23
api.setup.name
name
Definition: python/api/setup.py:12
dynamic_reconfigure::ConfigTools::makeKeyValuePair
static dynamic_reconfigure::BoolParameter makeKeyValuePair(const std::string &name, const bool val)
Definition: config_tools.h:56
dynamic_reconfigure::GroupState_
Definition: GroupState.h:23
dynamic_reconfigure::DoubleParameter_
Definition: DoubleParameter.h:23
dynamic_reconfigure::ConfigTools::makeKeyValuePair
static dynamic_reconfigure::StrParameter makeKeyValuePair(const std::string &name, const std::string &val)
Definition: config_tools.h:72
dynamic_reconfigure::ConfigTools::appendParameter
static void appendParameter(dynamic_reconfigure::Config &set, const std::string &name, const T &val)
Definition: config_tools.h:89
dynamic_reconfigure
Definition: BoolParameter.h:20
Config.h
dynamic_reconfigure::ConfigTools::getVectorForType
static std::vector< dynamic_reconfigure::StrParameter > & getVectorForType(dynamic_reconfigure::Config &set, const std::string &)
Definition: config_tools.h:26
dynamic_reconfigure::ConfigTools::makeKeyValuePair
static dynamic_reconfigure::DoubleParameter makeKeyValuePair(const std::string &name, const double val)
Definition: config_tools.h:80
dynamic_reconfigure::ConfigTools
Definition: config_tools.h:13
dynamic_reconfigure::ConfigTools::size
static int size(dynamic_reconfigure::Config &msg)
Definition: config_tools.h:135
dynamic_reconfigure::ConfigTools::clear
static void clear(dynamic_reconfigure::Config &msg)
Definition: config_tools.h:141
dynamic_reconfigure::ConfigTools::appendGroup
static void appendGroup(dynamic_reconfigure::Config &set, const std::string &name, int id, int parent, const T &val)
Definition: config_tools.h:113
sick_scan_base.h
dynamic_reconfigure::ConfigTools::getVectorForType
static const std::vector< dynamic_reconfigure::BoolParameter > & getVectorForType(const dynamic_reconfigure::Config &set, const bool)
Definition: config_tools.h:36
dynamic_reconfigure::ConfigTools::getParameter
static bool getParameter(const dynamic_reconfigure::Config &set, const std::string &name, T &val)
Definition: config_tools.h:107
dynamic_reconfigure::ConfigTools::getVectorForType
static const std::vector< dynamic_reconfigure::StrParameter > & getVectorForType(const dynamic_reconfigure::Config &set, const std::string &)
Definition: config_tools.h:46
dynamic_reconfigure::IntParameter_
Definition: IntParameter.h:23


sick_scan_xd
Author(s): Michael Lehning , Jochen Sprickerhof , Martin Günther
autogenerated on Fri Oct 25 2024 02:47:08