basic/robots/RobotBase.h

Go to the documentation of this file.
00001 #ifndef RobotBase_h
00002 #define RobotBase_h 1
00003 
00004 #include <list>
00005 //#include < additional/streams/IfstreamWithComments.h>
00006 
00007 #include "Universe\Entity.h"
00008 
00009 class LinkBase;
00010 
00011 class RobotBase : public Entity  //## Inherits: <unnamed>%37195CE40258
00012 {
00013 
00014   public:
00015       RobotBase (FrameManager* frameManager);
00016 
00017       RobotBase (const RobotBase& right);
00018 
00019       virtual ~RobotBase();
00020 
00021 
00022       //        returns the number of degrees of freedom in a robot
00023       virtual unsigned int DOF () const = 0;
00024 
00025       //        this operation allocates memory for a copy of this
00026       //        object, and returns a pointer to this new instantiation.
00027       virtual Entity* Clone () const = 0;
00028 
00029 
00030       //        Returns a list of pointers to all the links that compose
00031       //        the robot.
00032       virtual std::list< LinkBase*> GetAllLinks() const = 0;
00033       virtual LinkBase* GetLink( const unsigned int i ) = 0;
00034 
00035           virtual std::list< int > GetAllToolFrames() const = 0;
00036 
00037           static RobotBase* DeserializeAbstract (IfstreamWithComments& is, FrameManager* frameManager);
00038           virtual bool Deserialize( IfstreamWithComments& is ) ;
00039 
00040 };
00041 #endif

Generated on Sat Apr 1 21:30:35 2006 for Motion Planning Kernel by  doxygen 1.4.6-NO