| 1234567891011121314151617181920212223242526272829303132333435 |
- //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
- //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
- #pragma once
- #include "BsScriptEnginePrerequisites.h"
- #include "Utility/BsModule.h"
- namespace bs
- {
- /** @addtogroup SBansheeEngine
- * @{
- */
- /** Keeps track of all loaded managed resources. */
- class BS_SCR_BE_EXPORT ManagedResourceManager : public Module <ManagedResourceManager>
- {
- public:
- ManagedResourceManager();
- ~ManagedResourceManager();
- /** Unloads all managed resources. */
- void clear();
- /** Register a newly created managed resource. */
- void registerManagedResource(const WeakResourceHandle<ManagedResource>& resource);
- /** Unregister a managed resource that's about to be destroyed. */
- void unregisterManagedResource(const WeakResourceHandle<ManagedResource>& resource);
- private:
- UnorderedMap<UUID, WeakResourceHandle<ManagedResource>> mResources;
- };
- /** @} */
- }
|