Browse Source

Added template version of ReleaseResource similar to the GetResource function.

damu 9 years ago
parent
commit
43515e1c91
1 changed files with 8 additions and 0 deletions
  1. 8 0
      Source/Urho3D/Resource/ResourceCache.h

+ 8 - 0
Source/Urho3D/Resource/ResourceCache.h

@@ -164,6 +164,8 @@ public:
     template <class T> T* GetExistingResource(const String& name);
     /// Template version of loading a resource without storing it to the cache.
     template <class T> SharedPtr<T> GetTempResource(const String& name, bool sendEventOnFailure = true);
+    /// Template version of releasing a resource by name.
+    template <class T> void ReleaseResource(const String& name, bool force = false);
     /// Template version of queueing a resource background load.
     template <class T> bool BackgroundLoadResource(const String& name, bool sendEventOnFailure = true, Resource* caller = 0);
     /// Template version of returning loaded resources of a specific type.
@@ -264,6 +266,12 @@ template <class T> T* ResourceCache::GetResource(const String& name, bool sendEv
     return static_cast<T*>(GetResource(type, name, sendEventOnFailure));
 }
 
+template <class T> void ResourceCache::ReleaseResource(const String& name, bool force)
+{
+    StringHash type = T::GetTypeStatic();
+    static_cast<T*>(ReleaseResource(type, name, force));
+}
+
 template <class T> SharedPtr<T> ResourceCache::GetTempResource(const String& name, bool sendEventOnFailure)
 {
     StringHash type = T::GetTypeStatic();