planners/inversekin/Joints.h

Go to the documentation of this file.
00001 
00002 //
00003 //Contents: Class CJoints
00004 // 
00006 
00007 #ifndef _Joint_Header_
00008 #define _Joint_Header_
00009 
00010 //#include <vector>
00011 #include "kinematics\FrameManager.h"
00012 #include "Robots\R_OpenChain.h"
00013 #include "kinematics\Configuration.h"
00014 
00015 class CJoints
00016 {
00017 public:
00018         CJoints();
00019         CJoints(FrameManager* frameManager);
00020         virtual ~CJoints();
00021         
00022         //Set context of environment
00023         virtual void SetRobot(R_OpenChain *robot);
00024         virtual void SetFrameManager(FrameManager* frameManager);
00025         virtual void SetBaseFrame(unsigned int frame);
00026         virtual void SetFirstJoint(unsigned int joint);
00027         virtual void SetLastJoint(unsigned int joint);
00028         //virtual void SetCollisionDetector (CD_BasicStyle* collisionDetector);
00029 
00030         virtual bool GetConfiguration(Configuration &conf)=0;
00031         virtual bool GetConfiguration(Configuration &conf, Configuration &current, double dist)=0;
00032 
00033 public:
00034         unsigned int jointNum;
00035 
00036 protected:
00037         R_OpenChain* robot;
00038         std::vector< LinkBase*> links;
00039         //CD_BasicStyle* collisionDetector;
00040         FrameManager* frameManager;
00041         unsigned int baseFrame;
00042         unsigned int firstJoint;
00043         unsigned int lastJoint;
00044 
00045         virtual double Distance(LinkBase *link, double q1, double q2);
00046 };
00047 
00048 
00049 #endif

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