VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkOpenGLUniforms Class Reference

helper class to set custom uniform variables in GLSL shaders. More...

#include <vtkOpenGLUniforms.h>

Inheritance diagram for vtkOpenGLUniforms:
[legend]
Collaboration diagram for vtkOpenGLUniforms:
[legend]

Public Types

typedef vtkUniforms Superclass
 
- Public Types inherited from vtkUniforms
enum  TupleType {
  TupleTypeInvalid = 0, TupleTypeScalar, TupleTypeVector, TupleTypeMatrix,
  NumberOfTupleTypes
}
 Types of tuples that can be stored : scalar, vector, matrix. More...
 
typedef vtkObject Superclass
 

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class. More...
 
vtkOpenGLUniformsNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
std::string GetDeclarations ()
 Build a string containing the GLSL declaration of all stored uniform variables. More...
 
bool SetUniforms (vtkShaderProgram *p)
 Set all the stored uniform variables values in the shader program p. More...
 
vtkMTimeType GetUniformListMTime () override
 Get modified time of the list of uniform variables, which is typically used to check whether the shader needs to be recompiled. More...
 
void RemoveUniform (const char *name) override
 Remove uniform variable named name. More...
 
void RemoveAllUniforms () override
 Remove all uniform variables. More...
 
void SetUniform (const char *name, vtkUniforms::TupleType tt, int nbComponents, const std::vector< int > &value) override
 Generic setters and getter. More...
 
void SetUniform (const char *name, vtkUniforms::TupleType tt, int nbComponents, const std::vector< float > &value) override
 
bool GetUniform (const char *name, std::vector< int > &value) override
 
bool GetUniform (const char *name, std::vector< float > &value) override
 
void SetUniformi (const char *name, int v) override
 Set the name uniform value to v. More...
 
void SetUniformf (const char *name, float v) override
 
void SetUniform2i (const char *name, const int v[2]) override
 
void SetUniform2f (const char *name, const float v[2]) override
 
void SetUniform3f (const char *name, const float v[3]) override
 
void SetUniform4f (const char *name, const float v[4]) override
 
void SetUniformMatrix3x3 (const char *name, float *v) override
 
void SetUniformMatrix4x4 (const char *name, float *v) override
 
void SetUniform1iv (const char *name, const int count, const int *f) override
 Set the name uniform array to f with count elements. More...
 
void SetUniform1fv (const char *name, const int count, const float *f) override
 
void SetUniform2fv (const char *name, const int count, const float(*f)[2]) override
 
void SetUniform3fv (const char *name, const int count, const float(*f)[3]) override
 
void SetUniform4fv (const char *name, const int count, const float(*f)[4]) override
 
void SetUniformMatrix4x4v (const char *name, const int count, float *v) override
 
void SetUniform3f (const char *name, const double v[3]) override
 Set the name uniform to v. More...
 
void SetUniform3uc (const char *name, const unsigned char v[3]) override
 
void SetUniform4uc (const char *name, const unsigned char v[4]) override
 
void SetUniformMatrix (const char *name, vtkMatrix3x3 *v) override
 
void SetUniformMatrix (const char *name, vtkMatrix4x4 *v) override
 
bool GetUniformi (const char *name, int &v) override
 Get the name uniform value. More...
 
bool GetUniformf (const char *name, float &v) override
 
bool GetUniform2i (const char *name, int v[2]) override
 
bool GetUniform2f (const char *name, float v[2]) override
 
bool GetUniform3f (const char *name, float v[3]) override
 
bool GetUniform4f (const char *name, float v[4]) override
 
bool GetUniformMatrix3x3 (const char *name, float *v) override
 
bool GetUniformMatrix4x4 (const char *name, float *v) override
 
bool GetUniform3f (const char *name, double v[3]) override
 Get the name uniform to v. More...
 
bool GetUniform3uc (const char *name, unsigned char v[3]) override
 
bool GetUniform4uc (const char *name, unsigned char v[4]) override
 
bool GetUniformMatrix (const char *name, vtkMatrix3x3 *v) override
 
bool GetUniformMatrix (const char *name, vtkMatrix4x4 *v) override
 
bool GetUniform1iv (const char *name, std::vector< int > &f) override
 Get the name uniform vector to f with. More...
 
bool GetUniform1fv (const char *name, std::vector< float > &f) override
 
bool GetUniform2fv (const char *name, std::vector< float > &f) override
 
bool GetUniform3fv (const char *name, std::vector< float > &f) override
 
bool GetUniform4fv (const char *name, std::vector< float > &f) override
 
bool GetUniformMatrix4x4v (const char *name, std::vector< float > &f) override
 
int GetNumberOfUniforms () override
 Get number of all uniforms stored in this class. More...
 
const char * GetNthUniformName (vtkIdType uniformIndex) override
 Get number of all uniforms stored in this class. More...
 
virtual int GetUniformScalarType (const char *name) override
 Get type of scalars stored in uniform name. More...
 
TupleType GetUniformTupleType (const char *name) override
 Get the tuple type stored in uniform name. More...
 
int GetUniformNumberOfComponents (const char *name) override
 Get the number of components stored in each tuple of uniform name. More...
 
int GetUniformNumberOfTuples (const char *name) override
 Get length of a uniform name that contains a variable-size vector. More...
 
- Public Member Functions inherited from vtkUniforms
vtkUniformsNewInstance () const
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 Turn debugging output on. More...
 
virtual void DebugOff ()
 Turn debugging output off. More...
 
bool GetDebug ()
 Get the value of the debug flag. More...
 
void SetDebug (bool debugFlag)
 Set the value of the debug flag. More...
 
virtual void Modified ()
 Update the modification time for this object. More...
 
virtual vtkMTimeType GetMTime ()
 Return this object's modified time. More...
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
 
vtkTypeBool HasObserver (const char *event, vtkCommand *)
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
vtkTypeBool HasObserver (unsigned long event)
 
vtkTypeBool HasObserver (const char *event)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Allow user to set the AbortFlagOn() with the return value of the callback method. More...
 
int InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string. More...
 
virtual void Delete ()
 Delete a VTK object. More...
 
virtual void FastDelete ()
 Delete a reference to this object. More...
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream. More...
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
virtual void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object). More...
 
virtual void UnRegister (vtkObjectBase *o)
 Decrease the reference count (release by another object). More...
 
int GetReferenceCount ()
 Return the current reference count of this object. More...
 
void SetReferenceCount (int)
 Sets the reference count. More...
 
void PrintRevisions (ostream &)
 Legacy. More...
 

Static Public Member Functions

static vtkOpenGLUniformsNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkOpenGLUniformsSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkUniforms
static vtkUniformsNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkUniformsSafeDownCast (vtkObjectBase *o)
 
static std::string TupleTypeToString (TupleType tt)
 Convert between TupleType and string. More...
 
static TupleType StringToTupleType (const std::string &s)
 
static std::string ScalarTypeToString (int scalaType)
 Convert between scalar types an string. More...
 
static int StringToScalarType (const std::string &s)
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 
static void BreakOnError ()
 This method is called when vtkErrorMacro executes. More...
 
static void SetGlobalWarningDisplay (int val)
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class. More...
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkOpenGLUniforms ()
 
 ~vtkOpenGLUniforms () override
 
- Protected Member Functions inherited from vtkUniforms
 vtkUniforms ()
 
 ~vtkUniforms () override
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
 ~vtkObject () override
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods allow a command to exclusively grab all events. More...
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Additional Inherited Members

- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

helper class to set custom uniform variables in GLSL shaders.

This class implements all SetUniform* functions supported by vtkShaderProgram but instead of directly calling the underlying OpenGL functions, it caches the name and value of the variable and provides a mechanism for client mappers to set all cached variables at once in a generic way.

The basic types of GLSL uniform variables supported by the class are the following: int, float, vec2i, vec3, vec4, mat3, mat4, int[], float[], vec2i[], vec3[], vec4[], mat4[]. All other types supported by Set* functions undergo the same type conversions implemented in vtkShaderProgram.

Thanks:
Developed by Simon Drouin (sdrou.nosp@m.in2@.nosp@m.bwh.h.nosp@m.arva.nosp@m.rd.ed.nosp@m.u) at Brigham and Women's Hospital.

Definition at line 41 of file vtkOpenGLUniforms.h.

Member Typedef Documentation

◆ Superclass

Definition at line 45 of file vtkOpenGLUniforms.h.

Constructor & Destructor Documentation

◆ vtkOpenGLUniforms()

vtkOpenGLUniforms::vtkOpenGLUniforms ( )
protected

◆ ~vtkOpenGLUniforms()

vtkOpenGLUniforms::~vtkOpenGLUniforms ( )
overrideprotected

Member Function Documentation

◆ New()

static vtkOpenGLUniforms* vtkOpenGLUniforms::New ( )
static

◆ IsTypeOf()

static vtkTypeBool vtkOpenGLUniforms::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual vtkTypeBool vtkOpenGLUniforms::IsA ( const char *  name)
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 vtkUniforms.

◆ SafeDownCast()

static vtkOpenGLUniforms* vtkOpenGLUniforms::SafeDownCast ( vtkObjectBase o)
static

◆ NewInstanceInternal()

virtual vtkObjectBase* vtkOpenGLUniforms::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkUniforms.

◆ NewInstance()

vtkOpenGLUniforms* vtkOpenGLUniforms::NewInstance ( ) const

◆ PrintSelf()

void vtkOpenGLUniforms::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

Methods invoked by print to print information about the object including superclasses.

Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkUniforms.

◆ GetDeclarations()

std::string vtkOpenGLUniforms::GetDeclarations ( )

Build a string containing the GLSL declaration of all stored uniform variables.

This is typically called by mappers to compose the complete shader program.

◆ SetUniforms()

bool vtkOpenGLUniforms::SetUniforms ( vtkShaderProgram p)

Set all the stored uniform variables values in the shader program p.

This is called when the shader is bound.

◆ GetUniformListMTime()

vtkMTimeType vtkOpenGLUniforms::GetUniformListMTime ( )
overridevirtual

Get modified time of the list of uniform variables, which is typically used to check whether the shader needs to be recompiled.

The time stamp is not affected by the modification of the value of an existing variable as then no shader recompilation is needed.

Implements vtkUniforms.

◆ RemoveUniform()

void vtkOpenGLUniforms::RemoveUniform ( const char *  name)
overridevirtual

Remove uniform variable named name.

Implements vtkUniforms.

◆ RemoveAllUniforms()

void vtkOpenGLUniforms::RemoveAllUniforms ( )
overridevirtual

Remove all uniform variables.

Implements vtkUniforms.

◆ SetUniform() [1/2]

void vtkOpenGLUniforms::SetUniform ( const char *  name,
vtkUniforms::TupleType  tt,
int  nbComponents,
const std::vector< int > &  value 
)
overridevirtual

Generic setters and getter.

Set and Get the value of uniform variable name, with TupleType tt, number of components nbComponents and values stored in value. These functions simplify io of uniforms

Implements vtkUniforms.

◆ SetUniform() [2/2]

void vtkOpenGLUniforms::SetUniform ( const char *  name,
vtkUniforms::TupleType  tt,
int  nbComponents,
const std::vector< float > &  value 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform() [1/2]

bool vtkOpenGLUniforms::GetUniform ( const char *  name,
std::vector< int > &  value 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform() [2/2]

bool vtkOpenGLUniforms::GetUniform ( const char *  name,
std::vector< float > &  value 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniformi()

void vtkOpenGLUniforms::SetUniformi ( const char *  name,
int  v 
)
overridevirtual

Set the name uniform value to v.

Implements vtkUniforms.

◆ SetUniformf()

void vtkOpenGLUniforms::SetUniformf ( const char *  name,
float  v 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform2i()

void vtkOpenGLUniforms::SetUniform2i ( const char *  name,
const int  v[2] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform2f()

void vtkOpenGLUniforms::SetUniform2f ( const char *  name,
const float  v[2] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform3f() [1/2]

void vtkOpenGLUniforms::SetUniform3f ( const char *  name,
const float  v[3] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform4f()

void vtkOpenGLUniforms::SetUniform4f ( const char *  name,
const float  v[4] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniformMatrix3x3()

void vtkOpenGLUniforms::SetUniformMatrix3x3 ( const char *  name,
float *  v 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniformMatrix4x4()

void vtkOpenGLUniforms::SetUniformMatrix4x4 ( const char *  name,
float *  v 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform1iv()

void vtkOpenGLUniforms::SetUniform1iv ( const char *  name,
const int  count,
const int *  f 
)
overridevirtual

Set the name uniform array to f with count elements.

Implements vtkUniforms.

◆ SetUniform1fv()

void vtkOpenGLUniforms::SetUniform1fv ( const char *  name,
const int  count,
const float *  f 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform2fv()

void vtkOpenGLUniforms::SetUniform2fv ( const char *  name,
const int  count,
const float(*)  f[2] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform3fv()

void vtkOpenGLUniforms::SetUniform3fv ( const char *  name,
const int  count,
const float(*)  f[3] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform4fv()

void vtkOpenGLUniforms::SetUniform4fv ( const char *  name,
const int  count,
const float(*)  f[4] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniformMatrix4x4v()

void vtkOpenGLUniforms::SetUniformMatrix4x4v ( const char *  name,
const int  count,
float *  v 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform3f() [2/2]

void vtkOpenGLUniforms::SetUniform3f ( const char *  name,
const double  v[3] 
)
overridevirtual

Set the name uniform to v.

The following are convenience functions and do not reflect the way the data is stored and sent to OpenGL. Data is converted to match one of the basic supported types

Implements vtkUniforms.

◆ SetUniform3uc()

void vtkOpenGLUniforms::SetUniform3uc ( const char *  name,
const unsigned char  v[3] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniform4uc()

void vtkOpenGLUniforms::SetUniform4uc ( const char *  name,
const unsigned char  v[4] 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniformMatrix() [1/2]

void vtkOpenGLUniforms::SetUniformMatrix ( const char *  name,
vtkMatrix3x3 v 
)
overridevirtual

Implements vtkUniforms.

◆ SetUniformMatrix() [2/2]

void vtkOpenGLUniforms::SetUniformMatrix ( const char *  name,
vtkMatrix4x4 v 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniformi()

bool vtkOpenGLUniforms::GetUniformi ( const char *  name,
int &  v 
)
overridevirtual

Get the name uniform value.

Returns true on success.

Implements vtkUniforms.

◆ GetUniformf()

bool vtkOpenGLUniforms::GetUniformf ( const char *  name,
float &  v 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform2i()

bool vtkOpenGLUniforms::GetUniform2i ( const char *  name,
int  v[2] 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform2f()

bool vtkOpenGLUniforms::GetUniform2f ( const char *  name,
float  v[2] 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform3f() [1/2]

bool vtkOpenGLUniforms::GetUniform3f ( const char *  name,
float  v[3] 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform4f()

bool vtkOpenGLUniforms::GetUniform4f ( const char *  name,
float  v[4] 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniformMatrix3x3()

bool vtkOpenGLUniforms::GetUniformMatrix3x3 ( const char *  name,
float *  v 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniformMatrix4x4()

bool vtkOpenGLUniforms::GetUniformMatrix4x4 ( const char *  name,
float *  v 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform3f() [2/2]

bool vtkOpenGLUniforms::GetUniform3f ( const char *  name,
double  v[3] 
)
overridevirtual

Get the name uniform to v.

The following are convenience functions and do not reflect the way the data is stored and sent to OpenGL. Data is converted from one of the basic supported types

Implements vtkUniforms.

◆ GetUniform3uc()

bool vtkOpenGLUniforms::GetUniform3uc ( const char *  name,
unsigned char  v[3] 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform4uc()

bool vtkOpenGLUniforms::GetUniform4uc ( const char *  name,
unsigned char  v[4] 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniformMatrix() [1/2]

bool vtkOpenGLUniforms::GetUniformMatrix ( const char *  name,
vtkMatrix3x3 v 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniformMatrix() [2/2]

bool vtkOpenGLUniforms::GetUniformMatrix ( const char *  name,
vtkMatrix4x4 v 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform1iv()

bool vtkOpenGLUniforms::GetUniform1iv ( const char *  name,
std::vector< int > &  f 
)
overridevirtual

Get the name uniform vector to f with.

Implements vtkUniforms.

◆ GetUniform1fv()

bool vtkOpenGLUniforms::GetUniform1fv ( const char *  name,
std::vector< float > &  f 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform2fv()

bool vtkOpenGLUniforms::GetUniform2fv ( const char *  name,
std::vector< float > &  f 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform3fv()

bool vtkOpenGLUniforms::GetUniform3fv ( const char *  name,
std::vector< float > &  f 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniform4fv()

bool vtkOpenGLUniforms::GetUniform4fv ( const char *  name,
std::vector< float > &  f 
)
overridevirtual

Implements vtkUniforms.

◆ GetUniformMatrix4x4v()

bool vtkOpenGLUniforms::GetUniformMatrix4x4v ( const char *  name,
std::vector< float > &  f 
)
overridevirtual

Implements vtkUniforms.

◆ GetNumberOfUniforms()

int vtkOpenGLUniforms::GetNumberOfUniforms ( )
overridevirtual

Get number of all uniforms stored in this class.

Implements vtkUniforms.

◆ GetNthUniformName()

const char* vtkOpenGLUniforms::GetNthUniformName ( vtkIdType  uniformIndex)
overridevirtual

Get number of all uniforms stored in this class.

Valid range is between 0 and GetNumberOfUniforms() - 1.

Implements vtkUniforms.

◆ GetUniformScalarType()

virtual int vtkOpenGLUniforms::GetUniformScalarType ( const char *  name)
overridevirtual

Get type of scalars stored in uniform name.

Implements vtkUniforms.

◆ GetUniformTupleType()

TupleType vtkOpenGLUniforms::GetUniformTupleType ( const char *  name)
overridevirtual

Get the tuple type stored in uniform name.

This can be a scalar, a vector of a matrix.

Implements vtkUniforms.

◆ GetUniformNumberOfComponents()

int vtkOpenGLUniforms::GetUniformNumberOfComponents ( const char *  name)
overridevirtual

Get the number of components stored in each tuple of uniform name.

for example, a uniform with tuples of matrix type and 9 components contains 3x3 matrices

Implements vtkUniforms.

◆ GetUniformNumberOfTuples()

int vtkOpenGLUniforms::GetUniformNumberOfTuples ( const char *  name)
overridevirtual

Get length of a uniform name that contains a variable-size vector.

Size includes number of tuples. For example, 3fv returns 3 x number of triplets.

Implements vtkUniforms.


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