18 #ifndef vtkOpenGLShaderProperty_h
19 #define vtkOpenGLShaderProperty_h
21 #include "vtkRenderingOpenGL2Module.h"
26 VTK_ABI_NAMESPACE_BEGIN
47 const std::string& replacementValue,
bool replaceAll)
override;
50 const std::string& replacementValue,
bool replaceAll)
override;
53 const std::string& replacementValue,
bool replaceAll)
override;
58 std::string& replacementValue,
bool& replaceAll)
override;
79 const std::string& replacementValue,
bool replaceAll);
81 const std::string& originalValue,
bool replaceFirst);
91 typedef std::map<vtkShader::ReplacementSpec, vtkShader::ReplacementValue>
ReplacementMap;
105 VTK_ABI_NAMESPACE_END
virtual void ClearAllGeometryShaderReplacements()=0
This function enables you to apply your own substitutions to the shader creation process.
ReplacementMap UserShaderReplacements
virtual void ClearAllFragmentShaderReplacements()=0
This function enables you to apply your own substitutions to the shader creation process.
virtual void GetNthShaderReplacement(vtkIdType index, std::string &name, bool &replaceFirst, std::string &replacementValue, bool &replaceAll)=0
This function enables you to apply your own substitutions to the shader creation process.
virtual void AddVertexShaderReplacement(const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll)=0
This function enables you to apply your own substitutions to the shader creation process.
static vtkShaderProperty * New()
Construct object with no shader replacements.
virtual int GetNumberOfShaderReplacements()=0
This function enables you to apply your own substitutions to the shader creation process.
Type
Available shader types.
represent GPU shader properties
virtual std::string GetNthShaderReplacementTypeAsString(vtkIdType index)=0
This function enables you to apply your own substitutions to the shader creation process.
virtual void ClearGeometryShaderReplacement(const std::string &originalValue, bool replaceFirst)=0
This function enables you to apply your own substitutions to the shader creation process.
virtual void AddGeometryShaderReplacement(const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll)=0
This function enables you to apply your own substitutions to the shader creation process.
a simple class to control print indentation
virtual void ClearVertexShaderReplacement(const std::string &originalValue, bool replaceFirst)=0
This function enables you to apply your own substitutions to the shader creation process.
const ReplacementMap & GetAllShaderReplacements()
represent GPU shader properties
virtual void ClearFragmentShaderReplacement(const std::string &originalValue, bool replaceFirst)=0
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 DeepCopy(vtkShaderProperty *p)
Assign one property to another.
virtual void ClearAllShaderReplacements()=0
This function enables you to apply your own substitutions to the shader creation process.
virtual void ClearAllVertexShaderReplacements()=0
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.
virtual void AddFragmentShaderReplacement(const std::string &originalValue, bool replaceFirst, const std::string &replacementValue, bool replaceAll)=0
This function enables you to apply your own substitutions to the shader creation process.