21#ifndef vtkShaderProperty_h 
   22#define vtkShaderProperty_h 
   26#include "vtkRenderingCoreModule.h"  
   28VTK_ABI_NAMESPACE_BEGIN
 
   69  vtkSetStringMacro(VertexShaderCode);
 
   70  vtkGetStringMacro(VertexShaderCode);
 
   71  vtkSetStringMacro(FragmentShaderCode);
 
   72  vtkGetStringMacro(FragmentShaderCode);
 
   73  vtkSetStringMacro(GeometryShaderCode);
 
   74  vtkGetStringMacro(GeometryShaderCode);
 
   97    const std::string& replacementValue, 
bool replaceAll) = 0;
 
  100    const std::string& replacementValue, 
bool replaceAll) = 0;
 
  103    const std::string& replacementValue, 
bool replaceAll) = 0;
 
  107    std::string& replacementValue, 
bool& replaceAll) = 0;
 
  109    const std::string& originalValue, 
bool replaceFirst) = 0;
 
  111    const std::string& originalValue, 
bool replaceFirst) = 0;
 
  113    const std::string& originalValue, 
bool replaceFirst) = 0;
 
a simple class to control print indentation
 
Allocate and hold a VTK object.
 
abstract base class for most VTK objects
 
represent GPU shader properties
 
bool HasFragmentShaderCode()
Allow the program to set the shader codes used directly instead of using the built in templates.
 
void DeepCopy(vtkShaderProperty *p)
Assign one property to another.
 
virtual int GetNumberOfShaderReplacements()=0
This function enables you to apply your own substitutions to the shader creation process.
 
~vtkShaderProperty() override
 
vtkMTimeType GetShaderMTime()
GetShaderMTime returns the last time a modification was made that affected the code of the shader (ei...
 
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 ClearAllGeometryShaderReplacements()=0
This function enables you to apply your own substitutions to the shader creation process.
 
virtual void ClearAllFragmentShaderReplacements()=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.
 
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.
 
bool HasGeometryShaderCode()
Allow the program to set the shader codes used directly instead of using the built in templates.
 
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.
 
char * GeometryShaderCode
 
vtkNew< vtkUniforms > GeometryCustomUniforms
 
bool HasVertexShaderCode()
Allow the program to set the shader codes used directly instead of using the built in templates.
 
virtual void ClearAllShaderReplacements()=0
This function enables you to apply your own substitutions to the shader creation process.
 
char * FragmentShaderCode
 
virtual void ClearFragmentShaderReplacement(const std::string &originalValue, bool replaceFirst)=0
This function enables you to apply your own substitutions to the shader creation process.
 
vtkNew< vtkUniforms > FragmentCustomUniforms
 
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 std::string GetNthShaderReplacementTypeAsString(vtkIdType index)=0
This function enables you to apply your own substitutions to the shader creation process.
 
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.
 
vtkNew< vtkUniforms > VertexCustomUniforms
 
static vtkShaderProperty * New()
Construct object with no shader replacements.
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
virtual void ClearVertexShaderReplacement(const std::string &originalValue, bool replaceFirst)=0
This function enables you to apply your own substitutions to the shader creation process.
 
vtkTypeUInt32 vtkMTimeType