Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

MESH_SceneGraphTypes.h

Go to the documentation of this file.
00001 
00002 //                            MESH_SceneGraphTypes.h                          //
00004 
00005 #ifndef MESHSCENEGRAPHTYPES_H
00006 #define MESHSCENEGRAPHTYPES_H
00007 
00008 #include "Platform.h"
00009 
00010 #include <vector>
00011 #include <list>
00012 #include <iostream>
00013 
00014 namespace X3DTK {
00015 namespace MESH {
00016 
00017 class X3DNode;
00018 typedef X3DNode *SFNode;
00019 typedef std::list<SFNode> MFNode;
00020 
00021 template<class VData, class EData, class FData> class SFVertex;
00022 template<class EData, class FData, class VData> class SFEdge;
00023 template<class FData, class VData, class EData> class SFFace;
00024 
00026 
00027 template<class VData, class EData, class FData>
00028 class MFVertex : public std::vector<SFVertex<VData, EData, FData> *>
00029 {
00030 public:
00032   MFVertex();
00034   explicit MFVertex(const std::vector<SFVertex<VData, EData, FData> *> &vector);
00035 };
00036 
00038 
00039 template<class EData, class FData, class VData>
00040 class MFEdge : public std::vector<SFEdge<EData, FData, VData> *>
00041 {
00042 public:
00044   MFEdge();
00046   explicit MFEdge(const std::vector<SFEdge<EData, FData, VData> *> &vector, bool ccw);
00047 };
00048 
00050 
00051 template<class FData, class VData, class EData>
00052 class MFFace : public std::vector<SFFace<FData, VData, EData> *>
00053 {
00054 public:
00056   MFFace();
00058   explicit MFFace(const std::vector<SFFace<FData, VData, EData> *> &vector);
00059 };
00060 
00061 }
00062 }
00063 
00064 #include "MESH_SceneGraphTypes.inl"
00065 
00066 #endif

Generated on Mon Jan 19 10:32:05 2004 for X3DToolKit by doxygen1.2.18