00001 /** 00002 * @file WakeUpEngine.h 00003 * 00004 * Definition of class WakeUpEngine 00005 * 00006 * @author Andreas Heinze 00007 */ 00008 00009 #ifndef __WakeUpEngine_h_ 00010 #define __WakeUpEngine_h_ 00011 00012 00013 #include "Representations/Perception/SensorDataBuffer.h" 00014 #include "Representations/Motion/JointData.h" 00015 #include "Representations/Motion/PIDData.h" 00016 00017 /** 00018 * @class WakeUpEngine 00019 * 00020 * 00021 * 00022 */ 00023 class WakeUpEngine 00024 { 00025 public: 00026 00027 WakeUpEngine(); 00028 00029 ~WakeUpEngine(); 00030 00031 00032 00033 bool execute(unsigned int frameNumber, const SensorData& sensorData, JointData& jointData, PIDData& pidData); 00034 00035 private: 00036 bool running; 00037 int counter; 00038 bool finished; 00039 unsigned long lastTimeRunFrameNumber; 00040 enum {numberOfKeyFrames = 4}; 00041 long int position[JointData::numOfJoint][numberOfKeyFrames]; 00042 long int stepSize[JointData::numOfJoint][numberOfKeyFrames-1]; 00043 int frameNumberOfKeyFrame[numberOfKeyFrames]; 00044 int frameNumberWhenDefaultPidDataIsReached; 00045 int currentKeyFrame; 00046 double diffP[JointData::numOfJoint]; 00047 double diffI[JointData::numOfJoint]; 00048 double diffD[JointData::numOfJoint]; 00049 00050 void start(const SensorData& sensorData, PIDData& pidData); 00051 }; 00052 00053 #endif// __WakeUpEngine_h_ 00054 00055 /* 00056 * Change log : 00057 * 00058 * $Log: WakeUpEngine.h,v $ 00059 * Revision 1.4 2004/09/09 11:37:39 wachter 00060 * - Fixed some more doxygen-errors 00061 * 00062 * Revision 1.3 2004/09/09 10:15:58 spranger 00063 * fixed doxygen-errors 00064 * 00065 * Revision 1.2 2004/06/14 14:53:43 spranger 00066 * put everything into execute (start is called from there) 00067 * motioncontrol cleanup 00068 * 00069 * Revision 1.1.1.1 2004/05/22 17:20:37 cvsadm 00070 * created new repository GT2004_WM 00071 * 00072 * Revision 1.3 2004/05/22 14:28:13 juengel 00073 * First working version. 00074 * 00075 * Revision 1.2 2004/05/19 13:32:39 heinze 00076 * worked at the engine 00077 * 00078 * Revision 1.1 2004/05/03 09:45:01 heinze 00079 * Added WakeUpEngine. 00080 * 00081 */