00001 /** 00002 * @file JointDataBuffer.h 00003 * 00004 * Definition of JointDataBuffer class. 00005 * The jointdata struct is a non NDA violating description of joint vector data 00006 * 00007 * @author Max Risler 00008 */ 00009 #ifndef __JOINTDATABUFFER_H__ 00010 #define __JOINTDATABUFFER_H__ 00011 00012 #include "JointData.h" 00013 00014 #include "Tools/Streams/InOut.h" 00015 00016 /** Number of frames in the buffer. 00017 * This number defines how many frames are computed each run, 00018 * and therefore how often Motion::execute will be called. 00019 */ 00020 static const int jointDataBufferNumOfFrames = 1; 00021 00022 00023 /** 00024 * A buffer for joint data sets, containing all frames computed in one call of Motion::execute. 00025 * @author Max Risler 00026 */ 00027 struct JointDataBuffer 00028 { 00029 public: 00030 /** Constructor */ 00031 JointDataBuffer(); 00032 00033 /** The joint data frames */ 00034 JointData frame[jointDataBufferNumOfFrames]; 00035 }; 00036 00037 /** 00038 * Streaming operator that reads a JointDataBuffer from a stream. 00039 * @param stream The stream from which is read. 00040 * @param jointDataBuffer The JointDataBuffer object. 00041 * @return The stream. 00042 */ 00043 In& operator>>(In& stream,JointDataBuffer& jointDataBuffer); 00044 00045 /** 00046 * Streaming operator that writes a JointDataBuffer to a stream. 00047 * @param stream The stream to write on. 00048 * @param jointDataBuffer The JointDataBuffer object. 00049 * @return The stream. 00050 */ 00051 Out& operator<<(Out& stream, const JointDataBuffer& jointDataBuffer); 00052 00053 #endif //__JOINTDATABUFFER_H__
1.3.6