Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 19ef01c8 authored by Jiwen 'Steve' Cai's avatar Jiwen 'Steve' Cai
Browse files

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
parent 5f8e45a1
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -23,7 +23,7 @@ size_t dvrWriteBufferQueueGetCapacity(DvrWriteBufferQueue* write_queue) {
  return write_queue->producer_queue_->capacity();
}

void* dvrWriteBufferQueueGetExternalSurface(DvrWriteBufferQueue* write_queue,
jobject dvrWriteBufferQueueGetExternalSurface(DvrWriteBufferQueue* write_queue,
                                              JNIEnv* env) {
  CHECK_PARAM(env);
  CHECK_PARAM(write_queue);
+1 −1
Original line number Diff line number Diff line
@@ -85,7 +85,7 @@ typedef int (*DvrReadBufferReleaseAsyncPtr)(DvrReadBuffer* client);
typedef void (*DvrWriteBufferQueueDestroyPtr)(DvrWriteBufferQueue* write_queue);
typedef size_t (*DvrWriteBufferQueueGetCapacityPtr)(
    DvrWriteBufferQueue* write_queue);
typedef void* (*DvrWriteBufferQueueGetExternalSurfacePtr)(
typedef jobject (*DvrWriteBufferQueueGetExternalSurfacePtr)(
    DvrWriteBufferQueue* write_queue, JNIEnv* env);
typedef int (*DvrWriteBufferQueueCreateReadQueuePtr)(
    DvrWriteBufferQueue* write_queue, DvrReadBufferQueue** out_read_queue);
+2 −2
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@ size_t dvrWriteBufferQueueGetCapacity(DvrWriteBufferQueue* write_queue);

// Returns ANativeWindow in the form of jobject. Can be casted to ANativeWindow
// using ANativeWindow_fromSurface NDK API.
void* dvrWriteBufferQueueGetExternalSurface(DvrWriteBufferQueue* write_queue,
jobject dvrWriteBufferQueueGetExternalSurface(DvrWriteBufferQueue* write_queue,
                                              JNIEnv* env);

int dvrWriteBufferQueueCreateReadQueue(DvrWriteBufferQueue* write_queue,