|
| GpuProgramManager () |
|
virtual | ~GpuProgramManager () |
|
void | addFactory (GpuProgramFactory *factory) |
| Add a new factory object for programs of a given language.
|
|
void | addMicrocodeToCache (uint32 id, const Microcode µcode) |
| Adds a microcode for a program to the microcode cache.
|
|
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.
|
|
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.
|
|
GpuProgramPtr | createProgram (const String &name, const String &groupName, const String &language, GpuProgramType gptype) |
| Create a new, unloaded GpuProgram.
|
|
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.
|
|
virtual GpuSharedParametersPtr | createSharedParameters (const String &name) |
| Create a new set of shared parameters, which can be used across many GpuProgramParameters objects of different structures.
|
|
virtual const SharedParametersMap & | getAvailableSharedParameters () const |
| Get (const) access to the available shared parameter sets.
|
|
GpuProgramPtr | getByName (const String &name, const String &group, bool preferHighLevelPrograms) const |
|
GpuProgramPtr | getByName (const String &name, const String &group=RGN_DEFAULT) const |
| Get a GPU Program by name.
|
|
const Microcode & | getMicrocodeFromCache (uint32 id) const |
| Returns a microcode for a program from the microcode cache.
|
|
bool | getSaveMicrocodesToCache () const |
| Get if the microcode of a shader should be saved to a cache.
|
|
virtual GpuSharedParametersPtr | getSharedParameters (const String &name) const |
| Retrieve a set of shared parameters, which can be used across many GpuProgramParameters objects of different structures.
|
|
bool | isCacheDirty (void) const |
| Returns true if the microcodecache changed during the run.
|
|
bool | isLanguageSupported (const String &lang) const |
| Returns whether a given high-level language (e.g.
|
|
bool | isMicrocodeAvailableInCache (uint32 id) const |
| Check if a microcode is available for a program in the microcode cache.
|
|
virtual GpuProgramPtr | load (const String &name, const String &groupName, const String &filename, GpuProgramType gptype, const String &syntaxCode) |
| Loads a GPU program from a file.
|
|
virtual GpuProgramPtr | loadFromString (const String &name, const String &groupName, const String &code, GpuProgramType gptype, const String &syntaxCode) |
| Loads a GPU program from a string.
|
|
void | loadMicrocodeCache (const DataStreamPtr &stream) |
| Loads the microcode cache from disk.
|
|
void | removeFactory (GpuProgramFactory *factory) |
| Remove a factory object for programs of a given language.
|
|
void | removeMicrocodeFromCache (uint32 id) |
| Removes a microcode for a program from the microcode cache.
|
|
void | saveMicrocodeCache (const DataStreamPtr &stream) const |
| Saves the microcode cache to disk.
|
|
void | setSaveMicrocodesToCache (bool val) |
| Set if the microcode of a shader should be saved to a cache.
|
|
| ResourceManager () |
|
virtual | ~ResourceManager () |
|
virtual void | _notifyResourceLoaded (Resource *res) |
| Notify this manager that a resource which it manages has been loaded.
|
|
virtual void | _notifyResourceTouched (Resource *res) |
| Notify this manager that a resource which it manages has been 'touched', i.e.
|
|
virtual void | _notifyResourceUnloaded (Resource *res) |
| Notify this manager that a resource which it manages has been unloaded.
|
|
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.
|
|
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.
|
|
void | destroyAllResourcePools () |
| destroy all pools
|
|
void | destroyResourcePool (const String &name) |
| Destroy a resource pool.
|
|
void | destroyResourcePool (ResourcePool *pool) |
| Destroy a resource pool.
|
|
virtual ResourcePtr | getByHandle (ResourceHandle handle) const |
| Retrieves a pointer to a resource by handle, or null if the resource does not exist.
|
|
Real | getLoadingOrder (void) const override |
| Gets the loading order for scripts of this type.
|
|
size_t | getMemoryBudget (void) const |
| Get the limit on the amount of memory this resource handler may use.
|
|
size_t | getMemoryUsage (void) const |
| Gets the current memory usage, in bytes.
|
|
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.
|
|
ResourceMapIterator | getResourceIterator (void) |
| Returns an iterator over all resources in this manager.
|
|
ResourcePool * | getResourcePool (const String &name) |
| Create a resource pool, or reuse one that already exists.
|
|
const String & | getResourceType (void) const |
| Gets a string identifying the type of resource this manager handles.
|
|
const StringVector & | getScriptPatterns (void) const override |
| Gets the file patterns which should be used to find scripts for this class.
|
|
bool | getVerbose (void) |
| Gets whether this manager and its resources habitually produce log output.
|
|
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).
|
|
void | parseScript (DataStreamPtr &stream, const String &groupName) override |
| Parse a script file.
|
|
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).
|
|
void | reloadAll (bool reloadableOnly=true) |
| Caused all currently loaded resources to be reloaded.
|
|
virtual void | reloadAll (Resource::LoadingFlags flags) |
| Caused all currently loaded resources to be reloaded.
|
|
void | reloadUnreferencedResources (bool reloadableOnly=true) |
| Caused all currently loaded but not referenced by any other object resources to be reloaded.
|
|
void | remove (const ResourcePtr &r) |
| Remove a single resource.
|
|
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.
|
|
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.
|
|
virtual void | removeAll (void) |
| Removes all resources.
|
|
virtual void | removeUnreferencedResources (bool reloadableOnly=true) |
| Remove all resources which are not referenced by any other object.
|
|
bool | resourceExists (const String &name, const String &group=RGN_DEFAULT) const |
| Returns whether the named resource exists in this manager.
|
|
bool | resourceExists (ResourceHandle handle) const |
| Returns whether a resource with the given handle exists in this manager.
|
|
void | setMemoryBudget (size_t bytes) |
| Set a limit on the amount of memory this resource handler may use.
|
|
void | setVerbose (bool v) |
| Sets whether this manager and its resources habitually produce log output.
|
|
void | unload (const String &name, const String &group=RGN_DEFAULT) |
| Unloads a single resource by name.
|
|
void | unload (ResourceHandle handle) |
| Unloads a single resource by handle.
|
|
void | unloadAll (bool reloadableOnly=true) |
| Unloads all resources.
|
|
virtual void | unloadAll (Resource::LoadingFlags flags) |
| Unloads all resources.
|
|
void | unloadUnreferencedResources (bool reloadableOnly=true) |
| Unload all resources which are not referenced by any other object.
|
|
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.