28#ifndef __ShaderProgramWriterHLSL_H__
29#define __ShaderProgramWriterHLSL_H__
A class that represents an atomic code section of shader based program function.
A class that represents a shader based program function.
HLSL target language writer implementation.
static String TargetLanguage
HLSLProgramWriter()
Class constructor.
map< Parameter::Semantic, constchar * >::type ParamSemanticToStringMap
void writeUniformParameter(std::ostream &os, UniformParameterPtr parameter)
Write a uniform parameter.
map< GpuConstantType, constchar * >::type GpuConstTypeToStringMap
GpuConstTypeToStringMap mGpuConstTypeMap
ParamSemanticToStringMap mParamSemanticMap
virtual ~HLSLProgramWriter()
Class destructor.
virtual const String & getTargetLanguage() const
void initializeStringMaps()
Initialize string maps.
void writeAtomInstance(std::ostream &os, FunctionAtom *atom)
Write function atom instance.
virtual void writeSourceCode(std::ostream &os, Program *program)
void writeFunctionDeclaration(std::ostream &os, Function *function)
Write a function declaration.
void writeLocalParameter(std::ostream &os, ParameterPtr parameter)
Write a local parameter.
void writeFunctionParameter(std::ostream &os, ParameterPtr parameter, const char *forcedSemantic)
Write a function parameter.
void writeProgramDependencies(std::ostream &os, Program *program)
Write the program dependencies.
Interface definition for factories of ShaderProgramWriter.
Base class interface for shader program writers.
A class that represents a shader based program.
HLSL program writer factory implementation.
virtual ProgramWriter * create(void)
virtual ~ShaderProgramWriterHLSLFactory()
virtual const String & getTargetLanguage(void) const
ShaderProgramWriterHLSLFactory()
Reference-counted shared pointer, used for objects where implicit destruction is required.
std::map< K, V, P, A > type