Visualization LibraryA lightweight C++ OpenGL middleware for 2D/3D graphics |
[Home] [Tutorials] [All Classes] [Grouped Classes] |
Base interface for all DrawRangeElements* sub classes. More...
#include <DrawRangeElements.hpp>
Public Member Functions | |
void | setRangeStart (int rstart) |
Sets the range start. | |
int | rangeStart () const |
Returns the range start. | |
void | setRangeEnd (int rend) |
Sets the range end. | |
int | rangeEnd () const |
Returns the range end. | |
virtual bool | primitiveRestartEnabled () const |
Returns whether the primitive-restart functionality is enabled or not. | |
void | setPrimitiveRestartEnabled (bool enabled) |
Enables the primitive-restart functionality. | |
void | setBaseVertex (int base_vertex) |
If base_vertx is != 0 glDrawRangeElementsBaseVertex/glDrawRangeElementsInstancedBaseVertex will be used instead of their non *BaseVertx counterparts. | |
int | baseVertex () const |
Returns the currently used base vertex. | |
Protected Attributes | |
int | mRangeStart |
int | mRangeEnd |
GLuint | mBaseVertex |
bool | mPrimitiveRestartEnabled |
Base interface for all DrawRangeElements* sub classes.
Implements the index-type-independent interface of the class. That is you can cast to DrawRangeElementsBase* and access its members without needing to know whether the actual class is a vl::DrawRangeElementsUInt, vl::DrawRangeElementsUShort or vl::DrawRangeElementsUByte.
Definition at line 54 of file DrawRangeElements.hpp.
void vl::DrawRangeElementsBase::setRangeStart | ( | int | rstart | ) | [inline] |
Sets the range start.
See also http://www.opengl.org/sdk/docs/man3/xhtml/glDrawRangeElements.xml
Definition at line 60 of file DrawRangeElements.hpp.
References mRangeStart.
int vl::DrawRangeElementsBase::rangeStart | ( | ) | const [inline] |
Returns the range start.
See also http://www.opengl.org/sdk/docs/man3/xhtml/glDrawRangeElements.xml
Definition at line 63 of file DrawRangeElements.hpp.
References mRangeStart.
Referenced by vl::Geometry::shrinkDrawCalls().
void vl::DrawRangeElementsBase::setRangeEnd | ( | int | rend | ) | [inline] |
Sets the range end.
See also http://www.opengl.org/sdk/docs/man3/xhtml/glDrawRangeElements.xml
Definition at line 66 of file DrawRangeElements.hpp.
References mRangeEnd.
int vl::DrawRangeElementsBase::rangeEnd | ( | ) | const [inline] |
Returns the range end.
See also http://www.opengl.org/sdk/docs/man3/xhtml/glDrawRangeElements.xml
Definition at line 69 of file DrawRangeElements.hpp.
References mRangeEnd.
Referenced by vl::Geometry::shrinkDrawCalls().
virtual bool vl::DrawRangeElementsBase::primitiveRestartEnabled | ( | ) | const [inline, virtual] |
Returns whether the primitive-restart functionality is enabled or not.
See http://www.opengl.org/registry/specs/NV/primitive_restart.txt
Reimplemented from vl::DrawCall.
Definition at line 72 of file DrawRangeElements.hpp.
References mPrimitiveRestartEnabled.
Referenced by vl::DrawRangeElements< ArrayUShort1 >::lineIterator(), vl::DrawRangeElements< ArrayUShort1 >::render(), and vl::DrawRangeElements< ArrayUShort1 >::triangleIterator().
void vl::DrawRangeElementsBase::setPrimitiveRestartEnabled | ( | bool | enabled | ) | [inline] |
Enables the primitive-restart functionality.
See http://www.opengl.org/registry/specs/NV/primitive_restart.txt
Definition at line 75 of file DrawRangeElements.hpp.
References mPrimitiveRestartEnabled.
void vl::DrawRangeElementsBase::setBaseVertex | ( | int | base_vertex | ) | [inline] |
If base_vertx is != 0 glDrawRangeElementsBaseVertex/glDrawRangeElementsInstancedBaseVertex will be used instead of their non *BaseVertx counterparts.
Note that using base_vertx != requires OpenGL 3.2 or higher or ARB_draw_elements_base_vertex. For more information see also http://www.opengl.org/sdk/docs/man3/xhtml/glDrawRangeElementsBaseVertex.xml
Definition at line 81 of file DrawRangeElements.hpp.
References mBaseVertex.
int vl::DrawRangeElementsBase::baseVertex | ( | ) | const [inline] |
Returns the currently used base vertex.
For more information see also http://www.opengl.org/sdk/docs/man3/xhtml/glDrawRangeElementsBaseVertex.xml
Definition at line 85 of file DrawRangeElements.hpp.
References mBaseVertex.
Referenced by vl::DrawRangeElements< ArrayUShort1 >::lineIterator(), vl::Geometry::shrinkDrawCalls(), and vl::DrawRangeElements< ArrayUShort1 >::triangleIterator().
int vl::DrawRangeElementsBase::mRangeStart [protected] |
Definition at line 88 of file DrawRangeElements.hpp.
Referenced by vl::DrawRangeElements< ArrayUShort1 >::computeRange(), vl::DrawRangeElements< ArrayUShort1 >::DrawRangeElements(), vl::DrawRangeElements< ArrayUShort1 >::operator=(), rangeStart(), vl::DrawRangeElements< ArrayUShort1 >::render(), and setRangeStart().
int vl::DrawRangeElementsBase::mRangeEnd [protected] |
Definition at line 89 of file DrawRangeElements.hpp.
Referenced by vl::DrawRangeElements< ArrayUShort1 >::computeRange(), vl::DrawRangeElements< ArrayUShort1 >::DrawRangeElements(), vl::DrawRangeElements< ArrayUShort1 >::operator=(), rangeEnd(), vl::DrawRangeElements< ArrayUShort1 >::render(), and setRangeEnd().
GLuint vl::DrawRangeElementsBase::mBaseVertex [protected] |
Definition at line 90 of file DrawRangeElements.hpp.
Referenced by baseVertex(), vl::DrawRangeElements< ArrayUShort1 >::DrawRangeElements(), vl::DrawRangeElements< ArrayUShort1 >::indexIterator(), vl::DrawRangeElements< ArrayUShort1 >::operator=(), vl::DrawRangeElements< ArrayUShort1 >::render(), and setBaseVertex().
bool vl::DrawRangeElementsBase::mPrimitiveRestartEnabled [protected] |