28 #ifndef __GpuProgramManager_H_ 29 #define __GpuProgramManager_H_ 64 static String addRenderSystemToName(
const String & name );
106 const String& syntaxCode);
109 virtual const SyntaxCodes& getSupportedSyntax(
void)
const;
113 virtual bool isSyntaxSupported(
const String& syntaxCode)
const;
170 ResourcePtr getResourceByName(
const String& name,
bool preferHighLevelPrograms =
true);
187 virtual const SharedParametersMap& getAvailableSharedParameters()
const;
191 bool getSaveMicrocodesToCache();
194 void setSaveMicrocodesToCache(
const bool val );
198 bool isCacheDirty(
void)
const;
200 bool canGetCompiledShaderBuffer();
204 virtual bool isMicrocodeAvailableInCache(
const String & name )
const;
208 virtual const Microcode & getMicrocodeFromCache(
const String & name )
const;
213 virtual Microcode createMicrocode(
const uint32 size )
const;
218 virtual void addMicrocodeToCache(
const String & name,
const Microcode & microcode );
223 virtual void removeMicrocodeFromCache(
const String & name );
228 virtual void saveMicrocodeCache(
DataStreamPtr stream )
const;
MicrocodeMap mMicrocodeCache
map< String, Microcode >::type MicrocodeMap
map< String, GpuSharedParametersPtr >::type SharedParametersMap
bool mSaveMicrocodesToCache
Abstract class representing a loadable resource (e.g.
Interface describing a manual resource loader.
unsigned long long int ResourceHandle
SharedParametersMap mSharedParametersMap
GpuProgramType
Enumerates the types of programs which can run on the GPU.
set< String >::type SyntaxCodes
Defines a generic resource handler.
Reference-counted shared pointer, used for objects where implicit destruction is required.
MemoryDataStreamPtr Microcode
Template class for creating single-instance global classes.