#include <GteProgramFactory.h>
Public Types | |
enum | { PF_GLSL, PF_HLSL, PF_NUM_API } |
Public Member Functions | |
std::shared_ptr< ComputeProgram > | CreateFromFile (std::string const &csFile) |
std::shared_ptr< VisualProgram > | CreateFromFiles (std::string const &vsFile, std::string const &psFile, std::string const &gsFile) |
std::shared_ptr< ComputeProgram > | CreateFromSource (std::string const &csSource) |
std::shared_ptr< VisualProgram > | CreateFromSources (std::string const &vsSource, std::string const &psSource, std::string const &gsSource) |
virtual int | GetAPI () const =0 |
void | PopDefines () |
void | PopFlags () |
ProgramFactory () | |
void | PushDefines () |
void | PushFlags () |
virtual | ~ProgramFactory () |
Static Public Member Functions | |
static std::string | GetStringFromFile (std::string const &filename) |
Public Attributes | |
std::string | csEntry |
ProgramDefines | defines |
unsigned int | flags |
std::string | gsEntry |
std::string | psEntry |
std::string | version |
std::string | vsEntry |
Protected Member Functions | |
virtual std::shared_ptr< ComputeProgram > | CreateFromNamedSource (std::string const &csName, std::string const &csSource)=0 |
virtual std::shared_ptr< VisualProgram > | CreateFromNamedSources (std::string const &vsName, std::string const &vsSource, std::string const &psName, std::string const &psSource, std::string const &gsName, std::string const &gsSource)=0 |
Private Member Functions | |
ProgramFactory & | operator= (ProgramFactory const &) |
Private Attributes | |
std::stack< ProgramDefines > | mDefinesStack |
std::stack< unsigned int > | mFlagsStack |
Definition at line 18 of file GteProgramFactory.h.
anonymous enum |
Enumerator | |
---|---|
PF_GLSL | |
PF_HLSL | |
PF_NUM_API |
Definition at line 36 of file GteProgramFactory.h.
|
virtual |
Definition at line 15 of file GteProgramFactory.cpp.
ProgramFactory::ProgramFactory | ( | ) |
Definition at line 19 of file GteProgramFactory.cpp.
std::shared_ptr< ComputeProgram > ProgramFactory::CreateFromFile | ( | std::string const & | csFile | ) |
Definition at line 75 of file GteProgramFactory.cpp.
std::shared_ptr< VisualProgram > ProgramFactory::CreateFromFiles | ( | std::string const & | vsFile, |
std::string const & | psFile, | ||
std::string const & | gsFile | ||
) |
Definition at line 31 of file GteProgramFactory.cpp.
|
protectedpure virtual |
Implemented in gte::HLSLProgramFactory, and gte::GLSLProgramFactory.
|
protectedpure virtual |
Implemented in gte::HLSLProgramFactory, and gte::GLSLProgramFactory.
std::shared_ptr< ComputeProgram > ProgramFactory::CreateFromSource | ( | std::string const & | csSource | ) |
Definition at line 93 of file GteProgramFactory.cpp.
std::shared_ptr< VisualProgram > ProgramFactory::CreateFromSources | ( | std::string const & | vsSource, |
std::string const & | psSource, | ||
std::string const & | gsSource | ||
) |
Definition at line 67 of file GteProgramFactory.cpp.
|
pure virtual |
Implemented in gte::HLSLProgramFactory, and gte::GLSLProgramFactory.
|
static |
Definition at line 99 of file GteProgramFactory.cpp.
|
inlineprivate |
Definition at line 96 of file GteProgramFactory.h.
void ProgramFactory::PopDefines | ( | ) |
Definition at line 126 of file GteProgramFactory.cpp.
void ProgramFactory::PopFlags | ( | ) |
Definition at line 141 of file GteProgramFactory.cpp.
void ProgramFactory::PushDefines | ( | ) |
Definition at line 120 of file GteProgramFactory.cpp.
void ProgramFactory::PushFlags | ( | ) |
Definition at line 135 of file GteProgramFactory.cpp.
std::string gte::ProgramFactory::csEntry |
Definition at line 29 of file GteProgramFactory.h.
ProgramDefines gte::ProgramFactory::defines |
Definition at line 30 of file GteProgramFactory.h.
unsigned int gte::ProgramFactory::flags |
Definition at line 31 of file GteProgramFactory.h.
std::string gte::ProgramFactory::gsEntry |
Definition at line 29 of file GteProgramFactory.h.
|
private |
Definition at line 92 of file GteProgramFactory.h.
|
private |
Definition at line 93 of file GteProgramFactory.h.
std::string gte::ProgramFactory::psEntry |
Definition at line 29 of file GteProgramFactory.h.
std::string gte::ProgramFactory::version |
Definition at line 28 of file GteProgramFactory.h.
std::string gte::ProgramFactory::vsEntry |
Definition at line 29 of file GteProgramFactory.h.