diff options
author | 2022-01-12 20:22:11 -0800 | |
---|---|---|
committer | 2022-01-13 08:07:58 -0800 | |
commit | dbbe3854efc2ceb6e0f5c2f0991161f6b7beea39 (patch) | |
tree | 67fe2c489cef63dac2179975ed7f1b1be64d7be7 /libs/renderengine/ExternalTexture.cpp | |
parent | 9f0835e72949f7ed0d7df35960047931a2051a2c (diff) |
SF: Make ExternalTexture mockable
Expose GraphicBuffer properties via ExternalTexture class. Within
SurfaceFlinger access the buffer via this proxy interface.
This allows us to inject and mock GraphicBuffers as needed.
Specifically this will be used to recreate layer state from
transaction traces.
Test: compiles
Bug: 200284593
Change-Id: I2e7f6bee28314b70eac477cfadbf9f94c4d70339
Diffstat (limited to 'libs/renderengine/ExternalTexture.cpp')
-rw-r--r-- | libs/renderengine/ExternalTexture.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/libs/renderengine/ExternalTexture.cpp b/libs/renderengine/ExternalTexture.cpp index eabff58eba..84771c0917 100644 --- a/libs/renderengine/ExternalTexture.cpp +++ b/libs/renderengine/ExternalTexture.cpp @@ -14,30 +14,32 @@ * limitations under the License. */ -#include <renderengine/ExternalTexture.h> #include <renderengine/RenderEngine.h> +#include <renderengine/impl/ExternalTexture.h> #include <ui/GraphicBuffer.h> #include "log/log_main.h" -namespace android::renderengine { +namespace android::renderengine::impl { -ExternalTexture::ExternalTexture(const sp<GraphicBuffer>& buffer, RenderEngine& renderEngine, - uint32_t usage) +ExternalTexture::ExternalTexture(const sp<GraphicBuffer>& buffer, + renderengine::RenderEngine& renderEngine, uint32_t usage) : mBuffer(buffer), mRenderEngine(renderEngine) { LOG_ALWAYS_FATAL_IF(buffer == nullptr, "Attempted to bind a null buffer to an external texture!"); // GLESRenderEngine has a separate texture cache for output buffers, - if (usage == Usage::WRITEABLE && - (mRenderEngine.getRenderEngineType() == RenderEngine::RenderEngineType::GLES || - mRenderEngine.getRenderEngineType() == RenderEngine::RenderEngineType::THREADED)) { + if (usage == WRITEABLE && + (mRenderEngine.getRenderEngineType() == + renderengine::RenderEngine::RenderEngineType::GLES || + mRenderEngine.getRenderEngineType() == + renderengine::RenderEngine::RenderEngineType::THREADED)) { return; } - mRenderEngine.mapExternalTextureBuffer(mBuffer, usage & Usage::WRITEABLE); + mRenderEngine.mapExternalTextureBuffer(mBuffer, usage & WRITEABLE); } ExternalTexture::~ExternalTexture() { mRenderEngine.unmapExternalTextureBuffer(mBuffer); } -} // namespace android::renderengine +} // namespace android::renderengine::impl |