diff options
Diffstat (limited to 'opengl/system/OpenglSystemCommon/gralloc_cb.h')
-rw-r--r-- | opengl/system/OpenglSystemCommon/gralloc_cb.h | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/opengl/system/OpenglSystemCommon/gralloc_cb.h b/opengl/system/OpenglSystemCommon/gralloc_cb.h deleted file mode 100644 index d2d6f352..00000000 --- a/opengl/system/OpenglSystemCommon/gralloc_cb.h +++ /dev/null @@ -1,114 +0,0 @@ -/* -* Copyright 2011 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 __GRALLOC_CB_H__ -#define __GRALLOC_CB_H__ - -#include <hardware/hardware.h> -#include <hardware/gralloc.h> -#include <cutils/native_handle.h> - -#define BUFFER_HANDLE_MAGIC ((int)0xabfabfab) -#define CB_HANDLE_NUM_INTS(nfds) (int)((sizeof(cb_handle_t) - (nfds)*sizeof(int)) / sizeof(int)) - -// -// Our buffer handle structure -// -struct cb_handle_t : public native_handle { - - cb_handle_t(int p_fd, int p_ashmemSize, int p_usage, - int p_width, int p_height, int p_frameworkFormat, - int p_format, int p_glFormat, int p_glType) : - fd(p_fd), - magic(BUFFER_HANDLE_MAGIC), - usage(p_usage), - width(p_width), - height(p_height), - frameworkFormat(p_frameworkFormat), - format(p_format), - glFormat(p_glFormat), - glType(p_glType), - ashmemSize(p_ashmemSize), - ashmemBase(0), - ashmemBasePid(0), - mappedPid(0), - lockedLeft(0), - lockedTop(0), - lockedWidth(0), - lockedHeight(0), - hostHandle(0) - { - version = sizeof(native_handle); - numFds = 0; - numInts = CB_HANDLE_NUM_INTS(numFds); - } - - ~cb_handle_t() { - magic = 0; - } - - void setFd(int p_fd) { - if (p_fd >= 0) { - numFds = 1; - } - else { - numFds = 0; - } - fd = p_fd; - numInts = CB_HANDLE_NUM_INTS(numFds); - } - - static bool validate(const cb_handle_t* hnd) { - return (hnd && - hnd->version == sizeof(native_handle) && - hnd->magic == BUFFER_HANDLE_MAGIC && - hnd->numInts == CB_HANDLE_NUM_INTS(hnd->numFds)); - } - - bool canBePosted() { - return (0 != (usage & GRALLOC_USAGE_HW_FB)); - } - - // file-descriptors - int fd; // ashmem fd (-1 of ashmem region did not allocated, i.e. no SW access needed) - - // ints - int magic; // magic number in order to validate a pointer to be a cb_handle_t - int usage; // usage bits the buffer was created with - int width; // buffer width - int height; // buffer height - int frameworkFormat; // format requested by the Android framework - int format; // real internal pixel format format - int glFormat; // OpenGL format enum used for host h/w color buffer - int glType; // OpenGL type enum used when uploading to host - int ashmemSize; // ashmem region size for the buffer (0 unless is HW_FB buffer or - // s/w access is needed) - union { - intptr_t ashmemBase; // CPU address of the mapped ashmem region - uint64_t padding; // enforce same size on 32-bit/64-bit - } __attribute__((aligned(8))); - - int ashmemBasePid; // process id which mapped the ashmem region - int mappedPid; // process id which succeeded gralloc_register call - int lockedLeft; // region of buffer locked for s/w write - int lockedTop; - int lockedWidth; - int lockedHeight; - uint32_t hostHandle; -}; - - -#endif //__GRALLOC_CB_H__ |