18#ifndef vtkOpenGLShaderProperty_h
19#define vtkOpenGLShaderProperty_h
21#include "vtkRenderingOpenGL2Module.h"
27VTK_ABI_NAMESPACE_BEGIN
48 const std::string& replacementValue,
bool replaceAll)
override;
51 const std::string& replacementValue,
bool replaceAll)
override;
54 const std::string& replacementValue,
bool replaceAll)
override;
57 const std::string& replacementValue,
bool replaceAll)
override;
60 const std::string& replacementValue,
bool replaceAll)
override;
65 std::string& replacementValue,
bool& replaceAll)
override;
71 const std::string& originalValue,
bool replaceFirst)
override;
73 const std::string& originalValue,
bool replaceFirst)
override;
90 const std::string& originalValue,
92 const std::string& replacementValue,
bool replaceAll);
94 const std::string& originalValue,
bool replaceFirst);
104 typedef std::map<vtkShader::ReplacementSpec, vtkShader::ReplacementValue>
ReplacementMap;
a simple class to control print indentation
represent GPU shader properties
void ClearVertexShaderReplacement(const std::string &originalValue, bool replaceFirst) override
This function enables you to apply your own substitutions to the shader creation process.
void DeepCopy(vtkOpenGLShaderProperty *p)
Assign one property to another.
void GetNthShaderReplacement(vtkIdType index, std::string &name, bool &replaceFirst, std::string &replacementValue, bool &replaceAll) override
This function enables you to apply your own substitutions to the shader creation process.
ReplacementMap UserShaderReplacements
void ClearAllTessEvalShaderReplacements() override
This function enables you to apply your own substitutions to the shader creation process.
void ClearShaderReplacement(vtkShader::Type shaderType, const std::string &originalValue, bool replaceFirst)
This function enables you to apply your own substitutions to the shader creation process.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
const ReplacementMap & GetAllShaderReplacements()
void AddShaderReplacement(vtkShader::Type shaderType, const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll)
This function enables you to apply your own substitutions to the shader creation process.
void AddVertexShaderReplacement(const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll) override
This function enables you to apply your own substitutions to the shader creation process.
void ClearAllFragmentShaderReplacements() override
This function enables you to apply your own substitutions to the shader creation process.
void ClearTessEvaluationShaderReplacement(const std::string &originalValue, bool replaceFirst) override
This function enables you to apply your own substitutions to the shader creation process.
vtkOpenGLShaderProperty()
void ClearGeometryShaderReplacement(const std::string &originalValue, bool replaceFirst) override
This function enables you to apply your own substitutions to the shader creation process.
void AddFragmentShaderReplacement(const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll) override
This function enables you to apply your own substitutions to the shader creation process.
std::string GetNthShaderReplacementTypeAsString(vtkIdType index) override
This function enables you to apply your own substitutions to the shader creation process.
std::map< vtkShader::ReplacementSpec, vtkShader::ReplacementValue > ReplacementMap
GetAllShaderReplacements returns all user-specified shader replacements.
void ClearTessControlShaderReplacement(const std::string &originalValue, bool replaceFirst) override
This function enables you to apply your own substitutions to the shader creation process.
void ClearAllVertexShaderReplacements() override
This function enables you to apply your own substitutions to the shader creation process.
void ClearFragmentShaderReplacement(const std::string &originalValue, bool replaceFirst) override
This function enables you to apply your own substitutions to the shader creation process.
void ClearAllShaderReplacements() override
This function enables you to apply your own substitutions to the shader creation process.
void AddGeometryShaderReplacement(const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll) override
This function enables you to apply your own substitutions to the shader creation process.
~vtkOpenGLShaderProperty() override
static vtkOpenGLShaderProperty * New()
Construct object with no shader replacements.
void ClearAllTessControlShaderReplacements() override
This function enables you to apply your own substitutions to the shader creation process.
void ClearAllGeometryShaderReplacements() override
This function enables you to apply your own substitutions to the shader creation process.
int GetNumberOfShaderReplacements() override
This function enables you to apply your own substitutions to the shader creation process.
void ClearAllShaderReplacements(vtkShader::Type shaderType)
This function enables you to apply your own substitutions to the shader creation process.
void AddTessEvaluationShaderReplacement(const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll) override
This function enables you to apply your own substitutions to the shader creation process.
void AddTessControlShaderReplacement(const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll) override
This function enables you to apply your own substitutions to the shader creation process.
represent GPU shader properties
Type
Available shader types.