BsScriptTexture2D.h 900 B

1234567891011121314151617181920212223242526272829303132
  1. #pragma once
  2. #include "BsScriptEnginePrerequisites.h"
  3. #include "BsScriptResource.h"
  4. #include "BsScriptObject.h"
  5. #include "CmTexture.h"
  6. namespace BansheeEngine
  7. {
  8. class BS_SCR_BE_EXPORT ScriptTexture2D : public ScriptResource, public ScriptObject<ScriptTexture2D>
  9. {
  10. public:
  11. static void initMetaData();
  12. void* getNativeRaw() const { return mTexture.get(); }
  13. HResource getNativeHandle() const { return mTexture; }
  14. void setNativeHandle(const HResource& resource);
  15. private:
  16. friend class ScriptResourceManager;
  17. static void internal_createInstance(MonoObject* instance, UINT32 format, UINT32 width, UINT32 height, bool hasMipmaps, bool gammaCorrection);
  18. static void internal_destroyInstance(ScriptTexture2D* nativeInstance);
  19. static void initRuntimeData();
  20. ScriptTexture2D(const HTexture& texture);
  21. ~ScriptTexture2D() {}
  22. HTexture mTexture;
  23. };
  24. }