Loading services/surfaceflinger/DisplayHardware/HWC2.cpp +16 −2 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ #include <android/configuration.h> #include <algorithm> #include <inttypes.h> extern "C" { Loading Loading @@ -303,6 +304,12 @@ void Device::loadCapabilities() mHwcDevice->getCapabilities(mHwcDevice, &numCapabilities, asInt); } bool Device::hasCapability(HWC2::Capability capability) const { return std::find(mCapabilities.cbegin(), mCapabilities.cend(), capability) != mCapabilities.cend(); } void Device::loadFunctionPointers() { // For all of these early returns, we log an error message inside Loading Loading @@ -378,8 +385,10 @@ void Device::loadFunctionPointers() mSetLayerDisplayFrame)) return; if (!loadFunctionPointer(FunctionDescriptor::SetLayerPlaneAlpha, mSetLayerPlaneAlpha)) return; if (hasCapability(Capability::SidebandStream)) { if (!loadFunctionPointer(FunctionDescriptor::SetLayerSidebandStream, mSetLayerSidebandStream)) return; } if (!loadFunctionPointer(FunctionDescriptor::SetLayerSourceCrop, mSetLayerSourceCrop)) return; if (!loadFunctionPointer(FunctionDescriptor::SetLayerTransform, Loading Loading @@ -973,6 +982,11 @@ Error Layer::setPlaneAlpha(float alpha) Error Layer::setSidebandStream(const native_handle_t* stream) { if (!mDevice.hasCapability(Capability::SidebandStream)) { ALOGE("Attempted to call setSidebandStream without checking that the " "device supports sideband streams"); return Error::Unsupported; } int32_t intError = mDevice.mSetLayerSidebandStream(mDevice.mHwcDevice, mDisplayId, mId, stream); return static_cast<Error>(intError); Loading services/surfaceflinger/DisplayHardware/HWC2.h +2 −0 Original line number Diff line number Diff line Loading @@ -89,6 +89,8 @@ public: // as connected std::shared_ptr<Display> getDisplayById(hwc2_display_t id); bool hasCapability(HWC2::Capability capability) const; private: // Initialization methods Loading Loading
services/surfaceflinger/DisplayHardware/HWC2.cpp +16 −2 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ #include <android/configuration.h> #include <algorithm> #include <inttypes.h> extern "C" { Loading Loading @@ -303,6 +304,12 @@ void Device::loadCapabilities() mHwcDevice->getCapabilities(mHwcDevice, &numCapabilities, asInt); } bool Device::hasCapability(HWC2::Capability capability) const { return std::find(mCapabilities.cbegin(), mCapabilities.cend(), capability) != mCapabilities.cend(); } void Device::loadFunctionPointers() { // For all of these early returns, we log an error message inside Loading Loading @@ -378,8 +385,10 @@ void Device::loadFunctionPointers() mSetLayerDisplayFrame)) return; if (!loadFunctionPointer(FunctionDescriptor::SetLayerPlaneAlpha, mSetLayerPlaneAlpha)) return; if (hasCapability(Capability::SidebandStream)) { if (!loadFunctionPointer(FunctionDescriptor::SetLayerSidebandStream, mSetLayerSidebandStream)) return; } if (!loadFunctionPointer(FunctionDescriptor::SetLayerSourceCrop, mSetLayerSourceCrop)) return; if (!loadFunctionPointer(FunctionDescriptor::SetLayerTransform, Loading Loading @@ -973,6 +982,11 @@ Error Layer::setPlaneAlpha(float alpha) Error Layer::setSidebandStream(const native_handle_t* stream) { if (!mDevice.hasCapability(Capability::SidebandStream)) { ALOGE("Attempted to call setSidebandStream without checking that the " "device supports sideband streams"); return Error::Unsupported; } int32_t intError = mDevice.mSetLayerSidebandStream(mDevice.mHwcDevice, mDisplayId, mId, stream); return static_cast<Error>(intError); Loading
services/surfaceflinger/DisplayHardware/HWC2.h +2 −0 Original line number Diff line number Diff line Loading @@ -89,6 +89,8 @@ public: // as connected std::shared_ptr<Display> getDisplayById(hwc2_display_t id); bool hasCapability(HWC2::Capability capability) const; private: // Initialization methods Loading