Unofficial OpenGL Software Development Kit  0.5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes | Namespaces | Typedefs | Enumerations | Variables
VertexFormat.h File Reference

Declares the VertexFormat class and its helper types. Include an OpenGL header before including this one. More...

#include <vector>
#include <string>
#include <exception>
#include <boost/noncopyable.hpp>

Go to the source code of this file.

Classes

class  glmesh::VertexFormatException
 Base class for all exceptions thrown by AttribDesc, VertexFormat and VertexFormat::Enable. More...
 
class  glmesh::AttributeDataInvalidException
 Thrown if the values passed to AttribDesc's constructor are not allowed. More...
 
class  glmesh::AttributeDataUnsupportedException
 Thrown if the values passed to AttribDesc's constructor do not meet the implementation-specific requirements. More...
 
class  glmesh::AttributeIndexMultipleRefException
 Thrown if VertexFormat is given two AttribDesc objects that use the same attribute index. More...
 
class  glmesh::AttribDesc
 Describes the storage for a single vertex attribute. More...
 
struct  glmesh::SeparateAttribFormatTag
 Used in VertexFormat::Enable to differentiate constructors. More...
 
class  glmesh::VertexFormat
 Describes the layout for a sequence of vertex attributes, to be used for rendering. More...
 
class  glmesh::VertexFormat::Enable
 RAII-style class for binding a VertexFormat to the OpenGL context. More...
 

Namespaces

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

Typedefs

typedef std::vector< AttribDesc > glmesh::AttributeList
 Convenience typedef for std::vector's of attributes.
 

Enumerations

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

Variables

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

Detailed Description

Declares the VertexFormat class and its helper types. Include an OpenGL header before including this one.