Tekkotsu Homepage | Demos | Overview | Downloads | Dev. Resources | Reference | Credits |
Motion.hGo to the documentation of this file.00001 //-*-c++-*- 00002 #ifndef INCLUDED_Motion_h_ 00003 #define INCLUDED_Motion_h_ 00004 00005 #include "Process.h" 00006 #include "sim.h" 00007 #include "IPC/ProcessID.h" 00008 #include "IPC/SharedObject.h" 00009 #include "SharedGlobals.h" 00010 #include "Motion/MotionManager.h" 00011 #include "Sound/SoundManager.h" 00012 #include "Shared/Profiler.h" 00013 #include "local/EntryPoint.h" 00014 #include <list> 00015 00016 class Motion : public Process { 00017 public: 00018 //! constructor 00019 Motion(); 00020 //! destructor 00021 ~Motion(); 00022 00023 virtual void doStart(); 00024 virtual void run(); 00025 virtual void doStop(); 00026 00027 static const char * getClassName() { return "Motion"; } 00028 static ProcessID::ProcessID_t getID() { return ProcessID::MotionProcess; } 00029 00030 static const char * getMotionCommandID() { return "MotionCommands"; } 00031 static const char * getMotionOutputID() { return "MotionOutput"; } 00032 static const char * getMotionOutputPIDsID() { return "MotionOutputPIDs"; } 00033 static const char * getMotionManagerID() { return "MotionManager"; } 00034 static const char * getMotionProfilerID() { return "MotionProfiler"; } 00035 00036 protected: 00037 SharedObject<sim::SoundPlayQueue_t> sounds; 00038 SharedObject<sim::MotionCommandQueue_t> motions; 00039 SharedObject<sim::MotionOutput_t> motionout; 00040 SharedObject<sim::MotionOutputPIDs_t> motionoutpids; 00041 SharedObject<sim::EventQueue_t> events; 00042 SharedObject<sim::StatusRequest_t> statusRequest; 00043 SharedObject<MotionManager> motionmanager; 00044 SharedObject<SoundManager> soundmanager; 00045 SharedObject<sim::MotionWakeup_t> motionWakeup; 00046 SharedObject<motionProfiler_t> motionProf; 00047 00048 IPCEventTranslator * etrans; 00049 class MessageReceiver * statusrecv; 00050 class MessageReceiver * wakeuprecv; 00051 class MotionExecThread * motionExec; 00052 class IPCMotionHook * motionfwd; 00053 WirelessThread wireless_thread; 00054 00055 EntryPoint motionLock; 00056 00057 static bool gotWakeup(RCRegion* msg); 00058 00059 private: 00060 Motion(const Motion&); //!< don't call (copy constructor) 00061 Motion& operator=(const Motion&); //!< don't call (assignment operator) 00062 }; 00063 00064 /*! @file 00065 * @brief Defines Motion, which DESCRIPTION 00066 * @author ejt (Creator) 00067 */ 00068 00069 #endif |
Tekkotsu Hardware Abstraction Layer 5.1CVS |
Generated Mon May 9 05:01:39 2016 by Doxygen 1.6.3 |