Go to the documentation of this file.00001
00007 #ifndef SWITCHINPUTRTC_H
00008 #define SWITCHINPUTRTC_H
00009
00010
00011 #include <stdio.h>
00012 #include <sys/time.h>
00013
00014 #include <rtm/Manager.h>
00015 #include <rtm/DataFlowComponentBase.h>
00016 #include <rtm/CorbaPort.h>
00017 #include <rtm/DataInPort.h>
00018 #include <rtm/DataOutPort.h>
00019 #include <rtm/idl/BasicDataTypeSkel.h>
00020 #include <rtm/RingBuffer.h>
00021
00022 #include "intellirobotStub.h"
00023
00024 using namespace RTC;
00025
00026 class SwitchInputRTC : public RTC::DataFlowComponentBase
00027 {
00028 public:
00029 SwitchInputRTC(RTC::Manager* manager);
00030 ~SwitchInputRTC();
00031
00032 virtual RTC::ReturnCode_t onInitialize();
00033 virtual RTC::ReturnCode_t onExecute(RTC::UniqueId ec_id);
00034
00035 protected:
00036
00037
00038
00039 IIS::TimedVelocity2D m_inVelJoy;
00040 InPort<IIS::TimedVelocity2D> m_inVelJoyIn;
00041 IIS::TimedVelocity2D m_inVelAuto;
00042 InPort<IIS::TimedVelocity2D> m_inVelAutoIn;
00043
00044
00045
00046 IIS::TimedVelocity2D m_outVel;
00047 OutPort<IIS::TimedVelocity2D> m_outVelOut;
00048
00049 private:
00050 struct timeval tv0, tv1;
00051 unsigned long dsec, dusec;
00052
00053 };
00054
00055
00056 extern "C"
00057 {
00058 DLL_EXPORT void SwitchInputRTCInit(RTC::Manager* manager);
00059 };
00060
00061 #endif // SWITCHINPUTRTC_H
00062