28 #ifndef _ResourceGroupManager_H__
29 #define _ResourceGroupManager_H__
100 virtual void resourceGroupScriptingStarted(
const String& groupName,
size_t scriptCount) = 0;
108 virtual void scriptParseStarted(
const String& scriptName,
bool& skipThisScript) = 0;
112 virtual void scriptParseEnded(
const String& scriptName,
bool skipped) = 0;
114 virtual void resourceGroupScriptingEnded(
const String& groupName) = 0;
122 { (void)groupName; (void)resourceCount; }
139 { (void)description; }
155 virtual void resourceGroupLoadStarted(
const String& groupName,
size_t resourceCount) = 0;
159 virtual void resourceLoadStarted(
const ResourcePtr& resource) = 0;
162 virtual void resourceLoadEnded(
void) = 0;
168 virtual void worldGeometryStageStarted(
const String& description) = 0;
173 virtual void worldGeometryStageEnded(
void) = 0;
175 virtual void resourceGroupLoadEnded(
const String& groupName) = 0;
355 void removeFromIndex(
Archive* arch);
387 void fireResourceGroupScriptingStarted(
const String& groupName,
size_t scriptCount);
389 void fireScriptStarted(
const String& scriptName,
bool &skipScript);
391 void fireScriptEnded(
const String& scriptName,
bool skipped);
393 void fireResourceGroupScriptingEnded(
const String& groupName);
395 void fireResourceGroupLoadStarted(
const String& groupName,
size_t resourceCount);
397 void fireResourceLoadStarted(
const ResourcePtr& resource);
399 void fireResourceLoadEnded(
void);
401 void fireResourceGroupLoadEnded(
const String& groupName);
403 void fireResourceGroupPrepareStarted(
const String& groupName,
size_t resourceCount);
405 void fireResourcePrepareStarted(
const ResourcePtr& resource);
407 void fireResourcePrepareEnded(
void);
409 void fireResourceGroupPrepareEnded(
const String& groupName);
411 void fireResourceCreated(
const ResourcePtr& resource);
413 void fireResourceRemove(
const ResourcePtr& resource);
466 void createResourceGroup(
const String& name,
const bool inGlobalPool =
true);
508 void initialiseResourceGroup(
const String& name);
513 void initialiseAllResourceGroups(
void);
532 void prepareResourceGroup(
const String& name,
bool prepareMainResources =
true,
533 bool prepareWorldGeom =
true);
552 void loadResourceGroup(
const String& name,
bool loadMainResources =
true,
553 bool loadWorldGeom =
true);
570 void unloadResourceGroup(
const String& name,
bool reloadableOnly =
true);
583 void unloadUnreferencedResourcesInGroup(
const String& name,
584 bool reloadableOnly =
true);
595 void clearResourceGroup(
const String& name);
602 void destroyResourceGroup(
const String& name);
611 bool isResourceGroupInitialised(
const String& name);
620 bool isResourceGroupLoaded(
const String& name);
625 bool resourceGroupExists(
const String& name);
648 void addResourceLocation(
const String& name,
const String& locType,
649 const String& resGroup = DEFAULT_RESOURCE_GROUP_NAME,
bool recursive =
false,
bool readOnly =
true);
651 void removeResourceLocation(
const String& name,
652 const String& resGroup = DEFAULT_RESOURCE_GROUP_NAME);
654 bool resourceLocationExists(
const String& name,
655 const String& resGroup = DEFAULT_RESOURCE_GROUP_NAME);
691 void declareResource(
const String& name,
const String& resourceType,
692 const String& groupName = DEFAULT_RESOURCE_GROUP_NAME,
733 void declareResource(
const String& name,
const String& resourceType,
746 void undeclareResource(
const String& name,
const String& groupName);
768 const String& groupName = DEFAULT_RESOURCE_GROUP_NAME,
769 bool searchGroupsIfNotFound =
true,
Resource* resourceBeingLoaded = 0);
783 const String& groupName = DEFAULT_RESOURCE_GROUP_NAME);
821 bool resourceExists(
const String& group,
const String& filename);
826 bool resourceExistsInAnyGroup(
const String& filename);
834 const String& findGroupContainingResource(
const String& filename);
849 time_t resourceModifiedTime(
const String& group,
const String& filename);
890 void deleteResource(
const String& filename,
const String& groupName = DEFAULT_RESOURCE_GROUP_NAME,
902 void deleteMatchingResources(
const String& filePattern,
const String& groupName = DEFAULT_RESOURCE_GROUP_NAME,
936 void linkWorldGeometryToResourceGroup(
const String& group,
943 void unlinkWorldGeometryFromResourceGroup(
const String& group);
952 bool isResourceGroupInGlobalPool(
const String& name);
955 void shutdownAll(
void);
975 void _unregisterResourceManager(
const String& resourceType);
981 mResourceManagerMap.begin(), mResourceManagerMap.end()); }
1016 void _notifyResourceGroupChanged(
const String& oldGroup,
Resource* res);
1031 void _notifyWorldGeometryStageStarted(
const String& description);
1039 void _notifyWorldGeometryStageEnded(
void);
1053 ResourceDeclarationList getResourceDeclarationList(
const String& groupName);
1059 const LocationList& getResourceLocationList(
const String& groupName);