#include <vtkXMLShader.h>
vtkXMLShader encapsulates the XML description for a Shader. It provides convenient access to various attributes/properties of a shader.
Definition at line 33 of file vtkXMLShader.h.
Public Types | |
enum | LanguageCodes { LANGUAGE_NONE = 0, LANGUAGE_MIXED, LANGUAGE_CG, LANGUAGE_GLSL } |
enum | ScopeCodes { SCOPE_NONE = 0, SCOPE_MIXED, SCOPE_VERTEX, SCOPE_FRAGMENT } |
enum | LocationCodes { LOCATION_NONE = 0, LOCATION_INLINE, LOCATION_FILE, LOCATION_LIBRARY } |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
int | GetLanguage () |
int | GetScope () |
int | GetLocation () |
int | GetStyle () |
const char * | GetName () |
const char * | GetEntry () |
const char * | GetCode () |
const char ** | GetArgs () |
virtual vtkXMLDataElement * | GetRootElement () |
void | SetRootElement (vtkXMLDataElement *) |
Static Public Member Functions | |
static vtkXMLShader * | New () |
static int | IsTypeOf (const char *type) |
static vtkXMLShader * | SafeDownCast (vtkObject *o) |
static char * | LocateFile (const char *filename) |
Protected Member Functions | |
vtkXMLShader () | |
~vtkXMLShader () | |
void | ReadCodeFromFile (const char *fullpath) |
virtual void | SetCode (const char *) |
void | SetSourceLibraryElement (vtkXMLDataElement *) |
void | CleanupArgs () |
Protected Attributes | |
char * | Code |
vtkXMLDataElement * | RootElement |
vtkXMLDataElement * | SourceLibraryElement |
char ** | Args |
typedef vtkObject vtkXMLShader::Superclass |
Definition at line 83 of file vtkXMLShader.h.
Definition at line 91 of file vtkXMLShader.h.
Definition at line 99 of file vtkXMLShader.h.
vtkXMLShader::vtkXMLShader | ( | ) | [protected] |
vtkXMLShader::~vtkXMLShader | ( | ) | [protected] |
static vtkXMLShader* vtkXMLShader::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
virtual const char* vtkXMLShader::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkObject.
static int vtkXMLShader::IsTypeOf | ( | const char * | name | ) | [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 vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
virtual int vtkXMLShader::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 vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
static vtkXMLShader* vtkXMLShader::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkObject.
void vtkXMLShader::PrintSelf | ( | ostream & | os, | |
vtkIndent | indent | |||
) | [virtual] |
virtual vtkXMLDataElement* vtkXMLShader::GetRootElement | ( | ) | [virtual] |
Get/Set the XML root element that describes this shader.
void vtkXMLShader::SetRootElement | ( | vtkXMLDataElement * | ) |
Get/Set the XML root element that describes this shader.
int vtkXMLShader::GetLanguage | ( | ) |
Returns the shader's language as defined in the XML description.
int vtkXMLShader::GetScope | ( | ) |
Returns the type of the shader as defined in the XML description.
int vtkXMLShader::GetLocation | ( | ) |
Returns the location of the shader as defined in the XML description.
int vtkXMLShader::GetStyle | ( | ) |
Returns the style of the shader as optionaly defined in the XML description. If not present, default style is 1. "style=2" means it is a shader without a main(). In style 2, the "main" function for the vertex shader part is void propFuncVS(void), the main function for the fragment shader part is void propFuncFS(). This is useful when combining a shader at the actor level and a shader defines at the renderer level, like the depth peeling pass.
const char* vtkXMLShader::GetName | ( | ) |
Get the name of the Shader.
const char* vtkXMLShader::GetEntry | ( | ) |
Get the entry point to the shader code as defined in the XML.
const char* vtkXMLShader::GetCode | ( | ) |
Get the shader code.
const char** vtkXMLShader::GetArgs | ( | ) |
Returns an null terminate array of the pointers to space sepatared Args defined in the XML description.
static char* vtkXMLShader::LocateFile | ( | const char * | filename | ) | [static] |
Searches the file in the VTK_MATERIALS_DIRS. Note that this allocates new memory for the string. The caller must delete it.
void vtkXMLShader::ReadCodeFromFile | ( | const char * | fullpath | ) | [protected] |
virtual void vtkXMLShader::SetCode | ( | const char * | ) | [protected, virtual] |
void vtkXMLShader::SetSourceLibraryElement | ( | vtkXMLDataElement * | ) | [protected] |
void vtkXMLShader::CleanupArgs | ( | ) | [protected] |
char* vtkXMLShader::Code [protected] |
Definition at line 114 of file vtkXMLShader.h.
vtkXMLDataElement* vtkXMLShader::RootElement [protected] |
Definition at line 115 of file vtkXMLShader.h.
vtkXMLDataElement* vtkXMLShader::SourceLibraryElement [protected] |
Definition at line 118 of file vtkXMLShader.h.
char** vtkXMLShader::Args [protected] |
Definition at line 121 of file vtkXMLShader.h.