diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2015-07-17 13:00:33 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2015-07-24 09:18:06 +0000 |
commit | f71b223452f7f0eda62eddfc173c0d36d86dc32b (patch) | |
tree | f58f40a45b047e6f047151fc14d13a2b5e942904 /src/render/io | |
parent | 098b2181e98cf57b56712d7a335a0f3027653ff0 (diff) |
TextureDataManager/TextureImageData improved
* Removed RenderTextureProvider which was never used
* Add cleanup method in TextureImageData to reduced memory consumption when
waiting for the object to be recycled by the resources manager
* Improved the TextureDataManager to keep track for each functor of all the
associated TextureImages which allows to release TextureImageData that we
don't need to keep
Change-Id: Id805fc0e7ef8d7c586eb77382bc66cd5e4cc8107
Task-number: QTBUG-47223
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/io')
-rw-r--r-- | src/render/io/texturedata.cpp | 13 | ||||
-rw-r--r-- | src/render/io/texturedata.h | 3 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/render/io/texturedata.cpp b/src/render/io/texturedata.cpp index 745e0f54e..893862731 100644 --- a/src/render/io/texturedata.cpp +++ b/src/render/io/texturedata.cpp @@ -52,6 +52,19 @@ TexImageData::TexImageData() { } +TexImageData::~TexImageData() +{ +} + +void TexImageData::cleanup() +{ + m_width = -1; + m_height = -1; + m_depth = -1; + m_isCompressed = false; + m_data.clear(); +} + void TexImageData::setImage(const QImage &image) { m_width = image.width(); diff --git a/src/render/io/texturedata.h b/src/render/io/texturedata.h index ae8b14072..a403b0e8c 100644 --- a/src/render/io/texturedata.h +++ b/src/render/io/texturedata.h @@ -50,8 +50,9 @@ class QT3DRENDERERSHARED_EXPORT TexImageData { public: TexImageData(); + ~TexImageData(); - ~TexImageData() {} + void cleanup(); bool isCompressed() const { return m_isCompressed; } |