# Visualization Library

A lightweight C++ OpenGL middleware for 2D/3D graphics

[Home] [Tutorials] [All Classes] [Grouped Classes]

Public Member Functions | Protected Attributes

# vl::VertexAttribInfo Class Reference

Implements a generic OpenGL Shading Language vertex attribute to be used with a Geometry, see also http://www.opengl.org/sdk/docs/man/xhtml/glVertexAttribPointer.xml. More...

`#include <VertexAttribInfo.hpp>`

Inheritance diagram for vl::VertexAttribInfo:

List of all members.

## Public Member Functions

| VertexAttribInfo (unsigned int location, ArrayAbstract *data, bool normalize=true, EVertexAttribInterpretation data_behav=VAI_NORMAL)
| VertexAttribInfo ()
void | setData (ArrayAbstract *data)
| The GPU buffer that stores the data.
const ArrayAbstract * | data () const
| The GPU buffer that stores the data.
ArrayAbstract * | data ()
| The GPU buffer that stores the data.
void | setAttribLocation (unsigned int index)
| The 'index' parameter of the vertex attribute as used with glVertexAttribPointer() and glEnableVertexAttribArray().
unsigned int | attribLocation () const
| The 'index' parameter of the vertex attribute as used with glVertexAttribPointer() and glEnableVertexAttribArray().
void | setNormalize (bool normalize)
| The 'normalized' parameter as used with glVertexAttribPointer()
bool | normalize () const
| The 'normalized' parameter as used with glVertexAttribPointer()
void | setInterpretation (EVertexAttribInterpretation behavior)
| How the data is interpreted by the OpenGL, see EVertexAttribInterpretation.
EVertexAttribInterpretation | interpretation () const
| How the data is interpreted by the OpenGL, see EVertexAttribInterpretation.

## Protected Attributes

ref< ArrayAbstract > | mData
unsigned int | mAttribLocation
EVertexAttribInterpretation | mInterpretation
bool | mNormalize

## Detailed Description

Implements a generic OpenGL Shading Language vertex attribute to be used with a Geometry, see also http://www.opengl.org/sdk/docs/man/xhtml/glVertexAttribPointer.xml.

Definition at line 47 of file VertexAttribInfo.hpp.

## Constructor & Destructor Documentation

vl::VertexAttribInfo::VertexAttribInfo | ( | unsigned int | location,
|  | ArrayAbstract * | data,
|  | bool | normalize = `true`,
|  | EVertexAttribInterpretation | data_behav = `VAI_NORMAL`
| ) |  | `[inline]`

Definition at line 52 of file VertexAttribInfo.hpp.

vl::VertexAttribInfo::VertexAttribInfo | ( | ) | `[inline]`

Definition at line 54 of file VertexAttribInfo.hpp.

## Member Function Documentation

void vl::VertexAttribInfo::setData | ( | ArrayAbstract * | data ) | `[inline]`

The GPU buffer that stores the data.

Definition at line 57 of file VertexAttribInfo.hpp.

References data(), and mData.

Referenced by vl::Geometry::regenerateVertices().

const ArrayAbstract* vl::VertexAttribInfo::data | ( | ) | const`[inline]`

The GPU buffer that stores the data.

Definition at line 60 of file VertexAttribInfo.hpp.

References vl::ref< T >::get(), and mData.

Referenced by vl::OpenGLContext::bindVAS(), vl::Geometry::colorizePrimitives(), vl::Geometry::computeBounds_Implementation(), vl::Geometry::computeNormals(), vl::Geometry::convertDrawCallToDrawArrays(), vl::Geometry::deleteBufferObject(), vl::VLXClassWrapper_VertexAttribInfo::exportVertexAttribInfo(), vl::EdgeExtractor::extractEdges(), vl::Geometry::fixTriangleWinding(), vl::Geometry::flipNormals(), vl::RayIntersector::intersectGeometry(), vl::Geometry::mergeDrawCallsWithMultiDrawElements(), vl::Geometry::mergeDrawCallsWithPrimitiveRestart(), vl::Geometry::mergeDrawCallsWithTriangles(), vl::Geometry::mergeTriangleStrips(), vl::DepthSortCallback::onActorRenderStarted(), vl::DoubleVertexRemover::removeDoubles(), setData(), vl::Geometry::shrinkDrawCalls(), vl::Geometry::sortVertices(), vl::Geometry::transform(), and vl::Geometry::updateDirtyBufferObject().

ArrayAbstract* vl::VertexAttribInfo::data | ( | ) | `[inline]`

The GPU buffer that stores the data.

Definition at line 63 of file VertexAttribInfo.hpp.

References vl::ref< T >::get(), and mData.

void vl::VertexAttribInfo::setAttribLocation | ( | unsigned int | index ) | `[inline]`

The 'index' parameter of the vertex attribute as used with glVertexAttribPointer() and glEnableVertexAttribArray().

See also:
  - http://www.opengl.org/sdk/docs/man/xhtml/glVertexAttribPointer.xml
  - http://www.opengl.org/sdk/docs/man/xhtml/glEnableVertexAttribArray.xml

Definition at line 69 of file VertexAttribInfo.hpp.

References mAttribLocation.

Referenced by vl::VLXClassWrapper_Geometry::importGeometry().

unsigned int vl::VertexAttribInfo::attribLocation | ( | ) | const`[inline]`

The 'index' parameter of the vertex attribute as used with glVertexAttribPointer() and glEnableVertexAttribArray().

See also:
  - http://www.opengl.org/sdk/docs/man/xhtml/glVertexAttribPointer.xml
  - http://www.opengl.org/sdk/docs/man/xhtml/glEnableVertexAttribArray.xml

Definition at line 75 of file VertexAttribInfo.hpp.

References mAttribLocation.

Referenced by vl::OpenGLContext::bindVAS(), vl::Geometry::setVertexAttribArray(), and vl::Geometry::vertexAttribArray().

void vl::VertexAttribInfo::setNormalize | ( | bool | normalize ) | `[inline]`

The 'normalized' parameter as used with glVertexAttribPointer()

See also:
  - http://www.opengl.org/sdk/docs/man/xhtml/glVertexAttribPointer.xml

Definition at line 80 of file VertexAttribInfo.hpp.

References mNormalize, and normalize().

bool vl::VertexAttribInfo::normalize | ( | ) | const`[inline]`

The 'normalized' parameter as used with glVertexAttribPointer()

See also:
  - http://www.opengl.org/sdk/docs/man/xhtml/glVertexAttribPointer.xml

Definition at line 85 of file VertexAttribInfo.hpp.

References mNormalize.

Referenced by vl::OpenGLContext::bindVAS(), vl::VLXClassWrapper_VertexAttribInfo::exportVertexAttribInfo(), and setNormalize().

void vl::VertexAttribInfo::setInterpretation | ( | EVertexAttribInterpretation | behavior ) | `[inline]`

How the data is interpreted by the OpenGL, see EVertexAttribInterpretation.

Definition at line 88 of file VertexAttribInfo.hpp.

References mInterpretation.

EVertexAttribInterpretation vl::VertexAttribInfo::interpretation | ( | ) | const`[inline]`

How the data is interpreted by the OpenGL, see EVertexAttribInterpretation.

Definition at line 91 of file VertexAttribInfo.hpp.

References mInterpretation.

Referenced by vl::OpenGLContext::bindVAS(), and vl::VLXClassWrapper_VertexAttribInfo::exportVertexAttribInfo().

## Member Data Documentation

ref<ArrayAbstract> vl::VertexAttribInfo::mData`[protected]`

Definition at line 94 of file VertexAttribInfo.hpp.

Referenced by data(), and setData().

unsigned int vl::VertexAttribInfo::mAttribLocation`[protected]`

Definition at line 95 of file VertexAttribInfo.hpp.

Referenced by attribLocation(), and setAttribLocation().

EVertexAttribInterpretation vl::VertexAttribInfo::mInterpretation`[protected]`

Definition at line 96 of file VertexAttribInfo.hpp.

Referenced by interpretation(), and setInterpretation().

bool vl::VertexAttribInfo::mNormalize`[protected]`

Definition at line 97 of file VertexAttribInfo.hpp.

Referenced by normalize(), and setNormalize().

The documentation for this class was generated from the following file:

- D:/VL/BuildSystem/VL_DISTRO/Visualization_Library_SDK/src/vlGraphics/VertexAttribInfo.hpp

Visualization Library v2011.09.1162 Reference Documentation
Copyright 2005-2011 Michele Bosi. All rights reserved.
Updated on Thu Jan 26 2012 00:44:56.
Permission is granted to use this page to write and publish articles regarding Visualization Library.