YarpBottleGenerator
 All Classes Files Functions Variables Pages
bottlecreatorgenerator.hpp
1 #ifndef BOTTLECREATOR_GENERATOR_HPP
2 #define BOTTLECREATOR_GENERATOR_HPP
3 #include <vector>
4 #include "yarpcodegenerator.hpp"
5 #include "childgenerator.hpp"
11  public:
18  BottleCreatorGenerator(int numFields, const double & rate_, bool toRos);
23 
24  int getNumFields();
25 
26  std::vector<ChildGenerator> getChildren();
27 
28  std::vector<std::string> getFieldsType();
29 
30  std::vector<std::string> getFieldsMsg();
31 
32  std::vector<std::string> getFieldsMux();
33 
34  void addChild(ChildGenerator& child);
35 
36  void addFieldType(std::string type);
37 
38  void addFieldMsg(std::string msg);
39 
40  void addFieldMux(std::string mux);
41 
42  void removeFirstChild();
43 
44  ChildGenerator& getFirstChild();
45 
46  std::string getFieldType(int fieldIndex);
47 
48  std::string getFieldMsg(int fieldIndex);
49 
50  std::string getFieldMux(int fieldIndex);
51 
56  std::string generateCode();
57 
58  private:
60  int listIndex_;
61  bool toRos_;
62  std::vector<ChildGenerator> children_;
63  std::vector<std::string> fieldsType_;
64  std::vector<std::string> fieldsMsg_;
65  std::vector<std::string> fieldsMux_;
66  double rate;
67  double period;
73  std::string handleFieldGeneration(int fieldIndex);
74 };
75 
76 #endif //BOTTLECREATOR_GENERATOR_HPP
std::vector< ChildGenerator > children_
std::vector< std::string > fieldsMsg_
BottleCreatorGenerator(int numFields, const double &rate_, bool toRos)
std::string handleFieldGeneration(int fieldIndex)
std::vector< std::string > fieldsMux_
std::vector< std::string > fieldsType_