28 #ifndef __D3D9HLSLProgram_H__
29 #define __D3D9HLSLProgram_H__
50 String doGet(
const void* target)
const;
51 void doSet(
void* target,
const String& val);
57 String doGet(
const void* target)
const;
58 void doSet(
void* target,
const String& val);
64 String doGet(
const void* target)
const;
65 void doSet(
void* target,
const String& val);
71 String doGet(
const void* target)
const;
72 void doSet(
void* target,
const String& val);
78 String doGet(
const void* target)
const;
79 void doSet(
void* target,
const String& val);
86 String doGet(
const void* target)
const;
87 void doSet(
void* target,
const String& val);
94 String doGet(
const void* target)
const;
95 void doSet(
void* target,
const String& val);
109 void loadFromSource(
void);
112 void createLowLevelImpl(
void);
114 void unloadHighLevelImpl(
void);
116 void buildConstantDefinitions()
const;
119 void processParamElement(D3DXHANDLE parent,
String prefix,
unsigned int index)
const;
131 LPD3DXBUFFER getMicroCode();
162 void setTarget(
const String& target);
182 bool isSupported(
void)
const;
186 const String& getLanguage(
void)
const;
static CmdAssemblerCode msCmdAssemblerCode
OptimisationLevel getOptimisationLevel() const
Gets the optimisation level to use.
Command object for setting target assembler.
static CmdTarget msCmdTarget
bool getColumnMajorMatrices(void) const
Gets whether matrix packed in column-major order.
Command object for getting/setting assembler code.
Command object for setting matrix packing in column-major order.
Interface describing a manual resource loader.
OptimisationLevel mOptimisationLevel
Specialisation of HighLevelGpuProgram to provide support for D3D9 High-Level Shader Language (HLSL)...
static CmdMicrocode msCmdMicrocode
const String & getPreprocessorDefines(void) const
Sets the preprocessor defines use to compile the program.
void setEntryPoint(const String &entryPoint)
Sets the entry point for this program ie the first method called.
bool mColumnMajorMatrices
String mPreprocessorDefines
void setColumnMajorMatrices(bool columnMajor)
Sets whether matrix packing in column-major order.
Command object for setting entry point.
static CmdOptimisation msCmdOptimisation
Command object for getting/setting micro code.
unsigned long long int ResourceHandle
const String & getEntryPoint(void) const
Gets the entry point defined for this program.
OptimisationLevel
Shader optimisation level.
static CmdEntryPoint msCmdEntryPoint
Defines a generic resource handler.
Information about predefined program constants.
default - no optimisation in debug mode, OPT_1 in release mode
const String & getTarget(void) const
Gets the shader target to compile down to, e.g.
Command object for setting optimisation level.
Abstract base class representing a high-level program (a vertex or fragment program).
LPD3DXCONSTANTTABLE mpConstTable
Command object for setting macro defines.
static CmdPreprocessorDefines msCmdPreprocessorDefines
void setOptimisationLevel(OptimisationLevel opt)
Sets the optimisation level to use.
Abstract class which is command object which gets/sets parameters.
static CmdColumnMajorMatrices msCmdColumnMajorMatrices
void setPreprocessorDefines(const String &defines)
Sets the preprocessor defines use to compile the program.