ActiViz .NET  5.8.0
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Private Member Functions | Static Private Member Functions
Kitware.VTK.vtkShaderProgram Class Reference

vtkShaderProgram More...

Inheritance diagram for Kitware.VTK.vtkShaderProgram:
[legend]
Collaboration diagram for Kitware.VTK.vtkShaderProgram:
[legend]

List of all members.

Public Member Functions

 vtkShaderProgram (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
int AddShader (vtkShader shader)
 .Description: Add shaders. Returns the index of the shader.
virtual void AddShaderVariable (string name, int numVars, IntPtr x)
 Description Provide values to initialize shader variables. This is a conduit to initialize shader variables that change over time, useful for animation, gui widget inputs, etc. name - hardware name of the uniform variable numVars - number of variables being set x - values.
virtual vtkXMLMaterial GetMaterial ()
 .Description: Accessors for the Material.
int GetNumberOfShaders ()
 Returns the number of shaders available in this shader program.
virtual vtkShaderDeviceAdapter GetShaderDeviceAdapter ()
 Get the vtkShaderDeviceAdapter which can be used to execute this shader program.
override int IsA (string type)
 Undocumented Block.
new vtkShaderProgram NewInstance ()
 Undocumented Block.
vtkCollectionIterator NewShaderIterator ()
 Returns a new iterator to iterate over the shaders.
virtual void PostRender (vtkActor arg0, vtkRenderer arg1)
 Called to unload the shaders after the actor has been rendered.
virtual void ReadMaterial ()
 .Description Read the material file to get necessary shader info. Synchronize with delegate shaders.
virtual void ReleaseGraphicsResources (vtkWindow arg0)
 Release any graphics resources that are being consumed by this actor. The parameter window could be used to determine which graphic resources to release.
void RemoveShader (int index)
 Remove a shader at the given index.
void RemoveShader (vtkShader shader)
 Removes the given shader.
virtual void Render (vtkActor arg0, vtkRenderer arg1)
 .Description Load, compile, install and initialize shaders. These operations may be delegated to the shaders themselves or handled in descendants of this class.
virtual void SetMaterial (vtkXMLMaterial arg0)
 .Description: Accessors for the Material.

Static Public Member Functions

static vtkShaderProgram CreateShaderProgram (int type)
 .Description This static function creates concrete shaders of a specific type. This is used to create a shader of the langauge specified in the XML file.
static new int IsTypeOf (string type)
 Undocumented Block.
static new vtkShaderProgram SafeDownCast (vtkObjectBase o)
 Undocumented Block.

Public Attributes

new const string MRFullTypeName = "Kitware.VTK.vtkShaderProgram"
 Automatically generated type registration mechanics.

Static Public Attributes

static new readonly string MRClassNameKey = "16vtkShaderProgram"
 Automatically generated type registration mechanics.

Protected Member Functions

override void Dispose (bool disposing)
 Automatically generated protected Dispose method - called from public Dispose or the C# destructor. DO NOT call directly.

Private Member Functions

static internal int vtkShaderProgram_AddShader_01 (HandleRef pThis, HandleRef shader)
static internal void vtkShaderProgram_AddShaderVariable_02 (HandleRef pThis, string name, int numVars, IntPtr x)
static internal IntPtr vtkShaderProgram_CreateShaderProgram_03 (int type, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount)
static internal IntPtr vtkShaderProgram_GetMaterial_04 (HandleRef pThis, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount)
static internal int vtkShaderProgram_GetNumberOfShaders_05 (HandleRef pThis)
static internal IntPtr vtkShaderProgram_GetShaderDeviceAdapter_06 (HandleRef pThis, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount)
static internal int vtkShaderProgram_IsA_07 (HandleRef pThis, string type)
static internal int vtkShaderProgram_IsTypeOf_08 (string type)
static internal IntPtr vtkShaderProgram_NewInstance_09 (HandleRef pThis, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount)
static internal IntPtr vtkShaderProgram_NewShaderIterator_10 (HandleRef pThis, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount)
static internal void vtkShaderProgram_PostRender_11 (HandleRef pThis, HandleRef arg0, HandleRef arg1)
static internal void vtkShaderProgram_ReadMaterial_12 (HandleRef pThis)
static internal void vtkShaderProgram_ReleaseGraphicsResources_13 (HandleRef pThis, HandleRef arg0)
static internal void vtkShaderProgram_RemoveShader_14 (HandleRef pThis, int index)
static internal void vtkShaderProgram_RemoveShader_15 (HandleRef pThis, HandleRef shader)
static internal void vtkShaderProgram_Render_16 (HandleRef pThis, HandleRef arg0, HandleRef arg1)
static internal IntPtr vtkShaderProgram_SafeDownCast_17 (HandleRef o, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount)
static internal void vtkShaderProgram_SetMaterial_18 (HandleRef pThis, HandleRef arg0)

Static Private Member Functions

static vtkShaderProgram ()
 Automatically generated type registration mechanics.

Detailed Description

vtkShaderProgram

Description vtkShaderProgram is a superclass for managing Hardware Shaders defined in the XML Material file and interfacing VTK to those shaders. It's concrete descendants are responsible for installing vertex and fragment programs to the graphics hardware.

Shader Operations are shader library operations that are performed on individual shaders, that is, without consideration of the partner shader.

Program Operations are shader library operations that treat the vertex and fragment shader as a single unit.

Design This class is a Strategy pattern for 'Program' operations, which treat vertex/fragment shader pairs as a single 'Program', as required by some shader libraries (GLSL). Typically, 'Shader' operations are delegated to instances of vtkShader (managed by descendants of this class) while 'Program' operations are handled by descendants of this class, vtkCgShaderProgram, vtkGLSLShaderProgram.

Thanks Shader support in VTK includes key contributions by Gary Templet at Sandia National Labs.

vtkCgShaderProgram, vtkGLSLShaderProgram


Constructor & Destructor Documentation

static Kitware.VTK.vtkShaderProgram.vtkShaderProgram ( ) [static, private]

Automatically generated type registration mechanics.

Kitware.VTK.vtkShaderProgram.vtkShaderProgram ( IntPtr  rawCppThis,
bool  callDisposalMethod,
bool  strong 
)

Automatically generated constructor - called from generated code. DO NOT call directly.


Member Function Documentation

.Description: Add shaders. Returns the index of the shader.

virtual void Kitware.VTK.vtkShaderProgram.AddShaderVariable ( string  name,
int  numVars,
IntPtr  x 
) [virtual]

Description Provide values to initialize shader variables. This is a conduit to initialize shader variables that change over time, useful for animation, gui widget inputs, etc. name - hardware name of the uniform variable numVars - number of variables being set x - values.

.Description This static function creates concrete shaders of a specific type. This is used to create a shader of the langauge specified in the XML file.

Here is the call graph for this function:

override void Kitware.VTK.vtkShaderProgram.Dispose ( bool  disposing) [protected]

Automatically generated protected Dispose method - called from public Dispose or the C# destructor. DO NOT call directly.

Reimplemented from Kitware.VTK.vtkObject.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

.Description: Accessors for the Material.

Here is the call graph for this function:

Returns the number of shaders available in this shader program.

Get the vtkShaderDeviceAdapter which can be used to execute this shader program.

Here is the call graph for this function:

override int Kitware.VTK.vtkShaderProgram.IsA ( string  type) [virtual]

Undocumented Block.

Reimplemented from Kitware.VTK.vtkObject.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

static new int Kitware.VTK.vtkShaderProgram.IsTypeOf ( string  type) [static]

Undocumented Block.

Reimplemented from Kitware.VTK.vtkObject.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

Undocumented Block.

Reimplemented from Kitware.VTK.vtkObject.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

Returns a new iterator to iterate over the shaders.

Here is the call graph for this function:

virtual void Kitware.VTK.vtkShaderProgram.PostRender ( vtkActor  arg0,
vtkRenderer  arg1 
) [virtual]

Called to unload the shaders after the actor has been rendered.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

virtual void Kitware.VTK.vtkShaderProgram.ReadMaterial ( ) [virtual]

.Description Read the material file to get necessary shader info. Synchronize with delegate shaders.

Release any graphics resources that are being consumed by this actor. The parameter window could be used to determine which graphic resources to release.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

Remove a shader at the given index.

Removes the given shader.

virtual void Kitware.VTK.vtkShaderProgram.Render ( vtkActor  arg0,
vtkRenderer  arg1 
) [virtual]

.Description Load, compile, install and initialize shaders. These operations may be delegated to the shaders themselves or handled in descendants of this class.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

Undocumented Block.

Reimplemented from Kitware.VTK.vtkObject.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

Here is the call graph for this function:

virtual void Kitware.VTK.vtkShaderProgram.SetMaterial ( vtkXMLMaterial  arg0) [virtual]

.Description: Accessors for the Material.

static internal int Kitware.VTK.vtkShaderProgram.vtkShaderProgram_AddShader_01 ( HandleRef  pThis,
HandleRef  shader 
) [private]
static internal void Kitware.VTK.vtkShaderProgram.vtkShaderProgram_AddShaderVariable_02 ( HandleRef  pThis,
string  name,
int  numVars,
IntPtr  x 
) [private]
static internal IntPtr Kitware.VTK.vtkShaderProgram.vtkShaderProgram_CreateShaderProgram_03 ( int  type,
ref uint  mteStatus,
ref uint  mteIndex,
ref uint  rawRefCount 
) [private]
static internal IntPtr Kitware.VTK.vtkShaderProgram.vtkShaderProgram_GetMaterial_04 ( HandleRef  pThis,
ref uint  mteStatus,
ref uint  mteIndex,
ref uint  rawRefCount 
) [private]
static internal int Kitware.VTK.vtkShaderProgram.vtkShaderProgram_GetNumberOfShaders_05 ( HandleRef  pThis) [private]
static internal IntPtr Kitware.VTK.vtkShaderProgram.vtkShaderProgram_GetShaderDeviceAdapter_06 ( HandleRef  pThis,
ref uint  mteStatus,
ref uint  mteIndex,
ref uint  rawRefCount 
) [private]
static internal int Kitware.VTK.vtkShaderProgram.vtkShaderProgram_IsA_07 ( HandleRef  pThis,
string  type 
) [private]
static internal int Kitware.VTK.vtkShaderProgram.vtkShaderProgram_IsTypeOf_08 ( string  type) [private]
static internal IntPtr Kitware.VTK.vtkShaderProgram.vtkShaderProgram_NewInstance_09 ( HandleRef  pThis,
ref uint  mteStatus,
ref uint  mteIndex,
ref uint  rawRefCount 
) [private]
static internal IntPtr Kitware.VTK.vtkShaderProgram.vtkShaderProgram_NewShaderIterator_10 ( HandleRef  pThis,
ref uint  mteStatus,
ref uint  mteIndex,
ref uint  rawRefCount 
) [private]
static internal void Kitware.VTK.vtkShaderProgram.vtkShaderProgram_PostRender_11 ( HandleRef  pThis,
HandleRef  arg0,
HandleRef  arg1 
) [private]
static internal void Kitware.VTK.vtkShaderProgram.vtkShaderProgram_ReadMaterial_12 ( HandleRef  pThis) [private]
static internal void Kitware.VTK.vtkShaderProgram.vtkShaderProgram_ReleaseGraphicsResources_13 ( HandleRef  pThis,
HandleRef  arg0 
) [private]
static internal void Kitware.VTK.vtkShaderProgram.vtkShaderProgram_RemoveShader_14 ( HandleRef  pThis,
int  index 
) [private]
static internal void Kitware.VTK.vtkShaderProgram.vtkShaderProgram_RemoveShader_15 ( HandleRef  pThis,
HandleRef  shader 
) [private]
static internal void Kitware.VTK.vtkShaderProgram.vtkShaderProgram_Render_16 ( HandleRef  pThis,
HandleRef  arg0,
HandleRef  arg1 
) [private]
static internal IntPtr Kitware.VTK.vtkShaderProgram.vtkShaderProgram_SafeDownCast_17 ( HandleRef  o,
ref uint  mteStatus,
ref uint  mteIndex,
ref uint  rawRefCount 
) [private]
static internal void Kitware.VTK.vtkShaderProgram.vtkShaderProgram_SetMaterial_18 ( HandleRef  pThis,
HandleRef  arg0 
) [private]

Member Data Documentation

new readonly string Kitware.VTK.vtkShaderProgram.MRClassNameKey = "16vtkShaderProgram" [static]

Automatically generated type registration mechanics.

Reimplemented from Kitware.VTK.vtkObject.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.

new const string Kitware.VTK.vtkShaderProgram.MRFullTypeName = "Kitware.VTK.vtkShaderProgram"

Automatically generated type registration mechanics.

Reimplemented from Kitware.VTK.vtkObject.

Reimplemented in Kitware.VTK.vtkGLSLShaderProgram.


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