BsScriptResources.h 914 B

12345678910111213141516171819202122232425262728
  1. #pragma once
  2. #include "BsScriptEnginePrerequisites.h"
  3. #include "BsScriptObject.h"
  4. namespace BansheeEngine
  5. {
  6. /**
  7. * @brief Interop class between C++ & CLR for Resources & GameResourceManager.
  8. */
  9. class BS_SCR_BE_EXPORT ScriptResources : public ScriptObject<ScriptResources>
  10. {
  11. public:
  12. SCRIPT_OBJ(ENGINE_ASSEMBLY, "BansheeEngine", "Resources")
  13. private:
  14. ScriptResources(MonoObject* instance);
  15. /************************************************************************/
  16. /* CLR HOOKS */
  17. /************************************************************************/
  18. static MonoObject* internal_Load(MonoString* path, bool keepLoaded);
  19. static MonoObject* internal_LoadRef(MonoObject* reference, bool keepLoaded);
  20. static void internal_Release(ScriptResourceBase* resource);
  21. static void internal_ReleaseRef(ScriptResourceRef* resource);
  22. static void internal_UnloadUnused();
  23. };
  24. }