Loading graphics/composer/2.1/utils/hal/include/composer-hal/2.1/ComposerCommandEngine.h +49 −43 Original line number Diff line number Diff line Loading @@ -40,7 +40,9 @@ namespace hal { class ComposerCommandEngine : protected CommandReaderBase { public: ComposerCommandEngine(ComposerHal* hal, ComposerResources* resources) : mHal(hal), mResources(resources) {} : mHal(hal), mResources(resources) { mWriter = createCommandWriter(kWriterInitialSize); } virtual ~ComposerCommandEngine() = default; Loading Loading @@ -74,16 +76,16 @@ class ComposerCommandEngine : protected CommandReaderBase { return Error::BAD_PARAMETER; } return mWriter.writeQueue(outQueueChanged, outCommandLength, outCommandHandles) return mWriter->writeQueue(outQueueChanged, outCommandLength, outCommandHandles) ? Error::NONE : Error::NO_RESOURCES; } const MQDescriptorSync<uint32_t>* getOutputMQDescriptor() { return mWriter.getMQDescriptor(); } const MQDescriptorSync<uint32_t>* getOutputMQDescriptor() { return mWriter->getMQDescriptor(); } void reset() { CommandReaderBase::reset(); mWriter.reset(); mWriter->reset(); } protected: Loading Loading @@ -140,13 +142,17 @@ class ComposerCommandEngine : protected CommandReaderBase { } } virtual std::unique_ptr<CommandWriterBase> createCommandWriter(size_t writerInitialSize) { return std::make_unique<CommandWriterBase>(writerInitialSize); } bool executeSelectDisplay(uint16_t length) { if (length != CommandWriterBase::kSelectDisplayLength) { return false; } mCurrentDisplay = read64(); mWriter.selectDisplay(mCurrentDisplay); mWriter->selectDisplay(mCurrentDisplay); return true; } Loading Loading @@ -174,7 +180,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setColorTransform(mCurrentDisplay, matrix, transform); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -208,7 +214,7 @@ class ComposerCommandEngine : protected CommandReaderBase { close(fence); } if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -239,7 +245,7 @@ class ComposerCommandEngine : protected CommandReaderBase { close(fence); } if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -260,10 +266,10 @@ class ComposerCommandEngine : protected CommandReaderBase { &displayRequestMask, &requestedLayers, &requestMasks); mResources->setDisplayMustValidateState(mCurrentDisplay, false); if (err == Error::NONE) { mWriter.setChangedCompositionTypes(changedLayers, compositionTypes); mWriter.setDisplayRequests(displayRequestMask, requestedLayers, requestMasks); mWriter->setChangedCompositionTypes(changedLayers, compositionTypes); mWriter->setDisplayRequests(displayRequestMask, requestedLayers, requestMasks); } else { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -283,9 +289,9 @@ class ComposerCommandEngine : protected CommandReaderBase { ? Error::NOT_VALIDATED : mHal->presentDisplay(mCurrentDisplay, &presentFence, &layers, &fences); if (err == Error::NONE) { mWriter.setPresentOrValidateResult(1); mWriter.setPresentFence(presentFence); mWriter.setReleaseFences(layers, fences); mWriter->setPresentOrValidateResult(1); mWriter->setPresentFence(presentFence); mWriter->setReleaseFences(layers, fences); return true; } } Loading @@ -301,11 +307,11 @@ class ComposerCommandEngine : protected CommandReaderBase { &displayRequestMask, &requestedLayers, &requestMasks); mResources->setDisplayMustValidateState(mCurrentDisplay, false); if (err == Error::NONE) { mWriter.setPresentOrValidateResult(0); mWriter.setChangedCompositionTypes(changedLayers, compositionTypes); mWriter.setDisplayRequests(displayRequestMask, requestedLayers, requestMasks); mWriter->setPresentOrValidateResult(0); mWriter->setChangedCompositionTypes(changedLayers, compositionTypes); mWriter->setDisplayRequests(displayRequestMask, requestedLayers, requestMasks); } else { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -318,7 +324,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->acceptDisplayChanges(mCurrentDisplay); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -334,10 +340,10 @@ class ComposerCommandEngine : protected CommandReaderBase { std::vector<int> fences; auto err = mHal->presentDisplay(mCurrentDisplay, &presentFence, &layers, &fences); if (err == Error::NONE) { mWriter.setPresentFence(presentFence); mWriter.setReleaseFences(layers, fences); mWriter->setPresentFence(presentFence); mWriter->setReleaseFences(layers, fences); } else { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -351,7 +357,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerCursorPosition(mCurrentDisplay, mCurrentLayer, readSigned(), readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -382,7 +388,7 @@ class ComposerCommandEngine : protected CommandReaderBase { close(fence); } if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -397,7 +403,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto damage = readRegion(length / 4); auto err = mHal->setLayerSurfaceDamage(mCurrentDisplay, mCurrentLayer, damage); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -410,7 +416,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerBlendMode(mCurrentDisplay, mCurrentLayer, readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -423,7 +429,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerColor(mCurrentDisplay, mCurrentLayer, readColor()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -436,7 +442,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerCompositionType(mCurrentDisplay, mCurrentLayer, readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -449,7 +455,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerDataspace(mCurrentDisplay, mCurrentLayer, readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -462,7 +468,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerDisplayFrame(mCurrentDisplay, mCurrentLayer, readRect()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -475,7 +481,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerPlaneAlpha(mCurrentDisplay, mCurrentLayer, readFloat()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -496,7 +502,7 @@ class ComposerCommandEngine : protected CommandReaderBase { err = mHal->setLayerSidebandStream(mCurrentDisplay, mCurrentLayer, stream); } if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -509,7 +515,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerSourceCrop(mCurrentDisplay, mCurrentLayer, readFRect()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -522,7 +528,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerTransform(mCurrentDisplay, mCurrentLayer, readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -537,7 +543,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto region = readRegion(length / 4); auto err = mHal->setLayerVisibleRegion(mCurrentDisplay, mCurrentLayer, region); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -550,7 +556,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerZOrder(mCurrentDisplay, mCurrentLayer, read()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -579,12 +585,12 @@ class ComposerCommandEngine : protected CommandReaderBase { }; } ComposerHal* mHal; ComposerResources* mResources; // 64KiB minus a small space for metadata such as read/write pointers static constexpr size_t kWriterInitialSize = 64 * 1024 / sizeof(uint32_t) - 16; CommandWriterBase mWriter{kWriterInitialSize}; ComposerHal* mHal; ComposerResources* mResources; std::unique_ptr<CommandWriterBase> mWriter; Display mCurrentDisplay = 0; Layer mCurrentLayer = 0; Loading graphics/composer/2.2/utils/hal/include/composer-hal/2.2/ComposerCommandEngine.h +7 −2 Original line number Diff line number Diff line Loading @@ -49,6 +49,11 @@ class ComposerCommandEngine : public V2_1::hal::ComposerCommandEngine { } } std::unique_ptr<V2_1::CommandWriterBase> createCommandWriter( size_t writerInitialSize) override { return std::make_unique<CommandWriterBase>(writerInitialSize); } bool executeSetLayerPerFrameMetadata(uint16_t length) { // (key, value) pairs if (length % 2 != 0) { Loading @@ -65,7 +70,7 @@ class ComposerCommandEngine : public V2_1::hal::ComposerCommandEngine { auto err = mHal->setLayerPerFrameMetadata(mCurrentDisplay, mCurrentLayer, metadata); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -78,7 +83,7 @@ class ComposerCommandEngine : public V2_1::hal::ComposerCommandEngine { auto err = mHal->setLayerFloatColor(mCurrentDisplay, mCurrentLayer, readFloatColor()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading graphics/composer/2.3/utils/hal/include/composer-hal/2.3/ComposerCommandEngine.h +8 −3 Original line number Diff line number Diff line Loading @@ -50,6 +50,11 @@ class ComposerCommandEngine : public V2_2::hal::ComposerCommandEngine { } } std::unique_ptr<V2_1::CommandWriterBase> createCommandWriter( size_t writerInitialSize) override { return std::make_unique<CommandWriterBase>(writerInitialSize); } bool executeSetLayerColorTransform(uint16_t length) { if (length != CommandWriterBase::kSetLayerColorTransformLength) { return false; Loading @@ -61,7 +66,7 @@ class ComposerCommandEngine : public V2_2::hal::ComposerCommandEngine { } auto err = mHal->setLayerColorTransform(mCurrentDisplay, mCurrentLayer, matrix); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -97,7 +102,7 @@ class ComposerCommandEngine : public V2_2::hal::ComposerCommandEngine { } auto err = mHal->setLayerPerFrameMetadataBlobs(mCurrentDisplay, mCurrentLayer, metadata); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; } Loading @@ -111,8 +116,8 @@ class ComposerCommandEngine : public V2_2::hal::ComposerCommandEngine { private: using BaseType2_1 = V2_1::hal::ComposerCommandEngine; using BaseType2_1::mWriter; using BaseType2_2 = V2_2::hal::ComposerCommandEngine; using BaseType2_1::mWriter; ComposerHal* mHal; }; Loading Loading
graphics/composer/2.1/utils/hal/include/composer-hal/2.1/ComposerCommandEngine.h +49 −43 Original line number Diff line number Diff line Loading @@ -40,7 +40,9 @@ namespace hal { class ComposerCommandEngine : protected CommandReaderBase { public: ComposerCommandEngine(ComposerHal* hal, ComposerResources* resources) : mHal(hal), mResources(resources) {} : mHal(hal), mResources(resources) { mWriter = createCommandWriter(kWriterInitialSize); } virtual ~ComposerCommandEngine() = default; Loading Loading @@ -74,16 +76,16 @@ class ComposerCommandEngine : protected CommandReaderBase { return Error::BAD_PARAMETER; } return mWriter.writeQueue(outQueueChanged, outCommandLength, outCommandHandles) return mWriter->writeQueue(outQueueChanged, outCommandLength, outCommandHandles) ? Error::NONE : Error::NO_RESOURCES; } const MQDescriptorSync<uint32_t>* getOutputMQDescriptor() { return mWriter.getMQDescriptor(); } const MQDescriptorSync<uint32_t>* getOutputMQDescriptor() { return mWriter->getMQDescriptor(); } void reset() { CommandReaderBase::reset(); mWriter.reset(); mWriter->reset(); } protected: Loading Loading @@ -140,13 +142,17 @@ class ComposerCommandEngine : protected CommandReaderBase { } } virtual std::unique_ptr<CommandWriterBase> createCommandWriter(size_t writerInitialSize) { return std::make_unique<CommandWriterBase>(writerInitialSize); } bool executeSelectDisplay(uint16_t length) { if (length != CommandWriterBase::kSelectDisplayLength) { return false; } mCurrentDisplay = read64(); mWriter.selectDisplay(mCurrentDisplay); mWriter->selectDisplay(mCurrentDisplay); return true; } Loading Loading @@ -174,7 +180,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setColorTransform(mCurrentDisplay, matrix, transform); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -208,7 +214,7 @@ class ComposerCommandEngine : protected CommandReaderBase { close(fence); } if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -239,7 +245,7 @@ class ComposerCommandEngine : protected CommandReaderBase { close(fence); } if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -260,10 +266,10 @@ class ComposerCommandEngine : protected CommandReaderBase { &displayRequestMask, &requestedLayers, &requestMasks); mResources->setDisplayMustValidateState(mCurrentDisplay, false); if (err == Error::NONE) { mWriter.setChangedCompositionTypes(changedLayers, compositionTypes); mWriter.setDisplayRequests(displayRequestMask, requestedLayers, requestMasks); mWriter->setChangedCompositionTypes(changedLayers, compositionTypes); mWriter->setDisplayRequests(displayRequestMask, requestedLayers, requestMasks); } else { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -283,9 +289,9 @@ class ComposerCommandEngine : protected CommandReaderBase { ? Error::NOT_VALIDATED : mHal->presentDisplay(mCurrentDisplay, &presentFence, &layers, &fences); if (err == Error::NONE) { mWriter.setPresentOrValidateResult(1); mWriter.setPresentFence(presentFence); mWriter.setReleaseFences(layers, fences); mWriter->setPresentOrValidateResult(1); mWriter->setPresentFence(presentFence); mWriter->setReleaseFences(layers, fences); return true; } } Loading @@ -301,11 +307,11 @@ class ComposerCommandEngine : protected CommandReaderBase { &displayRequestMask, &requestedLayers, &requestMasks); mResources->setDisplayMustValidateState(mCurrentDisplay, false); if (err == Error::NONE) { mWriter.setPresentOrValidateResult(0); mWriter.setChangedCompositionTypes(changedLayers, compositionTypes); mWriter.setDisplayRequests(displayRequestMask, requestedLayers, requestMasks); mWriter->setPresentOrValidateResult(0); mWriter->setChangedCompositionTypes(changedLayers, compositionTypes); mWriter->setDisplayRequests(displayRequestMask, requestedLayers, requestMasks); } else { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -318,7 +324,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->acceptDisplayChanges(mCurrentDisplay); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -334,10 +340,10 @@ class ComposerCommandEngine : protected CommandReaderBase { std::vector<int> fences; auto err = mHal->presentDisplay(mCurrentDisplay, &presentFence, &layers, &fences); if (err == Error::NONE) { mWriter.setPresentFence(presentFence); mWriter.setReleaseFences(layers, fences); mWriter->setPresentFence(presentFence); mWriter->setReleaseFences(layers, fences); } else { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -351,7 +357,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerCursorPosition(mCurrentDisplay, mCurrentLayer, readSigned(), readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -382,7 +388,7 @@ class ComposerCommandEngine : protected CommandReaderBase { close(fence); } if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -397,7 +403,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto damage = readRegion(length / 4); auto err = mHal->setLayerSurfaceDamage(mCurrentDisplay, mCurrentLayer, damage); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -410,7 +416,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerBlendMode(mCurrentDisplay, mCurrentLayer, readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -423,7 +429,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerColor(mCurrentDisplay, mCurrentLayer, readColor()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -436,7 +442,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerCompositionType(mCurrentDisplay, mCurrentLayer, readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -449,7 +455,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerDataspace(mCurrentDisplay, mCurrentLayer, readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -462,7 +468,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerDisplayFrame(mCurrentDisplay, mCurrentLayer, readRect()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -475,7 +481,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerPlaneAlpha(mCurrentDisplay, mCurrentLayer, readFloat()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -496,7 +502,7 @@ class ComposerCommandEngine : protected CommandReaderBase { err = mHal->setLayerSidebandStream(mCurrentDisplay, mCurrentLayer, stream); } if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -509,7 +515,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerSourceCrop(mCurrentDisplay, mCurrentLayer, readFRect()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -522,7 +528,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerTransform(mCurrentDisplay, mCurrentLayer, readSigned()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -537,7 +543,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto region = readRegion(length / 4); auto err = mHal->setLayerVisibleRegion(mCurrentDisplay, mCurrentLayer, region); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -550,7 +556,7 @@ class ComposerCommandEngine : protected CommandReaderBase { auto err = mHal->setLayerZOrder(mCurrentDisplay, mCurrentLayer, read()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -579,12 +585,12 @@ class ComposerCommandEngine : protected CommandReaderBase { }; } ComposerHal* mHal; ComposerResources* mResources; // 64KiB minus a small space for metadata such as read/write pointers static constexpr size_t kWriterInitialSize = 64 * 1024 / sizeof(uint32_t) - 16; CommandWriterBase mWriter{kWriterInitialSize}; ComposerHal* mHal; ComposerResources* mResources; std::unique_ptr<CommandWriterBase> mWriter; Display mCurrentDisplay = 0; Layer mCurrentLayer = 0; Loading
graphics/composer/2.2/utils/hal/include/composer-hal/2.2/ComposerCommandEngine.h +7 −2 Original line number Diff line number Diff line Loading @@ -49,6 +49,11 @@ class ComposerCommandEngine : public V2_1::hal::ComposerCommandEngine { } } std::unique_ptr<V2_1::CommandWriterBase> createCommandWriter( size_t writerInitialSize) override { return std::make_unique<CommandWriterBase>(writerInitialSize); } bool executeSetLayerPerFrameMetadata(uint16_t length) { // (key, value) pairs if (length % 2 != 0) { Loading @@ -65,7 +70,7 @@ class ComposerCommandEngine : public V2_1::hal::ComposerCommandEngine { auto err = mHal->setLayerPerFrameMetadata(mCurrentDisplay, mCurrentLayer, metadata); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading @@ -78,7 +83,7 @@ class ComposerCommandEngine : public V2_1::hal::ComposerCommandEngine { auto err = mHal->setLayerFloatColor(mCurrentDisplay, mCurrentLayer, readFloatColor()); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading
graphics/composer/2.3/utils/hal/include/composer-hal/2.3/ComposerCommandEngine.h +8 −3 Original line number Diff line number Diff line Loading @@ -50,6 +50,11 @@ class ComposerCommandEngine : public V2_2::hal::ComposerCommandEngine { } } std::unique_ptr<V2_1::CommandWriterBase> createCommandWriter( size_t writerInitialSize) override { return std::make_unique<CommandWriterBase>(writerInitialSize); } bool executeSetLayerColorTransform(uint16_t length) { if (length != CommandWriterBase::kSetLayerColorTransformLength) { return false; Loading @@ -61,7 +66,7 @@ class ComposerCommandEngine : public V2_2::hal::ComposerCommandEngine { } auto err = mHal->setLayerColorTransform(mCurrentDisplay, mCurrentLayer, matrix); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; Loading Loading @@ -97,7 +102,7 @@ class ComposerCommandEngine : public V2_2::hal::ComposerCommandEngine { } auto err = mHal->setLayerPerFrameMetadataBlobs(mCurrentDisplay, mCurrentLayer, metadata); if (err != Error::NONE) { mWriter.setError(getCommandLoc(), err); mWriter->setError(getCommandLoc(), err); } return true; } Loading @@ -111,8 +116,8 @@ class ComposerCommandEngine : public V2_2::hal::ComposerCommandEngine { private: using BaseType2_1 = V2_1::hal::ComposerCommandEngine; using BaseType2_1::mWriter; using BaseType2_2 = V2_2::hal::ComposerCommandEngine; using BaseType2_1::mWriter; ComposerHal* mHal; }; Loading