28 #ifndef _CEGUIImageManager_h_
29 #define _CEGUIImageManager_h_
31 #include "CEGUI/Singleton.h"
32 #include "CEGUI/ChainedXMLHandler.h"
33 #include "CEGUI/String.h"
34 #include "CEGUI/Size.h"
35 #include "CEGUI/ImageFactory.h"
36 #include "CEGUI/Logger.h"
37 #include "CEGUI/Exceptions.h"
38 #include "CEGUI/IteratorBase.h"
42 # pragma warning(push)
43 # pragma warning(disable : 4251)
79 void addImageType(
const String& name);
98 void removeImageType(
const String& name);
112 bool isImageTypeAvailable(
const String& name)
const;
137 void destroy(
Image& image);
138 void destroy(
const String& name);
142 bool isDefined(
const String& name)
const;
144 uint getImageCount()
const;
146 void loadImageset(
const String& filename,
const String& resource_group =
"");
147 void loadImagesetFromString(
const String& source);
149 void destroyImageCollection(
const String& prefix,
150 const bool delete_texture =
true);
152 void addFromImageFile(
const String& name,
154 const String& resource_group =
"");
163 void notifyDisplaySizeChanged(
const Sizef& size);
172 static void setImagesetDefaultResourceGroup(
const String& resourceGroup)
173 { d_imagesetDefaultResourceGroup = resourceGroup; }
183 static const String& getImagesetDefaultResourceGroup()
184 {
return d_imagesetDefaultResourceGroup; }
187 const String& getSchemaName()
const;
188 const String& getDefaultResourceGroup()
const;
191 typedef std::map<String, std::pair<Image*, ImageFactory*>,
208 void elementEndLocal(
const String& element);
215 void destroy(ImageMap::iterator& iter);
221 void validateImagesetFileVersion(
const XMLAttributes& attrs);
224 static String d_imagesetDefaultResourceGroup;
227 ImageFactoryRegistry d_factories;
233 template <
typename T>
238 "Image type already exists: " + name));
242 Logger::getSingleton().logEvent(
243 "[CEGUI::ImageManager] Registered Image type: " + name);
249 #if defined(_MSC_VER)
250 # pragma warning(pop)
253 #endif // end of guard _CEGUIImageManager_h_