Visualization Library

A lightweight C++ OpenGL middleware for 2D/3D graphics
[Home] [Tutorials] [All Classes] [Grouped Classes]
Public Member Functions | Protected Attributes

vl::DrawCall Class Reference

The base class of DrawElements, MultiDrawElements, DrawRangeElements, DrawArrays which are used by Geometry to define a set of primitives to be rendered, see Geometry::drawCalls(). More...

#include <DrawCall.hpp>

Inheritance diagram for vl::DrawCall:
vl::Object vl::DrawArrays vl::DrawElementsBase vl::DrawRangeElementsBase vl::MultiDrawElementsBase vl::DrawElements< GL_UNSIGNED_BYTE, ArrayUByte > vl::DrawElements< GL_UNSIGNED_INT, ArrayUInt > vl::DrawElements< GL_UNSIGNED_SHORT, ArrayUShort > vl::DrawElements< Tgltype, arr_type > vl::DrawRangeElements< GLubyte, GL_UNSIGNED_BYTE, ArrayUByte > vl::DrawRangeElements< GLuint, GL_UNSIGNED_INT, ArrayUInt > vl::DrawRangeElements< GLushort, GL_UNSIGNED_SHORT, ArrayUShort > vl::DrawRangeElements< index_type, Tgltype, arr_type > vl::MultiDrawElements< GL_UNSIGNED_BYTE, ArrayUByte > vl::MultiDrawElements< GL_UNSIGNED_INT, ArrayUInt > vl::MultiDrawElements< GL_UNSIGNED_SHORT, ArrayUShort > vl::MultiDrawElements< Tgltype, arr_type >

List of all members.

Public Member Functions

virtual const char * className ()
 Returns the name of the class.
 DrawCall ()
DrawCalloperator= (const DrawCall &other)
void setPrimitiveType (EPrimitiveType type)
EPrimitiveType primitiveType () const
virtual void render (bool use_vbo=true) const =0
virtual ref< DrawCallclone () const =0
virtual void deleteVBOs ()=0
virtual void updateVBOs (bool discard_local_data=false)=0
virtual unsigned int handle () const =0
void setEnabled (bool enable)
bool isEnabled () const
virtual TriangleIterator triangleIterator () const =0
 Returns a TriangleIterator used to iterate through the triangles of a DrawCall.
virtual IndexIterator indexIterator () const =0
 Returns a IndexIterator used to iterate through the virtual indices of a DrawCall.
int countIndices () const
 Counts the number of virtual indices of a DrawCall.
virtual int instances () const
 Returns the number of instances for this set of primitives.

Protected Attributes

EPrimitiveType mType
bool mEnabled

Detailed Description

The base class of DrawElements, MultiDrawElements, DrawRangeElements, DrawArrays which are used by Geometry to define a set of primitives to be rendered, see Geometry::drawCalls().

See also:
DrawElements, MultiDrawElements, DrawRangeElements, DrawArrays, Geometry, Actor

Constructor & Destructor Documentation

vl::DrawCall::DrawCall (  ) [inline]

Member Function Documentation

virtual const char* vl::DrawCall::className (  ) [inline, virtual]
DrawCall& vl::DrawCall::operator= ( const DrawCall other ) [inline]
void vl::DrawCall::setPrimitiveType ( EPrimitiveType  type ) [inline]
EPrimitiveType vl::DrawCall::primitiveType (  ) const [inline]
virtual void vl::DrawCall::render ( bool  use_vbo = true ) const [pure virtual]
virtual ref<DrawCall> vl::DrawCall::clone (  ) const [pure virtual]
virtual void vl::DrawCall::deleteVBOs (  ) [pure virtual]
virtual void vl::DrawCall::updateVBOs ( bool  discard_local_data = false ) [pure virtual]
virtual unsigned int vl::DrawCall::handle (  ) const [pure virtual]
void vl::DrawCall::setEnabled ( bool  enable ) [inline]
bool vl::DrawCall::isEnabled (  ) const [inline]
virtual TriangleIterator vl::DrawCall::triangleIterator (  ) const [pure virtual]
virtual IndexIterator vl::DrawCall::indexIterator (  ) const [pure virtual]
int vl::DrawCall::countIndices (  ) const [inline]

Counts the number of virtual indices of a DrawCall.

virtual int vl::DrawCall::instances (  ) const [inline, virtual]

Returns the number of instances for this set of primitives.

Reimplemented in vl::DrawArrays, and vl::DrawElementsBase.


Member Data Documentation

bool vl::DrawCall::mEnabled [protected]

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

Visualization Library v2010.11.1123 Reference Documentation
Copyright 2005-2009 Michele Bosi. All rights reserved.
Updated on Thu Nov 18 2010 02:07:59.
Permission is granted to use this page to write and publish articles regarding Visualization Library.