RTCBody.h
Go to the documentation of this file.
00001 #ifndef __RTCBODY_H__
00002 #define __RTCBODY_H__
00003 
00004 #include <rtm/idl/BasicDataType.hh>
00005 #include <rtm/idl/ExtendedDataTypes.hh>
00006 #include "hrpsys/idl/HRPDataTypes.hh"
00007 #include <hrpModel/Body.h>
00008 #include <rtm/DataFlowComponentBase.h>
00009 #include <rtm/DataInPort.h>
00010 #include <rtm/DataOutPort.h>
00011 #include <rtm/idl/BasicDataTypeSkel.h>
00012 #include <rtm/idl/ExtendedDataTypesSkel.h>
00013 
00014 class RTCBody : public hrp::Body
00015 {
00016 public:
00017     RTCBody();
00018     ~RTCBody();
00019     void createPorts(RTC::DataFlowComponentBase *comp);
00020     void input();
00021     void output(OpenHRP::RobotState& state);
00022 private:
00023     RTC::TimedDoubleSeq m_tau;
00024     RTC::TimedDoubleSeq m_qCmd, m_dqCmd, m_ddqCmd;
00025 
00026     RTC::InPort<RTC::TimedDoubleSeq> m_tauIn;
00027     RTC::InPort<RTC::TimedDoubleSeq> m_qCmdIn;
00028     RTC::InPort<RTC::TimedDoubleSeq> m_dqCmdIn;
00029     RTC::InPort<RTC::TimedDoubleSeq> m_ddqCmdIn;
00030     //
00031     RTC::TimedPoint3D m_pos;
00032     RTC::TimedOrientation3D m_rpy;
00033     RTC::TimedDoubleSeq m_q;
00034     std::vector<RTC::TimedAcceleration3D> m_acc;
00035     std::vector<RTC::TimedAngularVelocity3D> m_rate;
00036     std::vector<RTC::TimedDoubleSeq> m_force;
00037 
00038     RTC::OutPort<RTC::TimedPoint3D> m_posOut;
00039     RTC::OutPort<RTC::TimedOrientation3D> m_rpyOut;
00040     RTC::OutPort<RTC::TimedDoubleSeq> m_qOut;
00041     std::vector<RTC::OutPort<RTC::TimedAcceleration3D> *> m_accOut;
00042     std::vector<RTC::OutPort<RTC::TimedAngularVelocity3D> *> m_rateOut;
00043     std::vector<RTC::OutPort<RTC::TimedDoubleSeq> *> m_forceOut;
00044 
00045     bool m_highgain;
00046 };
00047 
00048 typedef boost::shared_ptr<RTCBody> RTCBodyPtr;
00049 
00050 #endif


hrpsys
Author(s): AIST, Fumio Kanehiro
autogenerated on Wed May 15 2019 05:02:18