Visualization Library 2.0.0-b3

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

VL     Star     Watch     Fork     Issue

[Download] [Tutorials] [All Classes] [Grouped Classes]
Public Member Functions | Protected Attributes | List of all members
vl::IndexIteratorElements< TArray > Class Template Reference

Index iterator operating over DrawElements, DrawRangeElements and MultiDrawElements. More...

#include <IndexIterator.hpp>

+ Inheritance diagram for vl::IndexIteratorElements< TArray >:

Public Member Functions

 IndexIteratorElements ()
 
void initialize (const TArray *idx_array, const std::vector< GLint > *p_base_vertices, const std::vector< GLsizei > *p_vert_counts, int base_vert, bool prim_restart_on, unsigned int prim_restart_idx)
 
virtual bool hasNext () const
 
virtual bool next ()
 
- Public Member Functions inherited from vl::IndexIteratorAbstract
 IndexIteratorAbstract ()
 
int index () const
 
- Public Member Functions inherited from vl::Object
 Object ()
 Constructor. More...
 
 Object (const Object &other)
 Copy constructor: copies the name, ref count mutex and user data. More...
 
Objectoperator= (const Object &other)
 Copy operator: copies the object's name, ref count mutex and user data. More...
 
const std::string & objectName () const
 The name of the object, by default set to the object's class name. More...
 
void setObjectName (const char *name)
 The name of the object, by default set to the object's class name in debug builds. More...
 
void setObjectName (const std::string &name)
 The name of the object, by default set to the object's class name in debug builds. More...
 
void setRefCountMutex (IMutex *mutex)
 The mutex used to protect the reference counting of an Object across multiple threads. More...
 
IMutexrefCountMutex ()
 The mutex used to protect the reference counting of an Object across multiple threads. More...
 
const IMutexrefCountMutex () const
 The mutex used to protect the reference counting of an Object across multiple threads. More...
 
int referenceCount () const
 Returns the number of references of an object. More...
 
void incReference () const
 Increments the reference count of an object. More...
 
void decReference ()
 Decrements the reference count of an object and deletes it if both automaticDelete() is true the count reaches 0. More...
 
void setAutomaticDelete (bool autodel_on)
 If set to true the Object is deleted when its reference count reaches 0. More...
 
bool automaticDelete () const
 If set to true the Object is deleted when its reference count reaches 0. More...
 
template<class T >
T * as ()
 Casts an Object to the specified class. More...
 
template<class T >
const T * as () const
 Casts an Object to the specified class. More...
 

Protected Attributes

const TArray * mArray
 
int mBaseVert
 
int mCurPos
 
bool mPrimRestartEnabled
 
unsigned int mPrimRestartIdx
 
const std::vector< GLint > * mpBaseVertices
 
const std::vector< GLsizei > * mpVertCounts
 
int mBaseCount
 
int mBaseIdx
 
- Protected Attributes inherited from vl::IndexIteratorAbstract
int mIndex
 
- Protected Attributes inherited from vl::Object
std::string mObjectName
 
IMutexmRefCountMutex
 
int mReferenceCount
 
bool mAutomaticDelete
 

Additional Inherited Members

- Protected Member Functions inherited from vl::Object
virtual ~Object ()
 

Detailed Description

template<class TArray>
class vl::IndexIteratorElements< TArray >

Index iterator operating over DrawElements, DrawRangeElements and MultiDrawElements.

Definition at line 126 of file IndexIterator.hpp.

Constructor & Destructor Documentation

◆ IndexIteratorElements()

template<class TArray >
vl::IndexIteratorElements< TArray >::IndexIteratorElements ( )
inline

Definition at line 131 of file IndexIterator.hpp.

References NULL.

Member Function Documentation

◆ hasNext()

template<class TArray >
virtual bool vl::IndexIteratorElements< TArray >::hasNext ( ) const
inlinevirtual

Implements vl::IndexIteratorAbstract.

Definition at line 166 of file IndexIterator.hpp.

◆ initialize()

template<class TArray >
void vl::IndexIteratorElements< TArray >::initialize ( const TArray *  idx_array,
const std::vector< GLint > *  p_base_vertices,
const std::vector< GLsizei > *  p_vert_counts,
int  base_vert,
bool  prim_restart_on,
unsigned int  prim_restart_idx 
)
inline

Definition at line 137 of file IndexIterator.hpp.

References vl::IndexIteratorAbstract::mIndex, and VL_CHECK.

◆ next()

template<class TArray >
virtual bool vl::IndexIteratorElements< TArray >::next ( )
inlinevirtual

Implements vl::IndexIteratorAbstract.

Definition at line 171 of file IndexIterator.hpp.

References vl::IndexIteratorAbstract::mIndex, and VL_CHECK.

Member Data Documentation

◆ mArray

template<class TArray >
const TArray* vl::IndexIteratorElements< TArray >::mArray
protected

Definition at line 202 of file IndexIterator.hpp.

◆ mBaseCount

template<class TArray >
int vl::IndexIteratorElements< TArray >::mBaseCount
protected

Definition at line 209 of file IndexIterator.hpp.

◆ mBaseIdx

template<class TArray >
int vl::IndexIteratorElements< TArray >::mBaseIdx
protected

Definition at line 210 of file IndexIterator.hpp.

◆ mBaseVert

template<class TArray >
int vl::IndexIteratorElements< TArray >::mBaseVert
protected

Definition at line 203 of file IndexIterator.hpp.

◆ mCurPos

template<class TArray >
int vl::IndexIteratorElements< TArray >::mCurPos
protected

Definition at line 204 of file IndexIterator.hpp.

◆ mpBaseVertices

template<class TArray >
const std::vector<GLint>* vl::IndexIteratorElements< TArray >::mpBaseVertices
protected

Definition at line 207 of file IndexIterator.hpp.

◆ mPrimRestartEnabled

template<class TArray >
bool vl::IndexIteratorElements< TArray >::mPrimRestartEnabled
protected

Definition at line 205 of file IndexIterator.hpp.

◆ mPrimRestartIdx

template<class TArray >
unsigned int vl::IndexIteratorElements< TArray >::mPrimRestartIdx
protected

Definition at line 206 of file IndexIterator.hpp.

◆ mpVertCounts

template<class TArray >
const std::vector<GLsizei>* vl::IndexIteratorElements< TArray >::mpVertCounts
protected

Definition at line 208 of file IndexIterator.hpp.


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