From d2112306330ce0c162bee4b864991962ca2b655a Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Tue, 7 Dec 2010 19:38:17 -0800 Subject: remove support for PUSH_BUFFER surfaces and overlays the same functionality is now supported through the h/w composer HAL, and YUV support in the GPU. Change-Id: I8146605449954b8e8fd7f78810b7d873c2d8f5bf --- include/camera/CameraHardwareInterface.h | 8 -- include/surfaceflinger/ISurface.h | 52 +------------ include/surfaceflinger/ISurfaceComposer.h | 1 - include/ui/IOverlay.h | 53 ------------- include/ui/Overlay.h | 119 ------------------------------ 5 files changed, 3 insertions(+), 230 deletions(-) delete mode 100644 include/ui/IOverlay.h delete mode 100644 include/ui/Overlay.h (limited to 'include') diff --git a/include/camera/CameraHardwareInterface.h b/include/camera/CameraHardwareInterface.h index 16f572c..3c6c94f 100644 --- a/include/camera/CameraHardwareInterface.h +++ b/include/camera/CameraHardwareInterface.h @@ -28,8 +28,6 @@ namespace android { -class Overlay; - /** * The size of image for display. */ @@ -130,12 +128,6 @@ public: virtual status_t startPreview() = 0; /** - * Only used if overlays are used for camera preview. - */ - virtual bool useOverlay() {return false;} - virtual status_t setOverlay(const sp &overlay) {return BAD_VALUE;} - - /** * Stop a previously started preview. */ virtual void stopPreview() = 0; diff --git a/include/surfaceflinger/ISurface.h b/include/surfaceflinger/ISurface.h index ddbe03d..cd0ee40 100644 --- a/include/surfaceflinger/ISurface.h +++ b/include/surfaceflinger/ISurface.h @@ -34,18 +34,15 @@ namespace android { typedef int32_t SurfaceID; -class IMemoryHeap; -class OverlayRef; class GraphicBuffer; class ISurface : public IInterface { protected: enum { - REGISTER_BUFFERS = IBinder::FIRST_CALL_TRANSACTION, - UNREGISTER_BUFFERS, - POST_BUFFER, // one-way transaction - CREATE_OVERLAY, + RESERVED0 = IBinder::FIRST_CALL_TRANSACTION, + RESERVED1, + RESERVED2, REQUEST_BUFFER, SET_BUFFER_COUNT, }; @@ -66,49 +63,6 @@ public: * sets the number of buffers dequeuable for this surface. */ virtual status_t setBufferCount(int bufferCount) = 0; - - // ------------------------------------------------------------------------ - // Deprecated... - // ------------------------------------------------------------------------ - - class BufferHeap { - public: - enum { - /* rotate source image */ - ROT_0 = 0, - ROT_90 = HAL_TRANSFORM_ROT_90, - ROT_180 = HAL_TRANSFORM_ROT_180, - ROT_270 = HAL_TRANSFORM_ROT_270, - }; - BufferHeap(); - - BufferHeap(uint32_t w, uint32_t h, - int32_t hor_stride, int32_t ver_stride, - PixelFormat format, const sp& heap); - - BufferHeap(uint32_t w, uint32_t h, - int32_t hor_stride, int32_t ver_stride, - PixelFormat format, uint32_t transform, uint32_t flags, - const sp& heap); - - ~BufferHeap(); - - uint32_t w; - uint32_t h; - int32_t hor_stride; - int32_t ver_stride; - PixelFormat format; - uint32_t transform; - uint32_t flags; - sp heap; - }; - - virtual status_t registerBuffers(const BufferHeap& buffers) = 0; - virtual void postBuffer(ssize_t offset) = 0; // one-way - virtual void unregisterBuffers() = 0; - - virtual sp createOverlay( - uint32_t w, uint32_t h, int32_t format, int32_t orientation) = 0; }; // ---------------------------------------------------------------------------- diff --git a/include/surfaceflinger/ISurfaceComposer.h b/include/surfaceflinger/ISurfaceComposer.h index db57859..382cbda 100644 --- a/include/surfaceflinger/ISurfaceComposer.h +++ b/include/surfaceflinger/ISurfaceComposer.h @@ -42,7 +42,6 @@ public: eDestroyBackbuffer = 0x00000020, eSecure = 0x00000080, eNonPremultiplied = 0x00000100, - ePushBuffers = 0x00000200, eOpaque = 0x00000400, eFXSurfaceNormal = 0x00000000, diff --git a/include/ui/IOverlay.h b/include/ui/IOverlay.h deleted file mode 100644 index af3add1..0000000 --- a/include/ui/IOverlay.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (C) 2007 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef ANDROID_IOVERLAY_H -#define ANDROID_IOVERLAY_H - -#include -#include - -#include -#include -#include -#include - -namespace android { - -class IOverlay : public IInterface -{ -public: - DECLARE_META_INTERFACE(Overlay); - - virtual void destroy() = 0; // one-way -}; - -// ---------------------------------------------------------------------------- - -class BnOverlay : public BnInterface -{ -public: - virtual status_t onTransact( uint32_t code, - const Parcel& data, - Parcel* reply, - uint32_t flags = 0); -}; - -// ---------------------------------------------------------------------------- - -}; // namespace android - -#endif // ANDROID_IOVERLAY_H diff --git a/include/ui/Overlay.h b/include/ui/Overlay.h deleted file mode 100644 index a9ae1c4..0000000 --- a/include/ui/Overlay.h +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Copyright (C) 2007 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef ANDROID_OVERLAY_H -#define ANDROID_OVERLAY_H - -#include -#include - -#include -#include -#include -#include - -#include -#include - -#include - -namespace android { - -class IMemory; -class IMemoryHeap; - -// ---------------------------------------------------------------------------- - -class OverlayRef : public LightRefBase -{ -public: - OverlayRef(overlay_handle_t, const sp&, - uint32_t w, uint32_t h, int32_t f, uint32_t ws, uint32_t hs); - - static sp readFromParcel(const Parcel& data); - static status_t writeToParcel(Parcel* reply, const sp& o); - -private: - friend class LightRefBase; - friend class Overlay; - - OverlayRef(); - virtual ~OverlayRef(); - - overlay_handle_t mOverlayHandle; - sp mOverlayChannel; - uint32_t mWidth; - uint32_t mHeight; - int32_t mFormat; - int32_t mWidthStride; - int32_t mHeightStride; - bool mOwnHandle; -}; - -// ---------------------------------------------------------------------------- - -class Overlay : public virtual RefBase -{ -public: - Overlay(const sp& overlayRef); - - /* destroys this overlay */ - void destroy(); - - /* get the HAL handle for this overlay */ - overlay_handle_t getHandleRef() const; - - /* blocks until an overlay buffer is available and return that buffer. */ - status_t dequeueBuffer(overlay_buffer_t* buffer); - - /* release the overlay buffer and post it */ - status_t queueBuffer(overlay_buffer_t buffer); - - /* change the width and height of the overlay */ - status_t resizeInput(uint32_t width, uint32_t height); - - status_t setCrop(uint32_t x, uint32_t y, uint32_t w, uint32_t h) ; - - status_t getCrop(uint32_t* x, uint32_t* y, uint32_t* w, uint32_t* h) ; - - /* set the buffer attributes */ - status_t setParameter(int param, int value); - - /* returns the address of a given buffer if supported, NULL otherwise. */ - void* getBufferAddress(overlay_buffer_t buffer); - - /* get physical informations about the overlay */ - uint32_t getWidth() const; - uint32_t getHeight() const; - int32_t getFormat() const; - int32_t getWidthStride() const; - int32_t getHeightStride() const; - int32_t getBufferCount() const; - status_t getStatus() const; - -private: - virtual ~Overlay(); - - sp mOverlayRef; - overlay_data_device_t *mOverlayData; - status_t mStatus; -}; - -// ---------------------------------------------------------------------------- - -}; // namespace android - -#endif // ANDROID_OVERLAY_H -- cgit v1.1