source: GTP/trunk/Lib/Geom/shared/GTGeometry/include/GeoMesh.h @ 774

Revision 774, 1.1 KB checked in by gumbau, 18 years ago (diff)

GTGeometry and GeoTool? initial imports

Line 
1#ifndef __GEO_MESH__
2#define __GEO_MESH__
3
4#include <vector>
5#include <ostream>
6#include <iostream>
7#include <fstream>
8
9#include "GeoBase.h"
10#include "GeoVertexBuffer.h"
11#include "GeoSerializable.h"
12#include "GeoSubMesh.h"
13
14namespace Geometry {
15       
16        /// Mesh class interface
17        class Mesh : public Serializable
18        {
19        public:
20                /// Constructor
21                Mesh();
22
23                /// Destructor
24                ~Mesh();
25
26                /// Copy constructor
27                Mesh(const Mesh&);
28
29                /// Assignment operator
30                Mesh& operator =(const Mesh&);
31
32                /// Loads data from a Serializer
33                void Load(Serializer &s);
34
35                /// Saves data to a Serializer
36                void Save(Serializer &s);
37
38                // Exports mesh to obj format file
39                void exportToOBJ(char *nomfich);
40
41                // Generate a shared vertex mesh
42                Geometry::Mesh *toSharedVertex(void);
43
44
45                VertexBuffer  *mVertexBuffer; ///< Shared VertexBuffer
46                SubMesh *mSubMesh;        ///< Array of subMesehs
47                size_t   mSubMeshCount;   ///< Total count of subMeshes
48                MeshType mType;           ///< Type of mesh
49
50                //OSCAR
51                char mSkeletonName[255];
52                bool hasSkeleton;
53                std::vector<VertexBoneAssignment> mBones;
54        };
55
56} //end of Geometry namespace
57
58#endif
Note: See TracBrowser for help on using the repository browser.