Loading libs/gui/ISurfaceComposer.cpp +19 −9 Original line number Diff line number Diff line Loading @@ -565,8 +565,10 @@ public: return reply.readParcelableVector(outLayers); } virtual status_t getCompositionPreference(ui::Dataspace* dataSpace, ui::PixelFormat* pixelFormat) const { virtual status_t getCompositionPreference(ui::Dataspace* defaultDataspace, ui::PixelFormat* defaultPixelFormat, ui::Dataspace* wideColorGamutDataspace, ui::PixelFormat* wideColorGamutPixelFormat) const { Parcel data, reply; status_t error = data.writeInterfaceToken(ISurfaceComposer::getInterfaceDescriptor()); if (error != NO_ERROR) { Loading @@ -578,8 +580,10 @@ public: } error = static_cast<status_t>(reply.readInt32()); if (error == NO_ERROR) { *dataSpace = static_cast<ui::Dataspace>(reply.readInt32()); *pixelFormat = static_cast<ui::PixelFormat>(reply.readInt32()); *defaultDataspace = static_cast<ui::Dataspace>(reply.readInt32()); *defaultPixelFormat = static_cast<ui::PixelFormat>(reply.readInt32()); *wideColorGamutDataspace = static_cast<ui::Dataspace>(reply.readInt32()); *wideColorGamutPixelFormat = static_cast<ui::PixelFormat>(reply.readInt32()); } return error; } Loading Loading @@ -925,13 +929,19 @@ status_t BnSurfaceComposer::onTransact( } case GET_COMPOSITION_PREFERENCE: { CHECK_INTERFACE(ISurfaceComposer, data, reply); ui::Dataspace dataSpace; ui::PixelFormat pixelFormat; status_t error = getCompositionPreference(&dataSpace, &pixelFormat); ui::Dataspace defaultDataspace; ui::PixelFormat defaultPixelFormat; ui::Dataspace wideColorGamutDataspace; ui::PixelFormat wideColorGamutPixelFormat; status_t error = getCompositionPreference(&defaultDataspace, &defaultPixelFormat, &wideColorGamutDataspace, &wideColorGamutPixelFormat); reply->writeInt32(error); if (error == NO_ERROR) { reply->writeInt32(static_cast<int32_t>(dataSpace)); reply->writeInt32(static_cast<int32_t>(pixelFormat)); reply->writeInt32(static_cast<int32_t>(defaultDataspace)); reply->writeInt32(static_cast<int32_t>(defaultPixelFormat)); reply->writeInt32(static_cast<int32_t>(wideColorGamutDataspace)); reply->writeInt32(static_cast<int32_t>(wideColorGamutDataspace)); } return NO_ERROR; } Loading libs/gui/SurfaceComposerClient.cpp +6 −3 Original line number Diff line number Diff line Loading @@ -866,9 +866,12 @@ void SurfaceComposerClient::setDisplayPowerMode(const sp<IBinder>& token, ComposerService::getComposerService()->setPowerMode(token, mode); } status_t SurfaceComposerClient::getCompositionPreference(ui::Dataspace* dataSpace, ui::PixelFormat* pixelFormat) { return ComposerService::getComposerService()->getCompositionPreference(dataSpace, pixelFormat); status_t SurfaceComposerClient::getCompositionPreference( ui::Dataspace* defaultDataspace, ui::PixelFormat* defaultPixelFormat, ui::Dataspace* wideColorGamutDataspace, ui::PixelFormat* wideColorGamutPixelFormat) { return ComposerService::getComposerService() ->getCompositionPreference(defaultDataspace, defaultPixelFormat, wideColorGamutDataspace, wideColorGamutPixelFormat); } status_t SurfaceComposerClient::clearAnimationFrameStats() { Loading libs/gui/include/gui/ISurfaceComposer.h +12 −3 Original line number Diff line number Diff line Loading @@ -280,10 +280,19 @@ public: */ virtual status_t getLayerDebugInfo(std::vector<LayerDebugInfo>* outLayers) const = 0; virtual status_t getCompositionPreference(ui::Dataspace* dataSpace, ui::PixelFormat* pixelFormat) const = 0; virtual bool isColorManagementUsed() const = 0; /* Gets the composition preference of the default data space and default pixel format, * as well as the wide color gamut data space and wide color gamut pixel format. * If the wide color gamut data space is V0_SRGB, then it implies that the platform * has no wide color gamut support. * * Requires the ACCESS_SURFACE_FLINGER permission. */ virtual status_t getCompositionPreference(ui::Dataspace* defaultDataspace, ui::PixelFormat* defaultPixelFormat, ui::Dataspace* wideColorGamutDataspace, ui::PixelFormat* wideColorGamutPixelFormat) const = 0; }; // ---------------------------------------------------------------------------- Loading libs/gui/include/gui/SurfaceComposerClient.h +9 −3 Original line number Diff line number Diff line Loading @@ -101,9 +101,15 @@ public: /* Triggers screen on/off or low power mode and waits for it to complete */ static void setDisplayPowerMode(const sp<IBinder>& display, int mode); // static status_t getCompositionPreference(ui::Dataspace* dataSpace, ui::PixelFormat* pixelFormat); /* Returns the composition preference of the default data space and default pixel format, * as well as the wide color gamut data space and wide color gamut pixel format. * If the wide color gamut data space is V0_SRGB, then it implies that the platform * has no wide color gamut support. */ static status_t getCompositionPreference(ui::Dataspace* defaultDataspace, ui::PixelFormat* defaultPixelFormat, ui::Dataspace* wideColorGamutDataspace, ui::PixelFormat* wideColorGamutPixelFormat); // ------------------------------------------------------------------------ // surface creation / destruction Loading libs/gui/tests/Surface_test.cpp +4 −2 Original line number Diff line number Diff line Loading @@ -628,8 +628,10 @@ public: status_t getLayerDebugInfo(std::vector<LayerDebugInfo>* /*layers*/) const override { return NO_ERROR; } status_t getCompositionPreference(ui::Dataspace* /*outDataSpace*/, ui::PixelFormat* /*outPixelFormat*/) const override { status_t getCompositionPreference( ui::Dataspace* /*outDefaultDataspace*/, ui::PixelFormat* /*outDefaultPixelFormat*/, ui::Dataspace* /*outWideColorGamutDataspace*/, ui::PixelFormat* /*outWideColorGamutPixelFormat*/) const override { return NO_ERROR; } Loading Loading
libs/gui/ISurfaceComposer.cpp +19 −9 Original line number Diff line number Diff line Loading @@ -565,8 +565,10 @@ public: return reply.readParcelableVector(outLayers); } virtual status_t getCompositionPreference(ui::Dataspace* dataSpace, ui::PixelFormat* pixelFormat) const { virtual status_t getCompositionPreference(ui::Dataspace* defaultDataspace, ui::PixelFormat* defaultPixelFormat, ui::Dataspace* wideColorGamutDataspace, ui::PixelFormat* wideColorGamutPixelFormat) const { Parcel data, reply; status_t error = data.writeInterfaceToken(ISurfaceComposer::getInterfaceDescriptor()); if (error != NO_ERROR) { Loading @@ -578,8 +580,10 @@ public: } error = static_cast<status_t>(reply.readInt32()); if (error == NO_ERROR) { *dataSpace = static_cast<ui::Dataspace>(reply.readInt32()); *pixelFormat = static_cast<ui::PixelFormat>(reply.readInt32()); *defaultDataspace = static_cast<ui::Dataspace>(reply.readInt32()); *defaultPixelFormat = static_cast<ui::PixelFormat>(reply.readInt32()); *wideColorGamutDataspace = static_cast<ui::Dataspace>(reply.readInt32()); *wideColorGamutPixelFormat = static_cast<ui::PixelFormat>(reply.readInt32()); } return error; } Loading Loading @@ -925,13 +929,19 @@ status_t BnSurfaceComposer::onTransact( } case GET_COMPOSITION_PREFERENCE: { CHECK_INTERFACE(ISurfaceComposer, data, reply); ui::Dataspace dataSpace; ui::PixelFormat pixelFormat; status_t error = getCompositionPreference(&dataSpace, &pixelFormat); ui::Dataspace defaultDataspace; ui::PixelFormat defaultPixelFormat; ui::Dataspace wideColorGamutDataspace; ui::PixelFormat wideColorGamutPixelFormat; status_t error = getCompositionPreference(&defaultDataspace, &defaultPixelFormat, &wideColorGamutDataspace, &wideColorGamutPixelFormat); reply->writeInt32(error); if (error == NO_ERROR) { reply->writeInt32(static_cast<int32_t>(dataSpace)); reply->writeInt32(static_cast<int32_t>(pixelFormat)); reply->writeInt32(static_cast<int32_t>(defaultDataspace)); reply->writeInt32(static_cast<int32_t>(defaultPixelFormat)); reply->writeInt32(static_cast<int32_t>(wideColorGamutDataspace)); reply->writeInt32(static_cast<int32_t>(wideColorGamutDataspace)); } return NO_ERROR; } Loading
libs/gui/SurfaceComposerClient.cpp +6 −3 Original line number Diff line number Diff line Loading @@ -866,9 +866,12 @@ void SurfaceComposerClient::setDisplayPowerMode(const sp<IBinder>& token, ComposerService::getComposerService()->setPowerMode(token, mode); } status_t SurfaceComposerClient::getCompositionPreference(ui::Dataspace* dataSpace, ui::PixelFormat* pixelFormat) { return ComposerService::getComposerService()->getCompositionPreference(dataSpace, pixelFormat); status_t SurfaceComposerClient::getCompositionPreference( ui::Dataspace* defaultDataspace, ui::PixelFormat* defaultPixelFormat, ui::Dataspace* wideColorGamutDataspace, ui::PixelFormat* wideColorGamutPixelFormat) { return ComposerService::getComposerService() ->getCompositionPreference(defaultDataspace, defaultPixelFormat, wideColorGamutDataspace, wideColorGamutPixelFormat); } status_t SurfaceComposerClient::clearAnimationFrameStats() { Loading
libs/gui/include/gui/ISurfaceComposer.h +12 −3 Original line number Diff line number Diff line Loading @@ -280,10 +280,19 @@ public: */ virtual status_t getLayerDebugInfo(std::vector<LayerDebugInfo>* outLayers) const = 0; virtual status_t getCompositionPreference(ui::Dataspace* dataSpace, ui::PixelFormat* pixelFormat) const = 0; virtual bool isColorManagementUsed() const = 0; /* Gets the composition preference of the default data space and default pixel format, * as well as the wide color gamut data space and wide color gamut pixel format. * If the wide color gamut data space is V0_SRGB, then it implies that the platform * has no wide color gamut support. * * Requires the ACCESS_SURFACE_FLINGER permission. */ virtual status_t getCompositionPreference(ui::Dataspace* defaultDataspace, ui::PixelFormat* defaultPixelFormat, ui::Dataspace* wideColorGamutDataspace, ui::PixelFormat* wideColorGamutPixelFormat) const = 0; }; // ---------------------------------------------------------------------------- Loading
libs/gui/include/gui/SurfaceComposerClient.h +9 −3 Original line number Diff line number Diff line Loading @@ -101,9 +101,15 @@ public: /* Triggers screen on/off or low power mode and waits for it to complete */ static void setDisplayPowerMode(const sp<IBinder>& display, int mode); // static status_t getCompositionPreference(ui::Dataspace* dataSpace, ui::PixelFormat* pixelFormat); /* Returns the composition preference of the default data space and default pixel format, * as well as the wide color gamut data space and wide color gamut pixel format. * If the wide color gamut data space is V0_SRGB, then it implies that the platform * has no wide color gamut support. */ static status_t getCompositionPreference(ui::Dataspace* defaultDataspace, ui::PixelFormat* defaultPixelFormat, ui::Dataspace* wideColorGamutDataspace, ui::PixelFormat* wideColorGamutPixelFormat); // ------------------------------------------------------------------------ // surface creation / destruction Loading
libs/gui/tests/Surface_test.cpp +4 −2 Original line number Diff line number Diff line Loading @@ -628,8 +628,10 @@ public: status_t getLayerDebugInfo(std::vector<LayerDebugInfo>* /*layers*/) const override { return NO_ERROR; } status_t getCompositionPreference(ui::Dataspace* /*outDataSpace*/, ui::PixelFormat* /*outPixelFormat*/) const override { status_t getCompositionPreference( ui::Dataspace* /*outDefaultDataspace*/, ui::PixelFormat* /*outDefaultPixelFormat*/, ui::Dataspace* /*outWideColorGamutDataspace*/, ui::PixelFormat* /*outWideColorGamutPixelFormat*/) const override { return NO_ERROR; } Loading