collisiondetectors/CD_JointLimits.h

Go to the documentation of this file.
00001 //## begin module%37542C1B0011.cm preserve=no
00002 //        %X% %Q% %Z% %W%
00003 //## end module%37542C1B0011.cm
00004 
00005 //## begin module%37542C1B0011.cp preserve=no
00006 //## end module%37542C1B0011.cp
00007 
00008 //## Module: CD_JointLimits%37542C1B0011; Pseudo Package specification
00009 //## Source file: C:\project\mpk\code\CollisionDetectors\CD_JointLimits.h
00010 
00011 #ifndef CD_JointLimits_h
00012 #define CD_JointLimits_h 1
00013 
00014 //## begin module%37542C1B0011.additionalIncludes preserve=no
00015 //## end module%37542C1B0011.additionalIncludes
00016 
00017 //## begin module%37542C1B0011.includes preserve=yes
00018 //## end module%37542C1B0011.includes
00019 
00020 // CollisionDetectorBase
00021 #include "CollisionDetectors\CollisionDetectorBase.h"
00022 
00023 class Configuration;
00024 class VectorN;
00025 
00026 //## begin module%37542C1B0011.additionalDeclarations preserve=yes
00027 //## end module%37542C1B0011.additionalDeclarations
00028 
00029 
00030 //## begin CD_JointLimits%37542C1B0011.preface preserve=yes
00031 //## end CD_JointLimits%37542C1B0011.preface
00032 
00033 //## Class: CD_JointLimits%37542C1B0011; Abstract
00034 //## Category: CollisionDetectors%36FB14140230
00035 //## Persistence: Transient
00036 //## Cardinality/Multiplicity: n
00037 
00038 //## Uses: <unnamed>%376FF9D70265;Configuration { -> F}
00039 
00040 class CD_JointLimits : virtual public CollisionDetectorBase  //## Inherits: <unnamed>%3949B1F80384
00041 {
00042   //## begin CD_JointLimits%37542C1B0011.initialDeclarations preserve=yes
00043   //## end CD_JointLimits%37542C1B0011.initialDeclarations
00044 
00045   public:
00046     //## Destructor (generated)
00047       virtual ~CD_JointLimits();
00048 
00049 
00050     //## Other Operations (specified)
00051       //## Operation: JointMax%928263325
00052       virtual double JointMax (const unsigned int jointNum) const = 0;
00053 
00054       //## Operation: JointMin%928263326
00055       virtual double JointMin (const unsigned int jointNum) const = 0;
00056 
00057       //## Operation: DOF%928263332
00058       virtual unsigned int DOF () const = 0;
00059 
00060       //## Operation: JointWraps%928263334
00061       virtual bool JointWraps (const unsigned int jointNum) const = 0;
00062 
00063       //## Operation: DistanceBetween%930083383
00064       double DistanceBetween (const Configuration& c1, const Configuration& c2) const;
00065 
00066           // Calculates the wrapping (if applicable) displacement of each joint between the two
00067           // given configurations:  returns c2 - c1.
00068           VectorN JointDisplacement(const Configuration& c1, const Configuration& c2) const;
00069 
00070 
00071     // Additional Public Declarations
00072       //## begin CD_JointLimits%37542C1B0011.public preserve=yes
00073       //## end CD_JointLimits%37542C1B0011.public
00074 
00075   protected:
00076     // Additional Protected Declarations
00077       //## begin CD_JointLimits%37542C1B0011.protected preserve=yes
00078       //## end CD_JointLimits%37542C1B0011.protected
00079 
00080   private:
00081     // Additional Private Declarations
00082       //## begin CD_JointLimits%37542C1B0011.private preserve=yes
00083       //## end CD_JointLimits%37542C1B0011.private
00084 
00085   private: //## implementation
00086     // Additional Implementation Declarations
00087       //## begin CD_JointLimits%37542C1B0011.implementation preserve=yes
00088       //## end CD_JointLimits%37542C1B0011.implementation
00089 
00090 };
00091 
00092 //## begin CD_JointLimits%37542C1B0011.postscript preserve=yes
00093 //## end CD_JointLimits%37542C1B0011.postscript
00094 
00095 // Class CD_JointLimits 
00096 
00097 //## begin module%37542C1B0011.epilog preserve=yes
00098 //## end module%37542C1B0011.epilog
00099 
00100 
00101 #endif

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