History log of /frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
64177e82296a330bdd3c131a020aaffea4905df0 09-May-2017 Jiwen 'Steve' Cai <jwcai@google.com> Split libdvr_headers from libdvr: Step 1

Converts libdvr's Android file into Android.bp as now we have no Java
deps anymore. Then we added header only library libdvr_headers for all
headers.

Next step is to figure out how to split out public headers and make them
easy to be copied into Google3.

Bug: 37578558
Test: dvr_api-test
Change-Id: Idf15cfd5aa61cd7d6f5cc15c4db7cce485b3b293
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
108e84f7e6a9117b66dba000dcf16c6d8c862e16 08-May-2017 Hendrik Wagenaar <hendrikw@google.com> dvrapi: Pass layer_count down

* We were missing layer count, which would prevent multiview
from working

Bug: 37245304
Test: MultiLayerBufferQueue
Change-Id: I88b41f1aa7665df01e89a7386cbc23b15c9a79b0
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
2251d822dac2a96aad4184a6fdc2690f0a58af7c 21-Apr-2017 Corey Tabaka <eieio@google.com> Remove the VR compositor from the framework.

Remove the VR compositor framework and enable out-of-process VR composition
in VrCore.

This CL seems large due to the ripple effect of changing the VrFlinger
API and protocol types. There are three major modules that require
concurrent changes:
1. Protocol definitions and low-level VrFlinger API in libdisplay.
* Additional changes needed to keep old interfaces working for
a short time while replacing the dependent code (dvrGraphics*).
2. VrFlinger service implementation changes to support VrCore compositor
and the removal of the internal compositor.
3. Changes to libdvr platform library API due to changes in #1 and #2.

Because of the nature of the interdependence of types and other defs it is
difficult to break this CL into smaller chunks. However, review of the three
major modules (libdisplay, libdvr, and libvrflinger) may be done separately
to ease the mental burden on reviewers.

Change Summary:
- Remove obsolete screenshot service. VR screenshots will be implemented
by VrCore.
- Update display protocol definitions for changes in VrFlinger service
requirements. The majority of the changes in libdisplay are a
consequence of these protocol and service changes.
- Update VrFlinger to support two kinds of surfaces:
1. Application - use by VR apps.
2. Direct - used by VrCore (protected by permission check).
- Remove VrFlinger internal compositor and GL context.
- Remove obsolete debug console.
- Update VrFlinger hardware composer interface to handle direct
surfaces only, removing the concept of GPU (compositor) layers.
- Update display manager to expose access to application surface info
to VrCore (protected by permission check).
- Update libdvr platform library interfaces for changes to VrFlinger
API / protocol.
- Clean up libdvr API struct setup using a common include.
- Add C++ header-only helpers for DVR platform library opaque types.

Bug: 36401174
Test: Build; run VrFlinger display test tool.
Change-Id: I15abfde5f72dbb3725a3f58621486afba6b64902
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
cb4751c52a5625a22b6a11b4de537ff026d9bfe3 15-Apr-2017 Jiwen 'Steve' Cai <jwcai@google.com> Fix minor corner cases in BufferHubQueueProducer

1/ Set reasonable return value BufferHubQueueProducer::query.
2/ Don't error out for setSharedBufferMode(false),
setAutoRefresh(false), as they are just setting default values again.
3/ Supports addition buffer metadata: transformt, crop,
data_format (a.k.a. color_format).
4/ This also changes BufferHubQueueProducer to be based of
BnInterface<IGraphicBufferProducer> so that itself can be passed via Binder.

Bug: 37342387
Bug: 36907193
Test: exoplayer_demo
Change-Id: Ie00bb79f6a249e09905ae52f85a85a67744cc90d
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
1ab06328bb45f3f8ba4a3780ceaf6d8564ee75cf 19-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "[vr] Add DVR API to get native handle for buffers" into oc-dev
28b58bfdcce253358120d1554755d71c2226f8fd 18-Apr-2017 John Bates <jbates@google.com> [vr] Add DVR API to get native handle for buffers

This is required to support GPU late latching features in
VRCore. This can be removed once vendors support using
AHardwareBuffer instead of int fd for shared memory
buffer objects.

Bug: b/37472908
Test: builds and runs
Change-Id: I2a957723c4025773181071491a45a53b83e5ba64
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
db5763834df1b6a1a3aef9442982451f7505f402 18-Apr-2017 Hendrik Wagenaar <hendrikw@google.com> Dvr api usages should follow AHardwareBuffer

* Since vrcore doesn't have access to gralloc1 usages
* Since gralloc1 may be replaced in the future

Bug: 37435415
Test: TestNamedBufferUsage
Change-Id: Iaa47396aca26460541d1b9031dce0b971b630555
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
730c89a8042e277304a90bff180348fcda75d5a7 10-Apr-2017 Albert Chaulk <achaulk@google.com> vrwm: Push all the properties to vr window manager

Bug: 37204430
Test: Manual
Change-Id: I6cda2732f4aff2433152ffc3549677d23bc598b3
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
736b6058d8c91ec4ad295c0a04c7b81d8119268c 06-Apr-2017 Daniel Nicoara <dnicoara@google.com> Cleanup VR HWC type names in libdvr

Add DvrHwc prefix to enums and types defined in the API to avoid naming
conflicts.

Bug: 36050795
Test: Compiled
Change-Id: Ic5071ccd6f2b16863f0001009a4255f8279ce1e8
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
eaa5522feac452703a0836310047d4b15702487d 06-Apr-2017 Hendrik Wagenaar <hendrikw@google.com> Convert the pose buffer into a more generic named buffer

* It's likely that we'll have more than one pose buffer
* It's cleaner to separate the vsync info into a separate buffer

Bug: 37001881
Bug: 37240552
Test: Added and manually ran TestNamedBuffersSetup
Change-Id: I76621d3cfa8c21c9d5d1e6e648854067673be9ab
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
960bcfffefa76d535c5aecd303d755be3fbc59f1 05-Apr-2017 Jiwen 'Steve' Cai <jwcai@google.com> dvr_api GetExternalSurface returns ANativeWindow

Now that we have a public NDK API to convert an ANativeWindow to a Java
Surface, we no longer need to mess with Jni and libandroid_runtime in
libdvr.

See more information at:
http://ag/#/q/topic:ANativeWindow_toSurface+(status:open+OR+status:merged)

Also, as a side effect, we are now free to convert this library to use
Android.bp (though we probably want to hold off for a while).

Bug: 36266201
Test: Built and ran dvr_buffer_queue-test
Change-Id: Ia0f6a8735c7d508195c30e3c7d040791e13a6ce3
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
37cdc8d0b9803e0c3dc17640534b74cd45fa4bd8 27-Mar-2017 Daniel Nicoara <dnicoara@google.com> VR: Move VR HWC DVR API to libdvr

Moved VR HWC API into a common API library.

Bug: 36050795
Test: Compiled
Change-Id: I1af32f4dedb7a6d4bb77a18d3c48cfbc8ea00a66
(cherry picked from commit 3d3fb3960f9c3956074496fd7fa1beb230ac1043)
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
9255e3ea9b8acae7d34a9cbe58d9e598b71bfe8e 30-Mar-2017 Hendrik Wagenaar <hendrikw@google.com> fix the api style

google3 c++ style says "no _ on struct members"

Happy to oblige

Bug: None
Test: Compiled
Change-Id: I74b65908339551b703125fe16e5a6d11cd3e9a89
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
74cf084cab653537e89f46b90344b3133a94b3a3 24-Mar-2017 Jiwen 'Steve' Cai <jwcai@google.com> Add basic dvrSurface C API

Test: Build and flash system
Bug: 36563654
Change-Id: Id6c79d33d80e719b1d1d7f43aec99aadfad40c03
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
84d90f316c01aadd1e6e0acbc94d51be24ec211f 29-Mar-2017 Hendrik Wagenaar <hendrikw@google.com> Make sure dvr functions are prepended with dvr

* Fix some inconsistencies

Bug: None
Test: Compiled
Change-Id: I9d67d2335f543700bd1a90d329e4b155f4c22c69
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
19ef01c88daa165279c3555fe35d896e8b6336a5 29-Mar-2017 Jiwen 'Steve' Cai <jwcai@google.com> Return jobject when getting android Java Surface

This logic is originally borrowed from similar API from shim_gvr API
where we cannot explicity deps on JNI.h in the public header. This
constrain no longer exists as libdvr is an Android platform library.

Bug: 2013449
Test: Built libdvr
Change-Id: Ide72f5fb706cd24e13507749216d7708f1f40fcc
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
2d82ceb8dc1bc9066bd5ad98ee0926289cb0b7cc 23-Mar-2017 Jiwen 'Steve' Cai <jwcai@google.com> Add dvr_buffer_queue C API

Bug: 36401767
Bug: 32213274
Bug: 36266201
Test: build and ran dvr_buffer_queue-test
Change-Id: Icd8d063bd8b7adb15bf67f7e543b87dad1c32a68
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h
bdcee79b0d7e87cb48049907a7ba8201d0288f75 23-Mar-2017 Jiwen 'Steve' Cai <jwcai@google.com> Move DVR platform C API into libdvr

Introduce a new static library build with Android.mk. The reasoning
behind this is:
1/ This library is going to consolidate all C headers and implementation
of the DVR platform library.
2/ No other internal system components need to depend on this library.
3/ This library is build with Android.mk so that it has depend on other
system components (such as libandroid_runtime) without worrying about
that Android.bp-based libs cannot depent and Androib.mk-based libraries.
4/ This library defines dvr_api.h header as the official definition of
DVR platform library headers. The header is moved from
'vendor/unbundled_google/packages/PrebuiltGoogleVr', which is not an
ideal place to hold the platform library anyway.
5/ If we ever decide to move these C wrappers out of frameworks/native,
this makes it easier to do so by bundling things now.

TODO: C APIs from libvrsensor and libvirtualtouchpadclient are not moved
into this bundle as some functions are still used by internal system
components. Ideally, these will be moved either to Google3 or vendor projects.

Test: Built and flash
Bug: 36563654
Change-Id: Ie5ce89faa70f86ac934a77d8f7d4fca7e94112ee
/frameworks/native/libs/vr/libdvr/include/dvr/dvr_api.h