Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields   Globals  

libcsm.h File Reference

#include <iostream>
#include <ostream>
#include <istream>
#include <fstream>
#include <list>
#include <string>
#include <map>
#include <deque>
#include <vector>
#include <algorithm>
#include <functional>
#include <bitset>
#include <cassert>
#include <sstream>
#include <cmath>
#include <ctime>
#include <exception>

Go to the source code of this file.

Data Structures

struct  vec3_t
 struct vec3_t: the vec3_t class represents a vector with 3 float values More...

struct  vec4_t
 struct vec4_t: the vec4_t class represents a four diemnsional vector with all float values or a quaternion More...

struct  vec2_t
 struct vec2_t: the vec2_t class represents a 2 Dimensional Vector. More...

class  CLogger
 class CLogger: the CLogger class is a utility logger class that redirects to cerr More...

class  Vec3Util
 class Vec3Util: the Vec3Util class is a utility class for vector manipulation More...

struct  TypeWrapper
 struct TypeWrapper: the TypeWrapper class is a template class used for reading raw data from a stream More...

class  PtrWrapper
 class PtrWrapper: the PtrWrapper class is a very rudimentary smart pointer class without ref counting More...

class  ArrayWrapper
 class ArrayWrapper: the ArrayWrapper class is simillar to pointer wrapper class but used for arrays More...

struct  brush_vertex_t
 struct brush_vertex_t: the brush_vertex_t class represents a brush vertex in a CSM File More...

struct  mesh_vertex_t
 struct mesh_vertex_t: the mesh_vertex_t class represents amesh vertex in a CSM File More...

struct  triangle_t
 struct triangle_t: the triangle_t class represents a triangle in a mesh More...

struct  chunk_header_t
 struct chunk_header_t: the chunk_header_t class represents a header for a chunk More...

class  PropertyTable
 class PropertyTable: the PropertyTable class is derived froma map of string vs. More...

class  BrushFace
 class BrushFace: the BrushFace class represents a single face of a brush More...

class  Chunk
 class Chunk: the Chunk class represents the base Chunk and serves as a factory for its derived classes. More...

class  ChunkReader
 class ChunkReader: the ChunkReader class reads a list of Chunks from a CSM File More...

class  ChunkBrush
 class ChunkBrush: the brush chunk class More...

class  ChunkMesh
 class ChunkMesh: the mesh chunk class More...

class  ChunkGroup
 class ChunkGroup: represents a group chunk More...

class  ChunkData
 class ChunkData: represents the data chunk in a CSM File More...

class  ChunkEntity
 class ChunkEntity: represents the entity Chunk More...

class  ChunkLMap
 class ChunkLMap: represents the lightmap chunk More...

class  CSMFile

Defines

#define USE_PKG(x)   using namespace x
 USE_PKG() macro - a macro for using a namespace.

#define USE_FROM_PKG(x, y)   using x::y
 USE_FROM_PKG() method - a macro for the using directive.

#define USE_FROM_STD(x)   USE_FROM_PKG(std,x)
 USE_FROM_STD() method - macro for using a class from the std namesapce.

#define BEGIN_PKG(x)   namespace x{
 BEGIN_PKG() method - begin the package/namespace declaration.

#define END_PKG(x)   }
 END_PKG() method - terminate the namespace declaration.


Typedefs

typedef unsigned char ubyte
typedef short int16
typedef unsigned short uint16
typedef uint16 ushort
typedef long int32
typedef unsigned int uint32
typedef uint32 ulong
typedef vec3_t vec3_t
 struct vec3_t: the vec3_t class represents a vector with 3 float values

typedef vec4_t vec4_t
 struct vec4_t: the vec4_t class represents a four diemnsional vector with all float values or a quaternion

typedef vec4_t color_t
 a color vector

typedef vec4_t quat_t
 a quaternion

typedef vec2_t vec2_t
 struct vec2_t: the vec2_t class represents a 2 Dimensional Vector.

typedef TypeWrapper< ubyteWrapperByte
typedef TypeWrapper< int16WrapperShort
typedef TypeWrapper< uint16WrapperUShort
typedef TypeWrapper< int32WrapperLong
typedef TypeWrapper< uint32WrapperULong
typedef TypeWrapper< float > WrapperFloat
typedef TypeWrapper< double > WrapperDouble
typedef brush_vertex_t brush_vertex_t
 struct brush_vertex_t: the brush_vertex_t class represents a brush vertex in a CSM File

typedef vector< brush_vertex_tBrushVertexList
 A List of brush vertices.

typedef mesh_vertex_t mesh_vertex_t
 struct mesh_vertex_t: the mesh_vertex_t class represents amesh vertex in a CSM File

typedef vector< mesh_vertex_tMeshVertexList
 A List of Mesh Vertices.

typedef triangle_t triangle_t
 struct triangle_t: the triangle_t class represents a triangle in a mesh

typedef vector< triangle_tTriangleList
 A List of triangles.

typedef chunk_header_t chunk_header_t
 struct chunk_header_t: the chunk_header_t class represents a header for a chunk

typedef vector< BrushFace * > FaceList
 A List of Brush Face Pointers.

typedef vector< Chunk * > ChunkList
 A List of Chunk Pointers.


Functions

 USE_FROM_STD (istream)
 USE_FROM_STD (ostream)
 USE_FROM_STD (ifstream)
 USE_FROM_STD (ofstream)
 USE_FROM_STD (string)
 USE_FROM_STD (list)
 USE_FROM_STD (map)
 USE_FROM_STD (vector)
 USE_FROM_STD (cout)
 USE_FROM_STD (cin)
 USE_FROM_STD (cerr)
 USE_FROM_STD (endl)
 USE_FROM_STD (bitset)
 BEGIN_PKG (csm)
 END_PKG (csm)
csm::vec3_toperator+= (csm::vec3_t &v1, csm::vec3_t &v2)
csm::vec3_toperator-= (csm::vec3_t &v1, csm::vec3_t &v2)
csm::vec3_toperator *= (csm::vec3_t &v1, csm::vec3_t &v2)
csm::vec3_toperator *= (csm::vec3_t &v, float x)
bool operator== (csm::vec3_t &v1, csm::vec3_t &v2)
bool operator!= (csm::vec3_t &v1, csm::vec3_t &v2)
ostream & operator<< (ostream &os, csm::vec3_t &v)


Define Documentation

#define USE_PKG  )     using namespace x
 

USE_PKG() macro - a macro for using a namespace.

Parameters:
x - name of the namespace

Definition at line 62 of file libcsm.h.

#define USE_FROM_PKG x,
 )     using x::y
 

USE_FROM_PKG() method - a macro for the using directive.

Parameters:
x - namespace
y - class/constant

Definition at line 69 of file libcsm.h.

#define USE_FROM_STD  )     USE_FROM_PKG(std,x)
 

USE_FROM_STD() method - macro for using a class from the std namesapce.

Parameters:
x - class/constant name to be used form std

Definition at line 75 of file libcsm.h.

#define BEGIN_PKG  )     namespace x{
 

BEGIN_PKG() method - begin the package/namespace declaration.

Parameters:
x - name of the namespace/package

Definition at line 81 of file libcsm.h.

#define END_PKG  )     }
 

END_PKG() method - terminate the namespace declaration.

Parameters:
x - name of the namespace, is redundant. but good practice to include

Definition at line 87 of file libcsm.h.


Typedef Documentation

typedef unsigned char ubyte
 

Definition at line 44 of file libcsm.h.

typedef short int16
 

Definition at line 45 of file libcsm.h.

typedef unsigned short uint16
 

Definition at line 46 of file libcsm.h.

typedef uint16 ushort
 

Definition at line 47 of file libcsm.h.

typedef long int32
 

Definition at line 48 of file libcsm.h.

typedef unsigned int uint32
 

Definition at line 49 of file libcsm.h.

typedef uint32 ulong
 

Definition at line 50 of file libcsm.h.

typedef struct vec3_t vec3_t
 

struct vec3_t: the vec3_t class represents a vector with 3 float values

Author:
- Saurav Mohapatra - standard_template@yahoo.com

typedef struct vec4_t vec4_t
 

struct vec4_t: the vec4_t class represents a four diemnsional vector with all float values or a quaternion

Author:
- Saurav Mohapatra - standard_template@yahoo.com

typedef vec4_t color_t
 

a color vector

Definition at line 138 of file libcsm.h.

typedef vec4_t quat_t
 

a quaternion

Definition at line 142 of file libcsm.h.

typedef struct vec2_t vec2_t
 

struct vec2_t: the vec2_t class represents a 2 Dimensional Vector.

Used for texture coordinates

Author:
- Saurav Mohapatra - standard_template@yahoo.com

typedef struct TypeWrapper< ubyte > WrapperByte
 

Definition at line 221 of file libcsm.h.

typedef struct TypeWrapper< int16 > WrapperShort
 

Definition at line 222 of file libcsm.h.

typedef struct TypeWrapper< uint16 > WrapperUShort
 

Definition at line 223 of file libcsm.h.

typedef struct TypeWrapper< int32 > WrapperLong
 

Definition at line 224 of file libcsm.h.

typedef struct TypeWrapper< uint32 > WrapperULong
 

Definition at line 225 of file libcsm.h.

typedef struct TypeWrapper< float > WrapperFloat
 

Definition at line 226 of file libcsm.h.

typedef struct TypeWrapper< double > WrapperDouble
 

Definition at line 227 of file libcsm.h.

typedef struct brush_vertex_t brush_vertex_t
 

struct brush_vertex_t: the brush_vertex_t class represents a brush vertex in a CSM File

Author:
- Saurav Mohapatra - standard_template@yahoo.com

typedef vector<brush_vertex_t> BrushVertexList
 

A List of brush vertices.

Definition at line 298 of file libcsm.h.

typedef struct mesh_vertex_t mesh_vertex_t
 

struct mesh_vertex_t: the mesh_vertex_t class represents amesh vertex in a CSM File

Author:
- Saurav Mohapatra - standard_template@yahoo.com

typedef vector<mesh_vertex_t> MeshVertexList
 

A List of Mesh Vertices.

Definition at line 315 of file libcsm.h.

typedef struct triangle_t triangle_t
 

struct triangle_t: the triangle_t class represents a triangle in a mesh

Author:
- Saurav Mohapatra - standard_template@yahoo.com

typedef vector<triangle_t> TriangleList
 

A List of triangles.

Definition at line 328 of file libcsm.h.

typedef struct chunk_header_t chunk_header_t
 

struct chunk_header_t: the chunk_header_t class represents a header for a chunk

Author:
- Saurav Mohapatra - standard_template@yahoo.com

typedef vector<BrushFace*> FaceList
 

A List of Brush Face Pointers.

Definition at line 383 of file libcsm.h.

typedef vector<Chunk *> ChunkList
 

A List of Chunk Pointers.

Definition at line 442 of file libcsm.h.


Function Documentation

USE_FROM_STD istream   ) 
 

USE_FROM_STD ostream   ) 
 

USE_FROM_STD ifstream   ) 
 

USE_FROM_STD ofstream   ) 
 

USE_FROM_STD string   ) 
 

USE_FROM_STD list   ) 
 

USE_FROM_STD map   ) 
 

USE_FROM_STD vector   ) 
 

USE_FROM_STD cout   ) 
 

USE_FROM_STD cin   ) 
 

USE_FROM_STD cerr   ) 
 

USE_FROM_STD endl   ) 
 

USE_FROM_STD bitset   ) 
 

BEGIN_PKG csm   ) 
 

END_PKG csm   ) 
 

csm::vec3_t& operator+= csm::vec3_t v1,
csm::vec3_t v2
[inline]
 

Definition at line 696 of file libcsm.h.

csm::vec3_t& operator-= csm::vec3_t v1,
csm::vec3_t v2
[inline]
 

Definition at line 700 of file libcsm.h.

csm::vec3_t& operator *= csm::vec3_t v1,
csm::vec3_t v2
[inline]
 

Definition at line 705 of file libcsm.h.

csm::vec3_t& operator *= csm::vec3_t v,
float  x
[inline]
 

Definition at line 709 of file libcsm.h.

bool operator== csm::vec3_t v1,
csm::vec3_t v2
[inline]
 

Definition at line 714 of file libcsm.h.

bool operator!= csm::vec3_t v1,
csm::vec3_t v2
[inline]
 

Definition at line 718 of file libcsm.h.

ostream& operator<< ostream &  os,
csm::vec3_t v
[inline]
 

Definition at line 722 of file libcsm.h.


Generated on Tue Nov 18 14:28:28 2003 for LibCSM by doxygen 1.3.1