22 #ifndef FIFE_IMAGE_MANAGER_H
23 #define FIFE_IMAGE_MANAGER_H
36 #include "util/base/singleton.h"
37 #include "util/resource/resource.h"
38 #include "util/resource/resourcemanager.h"
99 virtual ImagePtr create(
const std::string& name, IResourceLoader* loader = 0);
119 virtual ImagePtr load(
const std::string& name, IResourceLoader* loader = 0);
136 virtual ImagePtr loadBlank(
const std::string& name, uint32_t width, uint32_t height);
161 virtual bool exists(
const std::string& name);
172 virtual bool exists(ResourceHandle handle);
184 virtual void reload(
const std::string& name);
196 virtual void reload(ResourceHandle handle);
230 virtual void free(
const std::string& name);
245 virtual void free(ResourceHandle handle);
285 virtual void remove(
ImagePtr& resource);
299 virtual void remove(
const std::string& name);
313 virtual void remove(ResourceHandle handle);
346 virtual ImagePtr get(
const std::string& name);
360 virtual ImagePtr get(ResourceHandle handle);
362 virtual ImagePtr getPtr(
const std::string& name);
363 virtual ImagePtr getPtr(ResourceHandle handle);
375 virtual void invalidate(
const std::string& name);
376 virtual void invalidate(ResourceHandle handle);
377 virtual void invalidateAll();
380 typedef std::map< ResourceHandle, ImagePtr > ImageHandleMap;
381 typedef std::map< ResourceHandle, ImagePtr >::iterator ImageHandleMapIterator;
382 typedef std::map< ResourceHandle, ImagePtr >::const_iterator ImageHandleMapConstIterator;
383 typedef std::pair< ResourceHandle, ImagePtr > ImageHandleMapPair;
385 typedef std::map< std::string, ImagePtr > ImageNameMap;
386 typedef std::map< std::string, ImagePtr >::iterator ImageNameMapIterator;
387 typedef std::map< std::string, ImagePtr >::const_iterator ImageNameMapConstIterator;
388 typedef std::pair< std::string, ImagePtr > ImageNameMapPair;
390 ImageHandleMap m_imgHandleMap;
392 ImageNameMap m_imgNameMap;
397 #endif //FIFE_IMAGE_MANAGER_H
virtual ImagePtr create(IResourceLoader *loader=0)
virtual ImagePtr loadBlank(uint32_t width, uint32_t height)
virtual bool exists(const std::string &name)
virtual size_t getTotalResourcesLoaded() const
virtual size_t getMemoryUsed() const
virtual size_t getTotalResourcesCreated() const
virtual void removeUnreferenced()
virtual void freeUnreferenced()
virtual void loadUnreferenced()
virtual ResourceHandle getResourceHandle(const std::string &name)
virtual void free(const std::string &name)
virtual void reload(const std::string &name)
virtual size_t getTotalResources() const
virtual ImagePtr add(Image *res)
credit to phoku for his NodeDisplay example which the visitor code is adapted from ( he coded the qua...
virtual ImagePtr load(const std::string &name, IResourceLoader *loader=0)