VTK
|
allocate/free texture units. More...
#include <vtkTextureUnitManager.h>
Public Types | |
typedef vtkObject | Superclass |
![]() | |
typedef vtkObjectBase | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
int | GetNumberOfTextureUnits () |
virtual int | Allocate () |
bool | IsAllocated (int textureUnitId) |
virtual void | Free (int textureUnitId) |
void | SetContext (vtkOpenGLRenderWindow *context) |
virtual vtkOpenGLRenderWindow * | GetContext () |
![]() | |
virtual void | DebugOn () |
virtual void | DebugOff () |
unsigned char | GetDebug () |
void | SetDebug (unsigned char debugFlag) |
virtual void | Modified () |
virtual unsigned long | GetMTime () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
vtkCommand * | GetCommand (unsigned long tag) |
void | RemoveObserver (vtkCommand *) |
void | RemoveObservers (unsigned long event, vtkCommand *) |
void | RemoveObservers (const char *event, vtkCommand *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
![]() | |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &os) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkTextureUnitManager * | SafeDownCast (vtkObject *o) |
static vtkTextureUnitManager * | New () |
![]() | |
static void | BreakOnError () |
static void | SetGlobalWarningDisplay (int val) |
static void | GlobalWarningDisplayOn () |
static void | GlobalWarningDisplayOff () |
static int | GetGlobalWarningDisplay () |
Protected Member Functions | |
vtkTextureUnitManager () | |
~vtkTextureUnitManager () | |
void | DeleteTable () |
![]() | |
vtkObject () | |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
![]() | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &os) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
vtkOpenGLRenderWindow * | Context |
int | NumberOfTextureUnits |
bool * | TextureUnits |
![]() | |
unsigned char | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
![]() | |
int | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
allocate/free texture units.
vtkTextureUnitManager is a central place used by shaders to reserve a texture unit ( Allocate() ) or release it ( Free() ).
Don't create a vtkTextureUnitManager, query it from the vtkOpenGLRenderWindow
Definition at line 36 of file vtkTextureUnitManager.h.
Definition at line 39 of file vtkTextureUnitManager.h.
|
protected |
Default constructor.
|
protected |
Destructor.
|
virtual |
Reimplemented from vtkObject.
|
static |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
|
virtual |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
|
static |
Reimplemented from vtkObject.
|
virtual |
|
static |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
void vtkTextureUnitManager::SetContext | ( | vtkOpenGLRenderWindow * | context | ) |
Get/Set the context. This does not increase the reference count of the context to avoid reference loops. SetContext() may raise an error is the OpenGL context does not support the required OpenGL extensions.
|
virtual |
Get/Set the context. This does not increase the reference count of the context to avoid reference loops. SetContext() may raise an error is the OpenGL context does not support the required OpenGL extensions.
int vtkTextureUnitManager::GetNumberOfTextureUnits | ( | ) |
Number of texture units supported by the OpenGL context.
|
virtual |
Reserve a texture unit. It returns its number. It returns -1 if the allocation failed (because there is no more texture unit left).
bool vtkTextureUnitManager::IsAllocated | ( | int | textureUnitId | ) |
Tell if texture unit `textureUnitId' is already allocated.
|
virtual |
Release a texture unit.
|
protected |
Delete the allocation table and check if it is not called before all the texture units have been released.
|
protected |
Definition at line 85 of file vtkTextureUnitManager.h.
|
protected |
Definition at line 87 of file vtkTextureUnitManager.h.
|
protected |
Definition at line 88 of file vtkTextureUnitManager.h.