Go to the documentation of this file.
28 #ifndef __UnifiedHighLevelGpuProgram_H__
29 #define __UnifiedHighLevelGpuProgram_H__
67 String doGet(
const void* target)
const;
68 void doSet(
void* target,
const String& val);
80 void chooseDelegate()
const;
82 void createLowLevelImpl(
void);
83 void unloadHighLevelImpl(
void);
84 void buildConstantDefinitions()
const;
85 void loadFromSource(
void);
93 virtual size_t calculateSize(
void)
const;
99 void addDelegateProgram(
const String& name);
102 void clearDelegatePrograms();
108 const String& getLanguage(
void)
const;
124 bool isSupported(
void)
const;
127 bool isSkeletalAnimationIncluded(
void)
const;
129 bool isMorphAnimationIncluded(
void)
const;
131 bool isPoseAnimationIncluded(
void)
const;
133 bool isVertexTextureFetchRequired(
void)
const;
135 bool hasDefaultParameters(
void)
const;
136 bool getPassSurfaceAndLightStates(
void)
const;
137 bool getPassFogStates(
void)
const;
138 bool getPassTransformStates(
void)
const;
139 bool hasCompileError(
void)
const;
140 void resetCompileError(
void);
142 void load(
bool backgroundThread =
false);
144 bool isReloadable(
void)
const;
145 bool isLoaded(
void)
const;
146 bool isLoading()
const;
149 size_t getSize(
void)
const;
151 bool isBackgroundLoaded(
void)
const;
152 void setBackgroundLoaded(
bool bl);
153 void escalateLoading();
unsigned long long int ResourceHandle
void destroy(HighLevelGpuProgram *prog)
static CmdDelegate msCmdDelegate
StringVector mDelegateNames
Ordered list of potential delegates.
vector< String >::type StringVector
Defines a program which runs on the GPU such as a vertex or fragment program.
Factory class for Unified programs.
const String & getLanguage(void) const
Get the name of the language this factory creates programs for.
Interface definition for factories of HighLevelGpuProgram.
HighLevelGpuProgramPtr mChosenDelegate
The chosen delegate.
UnifiedHighLevelGpuProgramFactory()
Abstract class which is command object which gets/sets parameters.
HighLevelGpuProgram * create(ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual, ManualResourceLoader *loader)
LoadingState
Enum identifying the loading state of the resource.
Command object for setting delegate (can set more than once)
Defines a generic resource handler.
~UnifiedHighLevelGpuProgramFactory()
Specialisation of HighLevelGpuProgram which just delegates its implementation to one other high level...
Interface describing a manual resource loader.
Abstract base class representing a high-level program (a vertex or fragment program).
Copyright © 2012 Torus Knot Software Ltd

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.