Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Representations/Motion/JointDataSequence.cpp

Go to the documentation of this file.
00001 /**
00002 * @file JointDataSequence.cpp
00003 *
00004 * Implementation of class JointDataSequence
00005 *
00006 * @author Max Risler
00007 */
00008 
00009 #include "JointDataSequence.h"
00010 
00011 JointDataSequence::JointDataSequence()
00012 {
00013   numOfEntries = 0;
00014   loop = false;
00015 }
00016 
00017 JointDataSequence& JointDataSequence::operator=(const JointDataSequence& other)
00018 {
00019   numOfEntries = other.numOfEntries;
00020   loop = other.loop;
00021   for (int i = 0; i < numOfEntries; i++)
00022   {
00023     entry[i] = other.entry[i];
00024     interpolate[i] = other.interpolate[i];
00025     repeats[i] = other.repeats[i];
00026   }
00027   return *this;
00028 }
00029 
00030 void JointDataSequence::addEntry(const JointData& jointData, bool interp, int rep)
00031 {
00032   entry[numOfEntries] = jointData;
00033   interpolate[numOfEntries] = interp;
00034   repeats[numOfEntries] = rep;
00035   numOfEntries++;
00036 }
00037 
00038 In& operator>>(In& stream,JointDataSequence& jointDataSequence)
00039 {
00040   int x;
00041 
00042   stream >> jointDataSequence.numOfEntries;
00043   stream >> x; jointDataSequence.loop = (x!=0);
00044 
00045   for (int i=0;i<jointDataSequence.numOfEntries;i++)
00046   {
00047     stream >> jointDataSequence.entry[i];
00048     stream >> jointDataSequence.repeats[i];
00049     stream >> x; jointDataSequence.interpolate[i] = (x!=0);
00050   }
00051   return stream;
00052 }
00053  
00054 Out& operator<<(Out& stream, const JointDataSequence& jointDataSequence)
00055 {
00056   stream << jointDataSequence.numOfEntries;
00057   stream << jointDataSequence.loop;
00058 
00059   for (int i=0;i<jointDataSequence.numOfEntries;i++)
00060   {
00061     stream << jointDataSequence.entry[i];
00062     stream << jointDataSequence.repeats[i];
00063     stream << jointDataSequence.interpolate[i];
00064   }
00065   return stream;
00066 }
00067 
00068 /*
00069  * Change log :
00070  * 
00071  * $Log: JointDataSequence.cpp,v $
00072  * Revision 1.1.1.1  2004/05/22 17:25:18  cvsadm
00073  * created new repository GT2004_WM
00074  *
00075  * Revision 1.1  2003/10/07 10:07:01  cvsadm
00076  * Created GT2004 (M.J.)
00077  *
00078  * Revision 1.1.1.1  2003/07/02 09:40:22  cvsadm
00079  * created new repository for the competitions in Padova from the 
00080  * tamara CVS (Tuesday 2:00 pm)
00081  *
00082  * removed unused solutions
00083  *
00084  * Revision 1.2  2002/11/28 16:50:43  risler
00085  * added addEntry
00086  *
00087  * Revision 1.1  2002/09/10 15:26:40  cvsadm
00088  * Created new project GT2003 (M.L.)
00089  * - Cleaned up the /Src/DataTypes directory
00090  * - Removed Challenge Code
00091  * - Removed processing of incoming audio data
00092  * - Renamed AcousticMessage to SoundRequest
00093  *
00094  * Revision 1.1.1.1  2002/05/10 12:40:13  cvsadm
00095  * Moved GT2002 Project from ute to tamara.
00096  *
00097  * Revision 1.2  2002/02/21 18:02:51  risler
00098  * added assignment operator
00099  *
00100  * Revision 1.1  2002/02/08 22:31:46  risler
00101  * added JointDataSequence, finished DebugMotionControl
00102  *
00103  */

Generated on Thu Sep 23 19:57:35 2004 for GT2004 by doxygen 1.3.6