00001 /** 00002 * @file BodyPosture.h 00003 * 00004 * Declaration of class BodyPosture 00005 */ 00006 00007 #ifndef __BodyPosture_h_ 00008 #define __BodyPosture_h_ 00009 00010 00011 #include "Tools/Streams/InOut.h" 00012 00013 /** 00014 * The class represents the robots body percept 00015 * 00016 * The percept consists of current switches and a variable containing 00017 * whether the robot stands or is crashed. */ 00018 class BodyPosture 00019 { 00020 public: 00021 BodyPosture(); 00022 ~BodyPosture(); 00023 00024 /** copies another BodyPosture to this one */ 00025 void operator = (const BodyPosture& other); 00026 00027 unsigned long frameNumber; 00028 00029 double neckHeightCalculatedFromLegSensors; 00030 double bodyRollCalculatedFromLegSensors; 00031 double bodyTiltCalculatedFromLegSensors; 00032 00033 double neckHeightProvidedByMotionControl; 00034 double bodyRollProvidedByMotionControl; 00035 double bodyTiltProvidedByMotionControl; 00036 00037 double bodyRollCalculatedFromAccelerationSensors; 00038 double bodyTiltCalculatedFromAccelerationSensors; 00039 }; 00040 00041 /** 00042 * Streaming operator that reads a BodyPosture from a stream. 00043 * @param stream The stream from which is read. 00044 * @param bodyPosture The BodyPosture object. 00045 * @return The stream. 00046 */ 00047 In& operator>>(In& stream,BodyPosture& bodyPosture); 00048 00049 /** 00050 * Streaming operator that writes a BodyPosture to a stream. 00051 * @param stream The stream to write on. 00052 * @param bodyPosture The BodyPosture object. 00053 * @return The stream. 00054 */ 00055 Out& operator<<(Out& stream, const BodyPosture& bodyPosture); 00056 00057 00058 #endif //__BodyPosture_h_ 00059 00060 /* 00061 * Change log : 00062 * 00063 * $Log: BodyPosture.h,v $ 00064 * Revision 1.3 2004/05/26 17:11:40 juengel 00065 * Added frameNumber. 00066 * 00067 * Revision 1.2 2004/05/26 15:47:07 dueffert 00068 * private members only and no functions to access anything are not useful 00069 * 00070 * Revision 1.1 2004/05/26 15:18:58 juengel 00071 * Added BodyPosture. 00072 * 00073 */