|
| GpuProgramManager () |
|
virtual | ~GpuProgramManager () |
|
void | addFactory (GpuProgramFactory *factory) |
| Add a new factory object for programs of a given language. More...
|
|
void | addMicrocodeToCache (uint32 id, const Microcode µcode) |
| Adds a microcode for a program to the microcode cache. More...
|
|
GpuProgramPtr | create (const String &name, const String &group, GpuProgramType gptype, const String &language, bool isManual=false, ManualResourceLoader *loader=0) |
| General create method, using specific create parameters instead of name / value pairs. More...
|
|
virtual GpuProgramPtr | createProgram (const String &name, const String &groupName, const String &filename, GpuProgramType gptype, const String &syntaxCode) |
| Create a new, unloaded GpuProgram from a file of assembly. More...
|
|
GpuProgramPtr | createProgram (const String &name, const String &groupName, const String &language, GpuProgramType gptype) |
| Create a new, unloaded GpuProgram. More...
|
|
virtual GpuProgramPtr | createProgramFromString (const String &name, const String &groupName, const String &code, GpuProgramType gptype, const String &syntaxCode) |
| Create a GPU program from a string of assembly code. More...
|
|
virtual GpuSharedParametersPtr | createSharedParameters (const String &name) |
| Create a new set of shared parameters, which can be used across many GpuProgramParameters objects of different structures. More...
|
|
virtual const SharedParametersMap & | getAvailableSharedParameters () const |
| Get (const) access to the available shared parameter sets. More...
|
|
GpuProgramPtr | getByName (const String &name, const String &group, bool preferHighLevelPrograms) const |
|
GpuProgramPtr | getByName (const String &name, const String &group=RGN_DEFAULT) const |
| Get a resource by name. More...
|
|
const Microcode & | getMicrocodeFromCache (uint32 id) const |
| Returns a microcode for a program from the microcode cache. More...
|
|
bool | getSaveMicrocodesToCache () const |
| Get if the microcode of a shader should be saved to a cache. More...
|
|
virtual GpuSharedParametersPtr | getSharedParameters (const String &name) const |
| Retrieve a set of shared parameters, which can be used across many GpuProgramParameters objects of different structures. More...
|
|
bool | isCacheDirty (void) const |
| Returns true if the microcodecache changed during the run. More...
|
|
bool | isLanguageSupported (const String &lang) const |
| Returns whether a given high-level language (e.g. More...
|
|
bool | isMicrocodeAvailableInCache (uint32 id) const |
| Check if a microcode is available for a program in the microcode cache. More...
|
|
virtual GpuProgramPtr | load (const String &name, const String &groupName, const String &filename, GpuProgramType gptype, const String &syntaxCode) |
| Loads a GPU program from a file. More...
|
|
virtual GpuProgramPtr | loadFromString (const String &name, const String &groupName, const String &code, GpuProgramType gptype, const String &syntaxCode) |
| Loads a GPU program from a string. More...
|
|
void | loadMicrocodeCache (DataStreamPtr stream) |
| Loads the microcode cache from disk. More...
|
|
void | removeFactory (GpuProgramFactory *factory) |
| Remove a factory object for programs of a given language. More...
|
|
void | removeMicrocodeFromCache (uint32 id) |
| Removes a microcode for a program from the microcode cache. More...
|
|
void | saveMicrocodeCache (DataStreamPtr stream) const |
| Saves the microcode cache to disk. More...
|
|
void | setSaveMicrocodesToCache (bool val) |
| Set if the microcode of a shader should be saved to a cache. More...
|
|
| ResourceManager () |
|
virtual | ~ResourceManager () |
|
virtual void | _notifyResourceLoaded (Resource *res) |
| Notify this manager that a resource which it manages has been loaded. More...
|
|
virtual void | _notifyResourceTouched (Resource *res) |
| Notify this manager that a resource which it manages has been 'touched', i.e. More...
|
|
virtual void | _notifyResourceUnloaded (Resource *res) |
| Notify this manager that a resource which it manages has been unloaded. More...
|
|
ResourceCreateOrRetrieveResult | createOrRetrieve (const String &name, const String &group, bool isManual=false, ManualResourceLoader *loader=0, const NameValuePairList *createParams=0) |
| Create a new resource, or retrieve an existing one with the same name if it already exists. More...
|
|
ResourcePtr | createResource (const String &name, const String &group, bool isManual=false, ManualResourceLoader *loader=0, const NameValuePairList *createParams=0) |
| Creates a new blank resource, but does not immediately load it. More...
|
|
void | destroyAllResourcePools () |
| destroy all pools More...
|
|
void | destroyResourcePool (const String &name) |
| Destroy a resource pool. More...
|
|
void | destroyResourcePool (ResourcePool *pool) |
| Destroy a resource pool. More...
|
|
virtual ResourcePtr | getByHandle (ResourceHandle handle) const |
| Retrieves a pointer to a resource by handle, or null if the resource does not exist. More...
|
|
Real | getLoadingOrder (void) const override |
| Gets the loading order for scripts of this type. More...
|
|
size_t | getMemoryBudget (void) const |
| Get the limit on the amount of memory this resource handler may use. More...
|
|
size_t | getMemoryUsage (void) const |
| Gets the current memory usage, in bytes. More...
|
|
virtual ResourcePtr | getResourceByName (const String &name, const String &groupName=RGN_DEFAULT) const |
| Retrieves a pointer to a resource by name, or null if the resource does not exist. More...
|
|
ResourceMapIterator | getResourceIterator (void) |
| Returns an iterator over all resources in this manager. More...
|
|
ResourcePool * | getResourcePool (const String &name) |
| Create a resource pool, or reuse one that already exists. More...
|
|
const String & | getResourceType (void) const |
| Gets a string identifying the type of resource this manager handles. More...
|
|
const StringVector & | getScriptPatterns (void) const override |
| Gets the file patterns which should be used to find scripts for this class. More...
|
|
bool | getVerbose (void) |
| Gets whether this manager and its resources habitually produce log output. More...
|
|
ResourcePtr | load (const String &name, const String &group, bool isManual=false, ManualResourceLoader *loader=0, const NameValuePairList *loadParams=0, bool backgroundThread=false) |
| Generic load method, used to create a Resource specific to this ResourceManager without using one of the specialised 'load' methods (containing per-Resource-type parameters). More...
|
|
void | parseScript (DataStreamPtr &stream, const String &groupName) override |
| Parse a script file. More...
|
|
ResourcePtr | prepare (const String &name, const String &group, bool isManual=false, ManualResourceLoader *loader=0, const NameValuePairList *loadParams=0, bool backgroundThread=false) |
| Generic prepare method, used to create a Resource specific to this ResourceManager without using one of the specialised 'prepare' methods (containing per-Resource-type parameters). More...
|
|
void | reloadAll (bool reloadableOnly=true) |
| Caused all currently loaded resources to be reloaded. More...
|
|
virtual void | reloadAll (Resource::LoadingFlags flags) |
| Caused all currently loaded resources to be reloaded. More...
|
|
void | reloadUnreferencedResources (bool reloadableOnly=true) |
| Caused all currently loaded but not referenced by any other object resources to be reloaded. More...
|
|
void | remove (const ResourcePtr &r) |
| Remove a single resource. More...
|
|
void | remove (const String &name, const String &group=RGN_DEFAULT) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
|
|
void | remove (ResourceHandle handle) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
|
|
virtual void | removeAll (void) |
| Removes all resources. More...
|
|
virtual void | removeUnreferencedResources (bool reloadableOnly=true) |
| Remove all resources which are not referenced by any other object. More...
|
|
bool | resourceExists (const String &name, const String &group=RGN_DEFAULT) const |
| Returns whether the named resource exists in this manager. More...
|
|
bool | resourceExists (ResourceHandle handle) const |
| Returns whether a resource with the given handle exists in this manager. More...
|
|
void | setMemoryBudget (size_t bytes) |
| Set a limit on the amount of memory this resource handler may use. More...
|
|
void | setVerbose (bool v) |
| Sets whether this manager and its resources habitually produce log output. More...
|
|
void | unload (const String &name, const String &group=RGN_DEFAULT) |
| Unloads a single resource by name. More...
|
|
void | unload (ResourceHandle handle) |
| Unloads a single resource by handle. More...
|
|
void | unloadAll (bool reloadableOnly=true) |
| Unloads all resources. More...
|
|
virtual void | unloadAll (Resource::LoadingFlags flags) |
| Unloads all resources. More...
|
|
void | unloadUnreferencedResources (bool reloadableOnly=true) |
| Unload all resources which are not referenced by any other object. More...
|
|
virtual | ~ScriptLoader () |
|
| Singleton (void) |
|
| ~Singleton (void) |
|
This ResourceManager manages GPU shader programs.
This class not only manages the programs themselves, it also manages the factory classes which allow the creation of programs using a variety of syntaxes. Plugins can be created which register themselves as program factories and as such the engine can be extended to accept virtually any kind of program provided a plugin is written.