16 #ifndef SURGSIM_GRAPHICS_PROGRAM_H 17 #define SURGSIM_GRAPHICS_PROGRAM_H 47 virtual bool hasVertexShader()
const = 0;
50 virtual void clearVertexShader() = 0;
55 virtual bool loadVertexShader(
const std::string& filePath) = 0;
59 virtual void setVertexShaderSource(
const std::string& source) = 0;
63 virtual bool getVertexShaderSource(std::string* source)
const = 0;
66 virtual bool hasGeometryShader()
const = 0;
69 virtual void clearGeometryShader() = 0;
74 virtual bool loadGeometryShader(
const std::string& filePath) = 0;
78 virtual void setGeometryShaderSource(
const std::string& source) = 0;
82 virtual bool getGeometryShaderSource(std::string* source)
const = 0;
86 virtual bool hasFragmentShader()
const = 0;
89 virtual void clearFragmentShader() = 0;
94 virtual bool loadFragmentShader(
const std::string& filePath) = 0;
98 virtual void setFragmentShaderSource(
const std::string& source) = 0;
102 virtual bool getFragmentShaderSource(std::string* source)
const = 0;
108 clearGeometryShader();
109 clearFragmentShader();
117 virtual void setGlobalScope(
bool val) = 0;
121 virtual bool isGlobalScope()
const = 0;
125 inline Program::~Program()
133 #endif // SURGSIM_GRAPHICS_PROGRAM_H Definition: CompoundShapeToGraphics.cpp:29
virtual void clear()
Clears the entire shader, returning to fixed-function pipeline.
Definition: Program.h:105
Base class that defines the interface for graphics programs.
Definition: Program.h:39