4 #ifndef JOINT_PERSPECTIVE_H
5 #define JOINT_PERSPECTIVE_H
9 #include <yaml-cpp/yaml.h>
11 #include <trajectory_editor/spaces/basicsmallview.h>
13 namespace joint_perspective
18 std::string joint_name;
19 std::string visual_name;
21 BasicSmallView::Alignment alignment;
22 BasicSmallView::Type type;
28 class JointPerspective
34 bool load(std::string path_to_file);
35 bool correspondsTo(std::vector<std::string> &joint_list);
40 std::string m_robot_name;
42 bool m_joint_space_allowed;
43 bool m_pid_space_allowed;
44 bool m_abstract_space_allowed;
45 bool m_inverse_space_allowed;
47 std::vector<Joint> m_joints;
50 void nodeToPerspective(
const YAML::Node& node);
56 class PerspectiveManager
60 ~PerspectiveManager();
62 bool isNewPerspective(std::vector<std::string> &joint_list,
bool &ok);
64 JointPerspective& getCurrentPerspective();
65 const std::vector<JointPerspective>& getPerspectives();
68 std::vector<JointPerspective> m_perspectives;
69 JointPerspective m_current_perspective;