diff options
author | Raj Kamal <rkamal@codeaurora.org> | 2015-06-23 12:55:15 -0700 |
---|---|---|
committer | Linux Build Service Account <lnxbuild@localhost> | 2015-10-06 03:22:25 -0600 |
commit | 20f9ced88123b0daca067ca55f1dc96c8b7b02e3 (patch) | |
tree | 774e7b179ead74ef6b9fb8f7566c75c02c466b60 /services/surfaceflinger/SurfaceFlinger.h | |
parent | 8eaa19460dcaaead5987332580ac338e20af456b (diff) | |
download | frameworks_native-20f9ced88123b0daca067ca55f1dc96c8b7b02e3.zip frameworks_native-20f9ced88123b0daca067ca55f1dc96c8b7b02e3.tar.gz frameworks_native-20f9ced88123b0daca067ca55f1dc96c8b7b02e3.tar.bz2 |
SurfaceFlinger: Add support for DisplayUtils
Add DisplayUtils class which uses the custom implementations
of ExLayer, ExSurfaceFlinger, ExHWComposer,
and ExVirtualDisplaySurface classes if needed
Change-Id: Ibdd8da5d3d0d602f42b76a15d0994c6aa98bee3f
Diffstat (limited to 'services/surfaceflinger/SurfaceFlinger.h')
-rw-r--r-- | services/surfaceflinger/SurfaceFlinger.h | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.h b/services/surfaceflinger/SurfaceFlinger.h index 3759a92..bb0bfc4 100644 --- a/services/surfaceflinger/SurfaceFlinger.h +++ b/services/surfaceflinger/SurfaceFlinger.h @@ -84,6 +84,8 @@ class SurfaceFlinger : public BnSurfaceComposer, private HWComposer::EventHandler { public: + friend class ExSurfaceFlinger; + static char const* getServiceName() ANDROID_API { return "SurfaceFlinger"; } @@ -235,6 +237,38 @@ private: virtual void onHotplugReceived(int disp, bool connected); /* ------------------------------------------------------------------------ + * Extensions + */ + virtual void updateExtendedMode() { } + + virtual void getIndexLOI(size_t /*dpy*/, + const LayerVector& /*currentLayers*/, + bool& /*bIgnoreLayers*/, + int& /*indexLOI*/) { } + + virtual bool updateLayerVisibleNonTransparentRegion( + const int& dpy, const sp<Layer>& layer, + bool& bIgnoreLayers, int& indexLOI, + uint32_t layerStack, const int& i); + + virtual void delayDPTransactionIfNeeded( + const Vector<DisplayState>& /*displays*/) { } + + virtual bool canDrawLayerinScreenShot( + const sp<const DisplayDevice>& hw, + const sp<Layer>& layer); + + virtual void isfreezeSurfacePresent( + bool& freezeSurfacePresent, + const sp<const DisplayDevice>& /*hw*/, + const int32_t& /*id*/) { freezeSurfacePresent = false; } + + virtual void setOrientationEventControl( + bool& /*freezeSurfacePresent*/, + const int32_t& /*id*/) { } + + virtual void updateVisibleRegionsDirty() { } + /* ------------------------------------------------------------------------ * Message handling */ void waitForEvent(); @@ -373,7 +407,7 @@ private: * Compositing */ void invalidateHwcGeometry(); - static void computeVisibleRegions( + void computeVisibleRegions(size_t dpy, const LayerVector& currentLayers, uint32_t layerStack, Region& dirtyRegion, Region& opaqueRegion); |