00001 /** 00002 * @file MotionInfo.h 00003 * 00004 * Definition of class MotionInfo. 00005 * 00006 * @author Martin Lötzsch 00007 */ 00008 00009 #ifndef __MotionInfo_h__ 00010 #define __MotionInfo_h__ 00011 00012 #include "MotionRequest.h" 00013 00014 00015 /** 00016 * @class MotionInfo 00017 * 00018 * Contains information about the motions which are executed by the Motion process. 00019 * 00020 * @author Martin Lötzsch 00021 */ 00022 class MotionInfo 00023 { 00024 public: 00025 /** Constructor */ 00026 MotionInfo(); 00027 00028 /** The motion request which is executed by the MotionControl module */ 00029 MotionRequest executedMotionRequest; 00030 00031 /** If true, the motion is stable, leading to a valid camera matrix */ 00032 bool motionIsStable; 00033 00034 /** The height of the neck joint in mm as estimated by the motion modules */ 00035 double neckHeight; 00036 00037 /** The tilt of the body in rad */ 00038 double bodyTilt; 00039 00040 /** 00041 * The position inside the step of the walking engine 00042 * slides from 0 to 1 during one step 00043 */ 00044 double positionInWalkCycle; 00045 00046 }; 00047 00048 /** 00049 * Streaming operator that reads a MotionInfo from a stream. 00050 * @param stream The stream from which is read. 00051 * @param executedMotionInfo The MotionInfo object. 00052 * @return The stream. 00053 */ 00054 In& operator>>(In& stream,MotionInfo& executedMotionInfo); 00055 00056 /** 00057 * Streaming operator that writes a MotionInfo to a stream. 00058 * @param stream The stream to write on. 00059 * @param executedMotionInfo The MotionInfo object. 00060 * @return The stream. 00061 */ 00062 Out& operator<<(Out& stream, const MotionInfo& executedMotionInfo); 00063 00064 #endif // __MotionInfo_h__ 00065 00066 /* 00067 * Change log : 00068 * 00069 * $Log: MotionInfo.h,v $ 00070 * Revision 1.2 2004/05/26 15:46:19 dueffert 00071 * typo fixed 00072 * 00073 * Revision 1.1 2004/05/26 15:17:15 loetzsch 00074 * added class MotionInfo 00075 * 00076 */