Go to the documentation of this file.00001 #ifndef ROSMSGTREEUTILITIES_H
00002 #define ROSMSGTREEUTILITIES_H
00003
00004 #include <kdl/framevel.hpp>
00005 #include <robodyn_controllers/KdlTreeUtilities.h>
00006 #include <robodyn_utilities/RosMsgConverter.h>
00007 #include <r2_msgs/StringArray.h>
00008 #include <r2_msgs/PoseState.h>
00009 #include "nasa_common_logging/Logger.h"
00010
00011 using namespace RosMsgConverter;
00012
00013 class RosMsgTreeUtilities : public KdlTreeUtilities
00014 {
00015 public:
00016 RosMsgTreeUtilities();
00017
00018 void loadFromFile(const std::string& fileName);
00019
00020 bool setBaseFrame(const r2_msgs::StringArray& baseMsg);
00021 bool setBaseFrame(std::string& baseMsg);
00022
00023 void getFrames(const r2_msgs::PoseState& poseState, const std::string& base, std::map<std::string, KDL::Frame>& frames);
00024 void getFrameVels(const r2_msgs::PoseState& poseState, const std::string& base, std::map<std::string, KDL::FrameVel>& framevels);
00025 void getFrameAccs(const r2_msgs::PoseState& poseState, const std::string& base, std::map<std::string, KDL::FrameAcc>& frameaccs);
00026
00027 std::vector<std::string> bases;
00028 std::vector<std::string> jointNames;
00029 };
00030
00031 #endif // ROSMSGTREEUTILITIES_H