joint_dispatcher
Output.hpp
Go to the documentation of this file.
1 #ifndef JOINT_DISPATCHER_OUTPUT_HPP
2 #define JOINT_DISPATCHER_OUTPUT_HPP
3 
4 #include <vector>
5 #include <string>
6 #include <base/Time.hpp>
7 #include <base/samples/Joints.hpp>
8 
9 namespace joint_dispatcher
10 {
13  class Output
14  {
17  std::string mName;
18 
19  base::samples::Joints mState;
20 
24  bool mIsNew;
28  bool mFullyInitialized;
32  size_t mFullUpdateCounter;
36  std::vector<bool> mUpdatedJoints;
39  std::vector<base::Time> mUpdateTime;
40 
41  public:
42  Output(std::string const& name = "");
43 
44  std::string getName() const;
45 
47  void updateJoint(size_t jointIdx, base::Time const& time, base::JointState const& sample);
48 
50  base::samples::Joints read();
51 
53  std::vector<std::string> getJointNames() const;
54 
59  std::vector<size_t> mapJointNamesToIndex(std::vector<std::string> const& names) const;
60 
62  size_t size() const;
63 
65  void resize(std::vector<std::string> const& jointNames);
66 
68  void resize(size_t size);
69 
73  void reset();
74 
78  bool isNew() const;
79 
83  bool isFullyUpdated() const;
84  };
85 }
86 
87 #endif
88 
void resize(std::vector< std::string > const &jointNames)
std::vector< size_t > mapJointNamesToIndex(std::vector< std::string > const &names) const
Definition: Output.cpp:26
std::string getName() const
Definition: Output.cpp:11
Output(std::string const &name="")
Definition: Output.cpp:6
std::vector< std::string > getJointNames() const
Definition: Output.cpp:21
bool isFullyUpdated() const
Definition: Output.cpp:62
Definition: Dispatcher.hpp:8
size_t size() const
Definition: Output.cpp:16
void reset()
Definition: Output.cpp:48
base::samples::Joints read()
Definition: Output.cpp:86
Definition: Output.hpp:13
void updateJoint(size_t jointIdx, base::Time const &time, base::JointState const &sample)
Definition: Output.cpp:67
bool isNew() const
Definition: Output.cpp:57