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

Tools/Actorics/JointDataSequencer.h

Go to the documentation of this file.
00001 /** 
00002 * @file JointDataSequencer.h
00003 *
00004 * Definition of class JointDataSequencer.
00005 *
00006 * @author Max Risler
00007 */
00008 
00009 #ifndef __JOINTDATASEQUENCER_H__
00010 #define __JOINTDATASEQUENCER_H__
00011 
00012 #include "Representations/Motion/JointDataSequence.h"
00013 
00014 /** 
00015 * @class JointDataSequencer
00016 * A class executing JointDataSequences.
00017 * It derives from JointDataSequence but adds methods to execute the sequence.
00018 */
00019 class JointDataSequencer : public JointDataSequence
00020 {
00021 public:
00022   /** Constructor */
00023   JointDataSequencer();
00024 
00025    /** Assignment operator */
00026   JointDataSequencer& operator=(const JointDataSequence& other);
00027 
00028   /** write next data from current sequent to jointData */
00029   void nextSequenceData(JointData& jointData);
00030 
00031   /** start executing the sequence */
00032   void start();
00033 
00034   /** stop executing the sequence */
00035   void stop();
00036 
00037   /** returns true if the sequence is being executed */
00038   bool isRunning();
00039 
00040 protected:
00041 
00042   /** interpolate joint data
00043    * @param jointData stores interpolated data
00044    * @param from data to start from
00045    * @param to data to interpolate to
00046    * @param step index of interpolation step
00047    * @param len length of interpolation
00048    */
00049   void interpolateJointData(
00050     JointData& jointData,
00051     const JointData& from, const JointData& to, int step, int len
00052     );
00053 
00054   /** true if the sequence is being executed */
00055   bool running;
00056 
00057   /** current position in sequence */
00058   int sequencePos;
00059 
00060   /** counter for repetition of current sequence line */
00061   int repetitionCounter;
00062 
00063 };
00064 
00065 #endif //__JOINTDATASEQUENCER_H__
00066 
00067 /*
00068  * Change log :
00069  * 
00070  * $Log: JointDataSequencer.h,v $
00071  * Revision 1.1.1.1  2004/05/22 17:35:56  cvsadm
00072  * created new repository GT2004_WM
00073  *
00074  * Revision 1.1  2003/10/07 10:13:21  cvsadm
00075  * Created GT2004 (M.J.)
00076  *
00077  * Revision 1.2  2003/09/26 15:28:10  juengel
00078  * Renamed DataTypes to representations.
00079  *
00080  * Revision 1.1  2003/09/26 11:40:40  juengel
00081  * - sorted tools
00082  * - clean-up in DataTypes
00083  *
00084  * Revision 1.1.1.1  2003/07/02 09:40:28  cvsadm
00085  * created new repository for the competitions in Padova from the 
00086  * tamara CVS (Tuesday 2:00 pm)
00087  *
00088  * removed unused solutions
00089  *
00090  * Revision 1.2  2002/11/27 13:52:17  dueffert
00091  * doxygen docu corrected
00092  *
00093  * Revision 1.1  2002/09/10 15:53:58  cvsadm
00094  * Created new project GT2003 (M.L.)
00095  * - Cleaned up the /Src/DataTypes directory
00096  * - Removed challenge related source code
00097  * - Removed processing of incoming audio data
00098  * - Renamed AcousticMessage to SoundRequest
00099  *
00100  * Revision 1.1.1.1  2002/05/10 12:40:32  cvsadm
00101  * Moved GT2002 Project from ute to tamara.
00102  *
00103  * Revision 1.3  2002/02/21 18:02:51  risler
00104  * added assignment operator
00105  *
00106  * Revision 1.2  2002/02/21 17:02:11  risler
00107  * added comments
00108  *
00109  * Revision 1.1  2002/02/21 16:29:21  risler
00110  * added JointDataSequencer
00111  *
00112  *
00113  */

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