Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 /*
2 * Copyright (C) 2009 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
17 #ifndef ANDROID_ANDROID_NATIVES_PRIV_H
18 #define ANDROID_ANDROID_NATIVES_PRIV_H
20 #include <ui/egl/android_natives.h>
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
26 /*****************************************************************************/
28 typedef struct android_native_buffer_t
29 {
30 #ifdef __cplusplus
31 android_native_buffer_t() {
32 common.magic = ANDROID_NATIVE_BUFFER_MAGIC;
33 common.version = sizeof(android_native_buffer_t);
34 memset(common.reserved, 0, sizeof(common.reserved));
35 }
37 // Implement the methods that sp<android_native_buffer_t> expects so that it
38 // can be used to automatically refcount android_native_buffer_t's.
39 void incStrong(const void* id) const {
40 common.incRef(const_cast<android_native_base_t*>(&common));
41 }
42 void decStrong(const void* id) const {
43 common.decRef(const_cast<android_native_base_t*>(&common));
44 }
45 #endif
47 struct android_native_base_t common;
49 int width;
50 int height;
51 int stride;
52 int format;
53 int usage;
55 /* transformation as defined in hardware.h */
56 uint8_t transform;
58 uint8_t reserved_bytes[3];
59 void* reserved[1];
61 buffer_handle_t handle;
63 void* reserved_proc[8];
64 } android_native_buffer_t;
67 /*****************************************************************************/
69 #ifdef __cplusplus
70 }
71 #endif
73 /*****************************************************************************/
75 #endif /* ANDROID_ANDROID_NATIVES_PRIV_H */