TAPs 0.7.7.3
TAPsModelArticulatedBody.hpp
Go to the documentation of this file.
00001 /******************************************************************************
00002 TAPsModelArticulatedBody.hpp
00003 ******************************************************************************/
00007 /******************************************************************************
00008 SUKITTI PUNAK   (03/25/2010)
00009 UPDATE          (05/01/2010)
00010 ******************************************************************************/
00011 #ifndef TAPs_ARTICULATED_BODY_HPP
00012 #define TAPs_ARTICULATED_BODY_HPP
00013 
00014 //#include "RigidBodies/TAPsRigidBodyBase.hpp"
00015 #include "RigidBodies/TAPsRigidBodyDynamics.hpp"
00016 #include "../DataStructure/TAPsDirectedGraph.hpp"
00017 
00018 // Forward class
00019 template <typename T> class ArticulatedBodySetup;
00020 
00021 BEGIN_NAMESPACE_TAPs
00022 //=============================================================================
00023 template <typename T>
00024 class ModelArticulatedBody {
00025 //=============================================================================
00026     template <typename T> friend class ArticulatedBodySetup;
00027 public:
00028     // Member Functions -------------------------------------------------------
00030     friend std::ostream & operator<< ( std::ostream &output, ModelArticulatedBody<T> const &obj )
00031     {
00032         output << obj.StrInfo();
00033         return output;
00034     }
00035     //-------------------------------------------------------------------------
00037     ModelArticulatedBody ();
00039     ModelArticulatedBody ( std::string articulatedBodyFile );
00041     //ModelArticulatedBody ( ModelArticulatedBody<T> const &orig );
00043     virtual ~ModelArticulatedBody ();
00044     //-------------------------------------------------------------------------
00046     virtual std::string StrInfo () const;
00047     //-------------------------------------------------------------------------
00049     //inline ModelArticulatedBody<T> & operator= ( ModelArticulatedBody<T> const &orig );
00050 
00051     // Data Members -----------------------------------------------------------
00052 //=============================================================================
00053 protected:
00054     // Member Functions -------------------------------------------------------
00055     // Data Members -----------------------------------------------------------
00056     std::vector< RigidBodyDynamics<T> > m_ListRigidBodies;  
00057     // Connected information --> rigidbodyid, connnectedPts, ... --> NEEDED GRAPH
00058 //=============================================================================
00059 private:
00060     // Member Functions -------------------------------------------------------
00061     // Data Members -----------------------------------------------------------
00062 //=============================================================================
00063 
00064 #if defined(__gl_h_) || defined(__GL_H__)
00065 public:
00067     virtual void Draw () const;
00068 #endif
00069 
00070 //=============================================================================
00071 }; // END CLASS ModelArticulatedBody
00072 //=============================================================================
00073 END_NAMESPACE_TAPs
00074 //-----------------------------------------------------------------------------
00076 #include "TAPsModelArticulatedBody.cpp"
00077 
00079 // Include definition if TAPs_USE_EXPORT is not defined
00080 //#if !defined( TAPs_USE_EXPORT )
00081 //  #include "TAPsModelArticulatedBody.cpp"
00082 //#endif
00083 //-----------------------------------------------------------------------------
00084 #endif
00085 //34567890123456789012345678901234567890123456789012345678901234567890123456789
00086 //--+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines