Homepage Demos Overview Downloads Tutorials Reference
Credits

PostureEditor.h

Go to the documentation of this file.
00001 //-*-c++-*-
00002 #ifndef INCLUDED_PostureEditor_h_
00003 #define INCLUDED_PostureEditor_h_
00004 
00005 #include "ControlBase.h"
00006 #include "Shared/SharedObject.h"
00007 #include "Motion/PostureMC.h"
00008 #include "Motion/MotionManager.h"
00009 #include "StringInputControl.h"
00010 #include "FileInputControl.h"
00011 
00012 //! allows logging of events to the console or a file
00013 class PostureEditor : public ControlBase {
00014 public:
00015   //! constructor
00016   PostureEditor();
00017 
00018   //! adds #poseMC to MotionManager
00019   virtual ControlBase * activate(MotionManager::MC_ID disp_id, Socket * gui);
00020 
00021   //! if we're back from a child slot, it's either load or save, so we need to handle it
00022   virtual void refresh();
00023 
00024   //! removes #poseMC from MotionManager
00025   virtual void deactivate();
00026 
00027   //! opens a custom (embedded) menu edit outputs
00028   virtual ControlBase* doSelect();
00029   
00030 protected:
00031   SharedObject<PostureMC> poseMC; //!< the actual memory space for the posture
00032   MotionManager::MC_ID poseID; //!< current id for the posture
00033 
00034   ControlBase* lastSlot; //!< the last accessed slot
00035   FileInputControl* loadPose; //!< the control for loading postures
00036   StringInputControl* savePose; //!< the control for saving postures
00037 
00038 private:
00039   PostureEditor(const PostureEditor& ); //!< don't call
00040   PostureEditor& operator=(const PostureEditor& ); //!< don't call
00041 };
00042 
00043 /*! @file
00044  * @brief Describes PostureEditor, which allows numeric control of joints and LEDs
00045  * @author ejt (Creator)
00046  *
00047  * $Author: ejt $
00048  * $Name: tekkotsu-2_1 $
00049  * $Revision: 1.2 $
00050  * $State: Exp $
00051  * $Date: 2004/01/18 10:16:56 $
00052  */
00053 
00054 #endif

Tekkotsu v2.1
Generated Tue Mar 16 23:19:14 2004 by Doxygen 1.3.5