Unofficial OpenGL Software Development Kit: glmesh Namespace Reference

Unofficial OpenGL Software Development Kit 0.5.0

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes | Typedefs | Enumerations | Functions | Variables
glmesh Namespace Reference

The main namespace for the GL Mesh library. All GL Mesh functions are in this namespace. More...

## Classes

class | CpuDataException
| Base class for all CpuDataWriter specific exceptions. More...
class | IncompleteVertexException
| Thrown when attempting to get vertices from a CpuDataWriter when a vertex is incomplete. More...
class | CpuDataWriter
| Allows immediate mode drawing to a CPU buffer, rather than a buffer object. More...
class | DrawException
| Base class for all Draw specific exceptions. More...
class | TooFewVerticesSentException
| Thrown when drawing with Draw and you did not provide as many vertices as promised. More...
class | TooManyVerticesSentException
| Thrown when calling Attrib and you are writing more vertices than you promised. More...
class | PrimitiveTypeUnsupportedException
| Thrown when creating a Draw with a primitive type that the current OpenGL implementation does not support. More...
class | VertexCountPrimMismatchException
| Thrown when the primitive type and vertex count cannot be used together. More...
class | Draw
| RAII-style class for immediate-mode type rendering through a VertexFormat and StreamBuffer. More...
class | RenderCmdList
| A list of rendering commands to be used by a Mesh. More...
class | Mesh
| An object that represents a static collection of mesh data. More...
class | StreamBufferException
| Base class for all exceptions thrown by StreamBuffer and StreamBuffer::Map. More...
class | StoreAlreadyMappedException
| Thrown when the StreamBuffer is mapped and you attempt to call a function that requires the StreamBuffer to not be mapped. More...
class | NotEnoughStorageForMapException
| Thrown when mapping a StreamBuffer and it does not have enough room for the requested map size. More...
class | NotEnoughRemainingStorageForMapException
| Thrown when mapping a StreamBuffer and the current offset + range would exceed the size of the StreamBuffer. More...
class | StreamBuffer
| A class for streaming vertex data to buffer objects on the GPU. More...
class | VertexFormatException
| Base class for all exceptions thrown by AttribDesc, VertexFormat and VertexFormat::Enable. More...
class | AttributeDataInvalidException
| Thrown if the values passed to AttribDesc's constructor are not allowed. More...
class | AttributeDataUnsupportedException
| Thrown if the values passed to AttribDesc's constructor do not meet the implementation-specific requirements. More...
class | AttributeIndexMultipleRefException
| Thrown if VertexFormat is given two AttribDesc objects that use the same attribute index. More...
class | AttribDesc
| Describes the storage for a single vertex attribute. More...
struct | SeparateAttribFormatTag
| Used in VertexFormat::Enable to differentiate constructors. More...
class | VertexFormat
| Describes the layout for a sequence of vertex attributes, to be used for rendering. More...
class | VertexWriterException
| Base class for all VertexWriter specific exceptions. More...
class | MismatchWriterTypeException
| Thrown when the type the VertexWriter::Attrib functions are used with does not match the type of the attribute as defined by the VertexFormat. More...
class | VertexWriter
| Base class, using CRTP, that provides a framework for writing vertex attributes to arbitrary locations. More...

## Typedefs

typedef std::map< std::string, GLuint > | MeshVariantMap
| A list of variations of named variations of a mesh. Each name maps to a VAO to render from.
typedef std::vector< AttribDesc > | AttributeList
| Convenience typedef for std::vector's of attributes.

## Enumerations

enum | VertexDataType { VDT_HALF_FLOAT, VDT_SINGLE_FLOAT, VDT_DOUBLE_FLOAT, VDT_SIGN_BYTE, VDT_UNSIGN_BYTE, VDT_SIGN_SHORT, VDT_UNSIGN_SHORT, VDT_SIGN_INT, VDT_UNSIGN_INT }
| The C data type that you will be providing the vertex attribute data in. More...
enum | AttribDataType { ADT_FLOAT, ADT_NORM_FLOAT, ADT_INTEGER, ADT_DOUBLE }
| The expected interpretation of the attribute data by GLSL. More...

## Functions

template<typename Sink , typename VertexSequence >
void | Attrib (VertexWriter< Sink > &drawable, const VertexSequence &vertexData)
| A Boost.Fusion-based function for drawing attribute structs. More...

## Variables

const SeparateAttribFormatTag | sepFormat
| Use this in VertexFormat::Enable to use the separate attribute format constructor.

## Detailed Description

The main namespace for the GL Mesh library. All GL Mesh functions are in this namespace.