WebTexture2D.h 851 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #include <Atomic/Graphics/Texture2D.h>
  2. #include <Atomic/Graphics/Material.h>
  3. #include "WebRenderHandler.h"
  4. #pragma once
  5. namespace Atomic
  6. {
  7. class WebTexture2DPrivate;
  8. class ATOMIC_API WebTexture2D : public WebRenderHandler
  9. {
  10. friend class WebTexture2DPrivate;
  11. OBJECT(WebTexture2D);
  12. public:
  13. /// Construct.
  14. WebTexture2D(Context* context, int width = 1024, int height = 1024);
  15. /// Destruct.
  16. virtual ~WebTexture2D();
  17. virtual void SetCurrentSize(unsigned width, unsigned height);
  18. virtual void SetMaxSize(unsigned width, unsigned height);
  19. CefRenderHandler* GetCEFRenderHandler();
  20. Texture2D* GetTexture2D() const { return texture_; }
  21. Material* GetMaterial() const { return material_; }
  22. private:
  23. SharedPtr<Texture2D> texture_;
  24. SharedPtr<Material> material_;
  25. WebTexture2DPrivate* d_;
  26. };
  27. }