diff options
Diffstat (limited to 'src/osd/modules/render/bgfx/texture.h')
-rw-r--r-- | src/osd/modules/render/bgfx/texture.h | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/osd/modules/render/bgfx/texture.h b/src/osd/modules/render/bgfx/texture.h index 7cb6d988150..ced0604dfcf 100644 --- a/src/osd/modules/render/bgfx/texture.h +++ b/src/osd/modules/render/bgfx/texture.h @@ -20,8 +20,8 @@ class bgfx_texture : public bgfx_texture_handle_provider { public: - bgfx_texture(std::string name, bgfx::TextureFormat::Enum format, uint16_t width, uint16_t height, uint32_t flags, void* data); - bgfx_texture(std::string name, bgfx::TextureFormat::Enum format, uint16_t width, uint16_t height, const bgfx::Memory* data, uint32_t flags = BGFX_SAMPLER_U_CLAMP | BGFX_SAMPLER_V_CLAMP); + bgfx_texture(std::string name, bgfx::TextureFormat::Enum format, uint16_t width, uint16_t width_margin, uint16_t height, uint32_t flags, void* data); + bgfx_texture(std::string name, bgfx::TextureFormat::Enum format, uint16_t width, uint16_t width_margin, uint16_t height, const bgfx::Memory* data, uint32_t flags = BGFX_SAMPLER_U_CLAMP | BGFX_SAMPLER_V_CLAMP, uint16_t pitch = UINT16_MAX, uint16_t rowpixels = 0, int width_div_factor = 1, int width_mul_factor = 1); virtual ~bgfx_texture(); // Getters @@ -29,16 +29,26 @@ public: bgfx::TextureFormat::Enum format() const { return m_format; } // bgfx_texture_handle_provider - virtual uint16_t width() const override { return m_width; } - virtual uint16_t height() const override { return m_height; } virtual bgfx::TextureHandle texture() const override { return m_texture; } virtual bool is_target() const override { return false; } + virtual uint16_t width() const override { return m_width; } + virtual uint16_t width_margin() const override { return m_width_margin; } + virtual uint16_t height() const override { return m_height; } + virtual uint16_t rowpixels() const override { return m_rowpixels; } + virtual int width_div_factor() const override { return m_width_div_factor; } + virtual int width_mul_factor() const override { return m_width_mul_factor; } + + void update(const bgfx::Memory *data, uint16_t pitch = UINT16_MAX, uint16_t width_margin = 0); protected: std::string m_name; bgfx::TextureFormat::Enum m_format; uint16_t m_width; + uint16_t m_width_margin; uint16_t m_height; + uint16_t m_rowpixels; + int m_width_div_factor; + int m_width_mul_factor; bgfx::TextureHandle m_texture; }; |