
ResourceManager partial specialization for handle based managers
This manager defines the additional purge function which removes all unused entries from the cache. Entries are unused if no handle to them exist. This does not account for simple pointers to the actual resource objects.
Public Types | |
| typedef Handle< T > | Handle |
Public Member Functions | |
| void | clear () |
| clears the cache | |
| Handle< T > | get (const Key &k) |
retrieves the object identified by k | |
| unsigned int | getCount () const |
| bool | isCached (const Key &k) const |
checks if the object identified by k is cached | |
| void | purge () |
| removes all unused entries from the cache | |
| void | remove (const Key &k) |
| removes an object from the cache | |
| T * | trade (const Handle &h) |
| retrieves the actual object for the given handle | |
Protected Member Functions | |
| Handle | create (const Key &) |
| void | dispose (Handle &) |
| virtual T * | doCreate (const Key &)=0 |
| virtual std::string | toString (const Key &) const =0 |
| converts the given key to an identifier string | |
|
|||||
|
|
|
|
clears the cache All cached resources are destroyed. Note that calling this function will invalidate any pointer to a cached resource that may be held elsewhere. |
|
||||||||||
|
Implements ONE::util::ResourceManagerBase< T, Key, Handle< T > >. |
|
||||||||||
|
Implements ONE::util::ResourceManagerBase< T, Key, Handle< T > >. |
|
||||||||||
|
|
|
|
retrieves the object identified by
If
|
|
|
|
|
|
checks if the object identified by
The resource will not be loaded if
|
|
|||||||||
|
removes all unused entries from the cache The removed objects are destroyed. The decision to keep or remove an object is based on the handle's reference count, so this function will dispose resources that are only referenced by naked pointers. |
|
|
removes an object from the cache
The removed object is destroyed. Note that this will invalidate any pointer to the resource that may be held elsewhere. If
|
|
|
converts the given key to an identifier string The return value is stored in the resource map and must serve as a unique identifier for the key. |
|
||||||||||
|
retrieves the actual object for the given handle
|
1.4.3