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

Commit 086ee3d3 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "[ANativeWindow] Apply remaining API feedback"

parents 0a588706 d41a1be2
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -335,7 +335,3 @@ int ANativeWindow_setQueueBufferInterceptor(ANativeWindow* window,
                                            void* data) {
    return window->perform(window, NATIVE_WINDOW_SET_QUEUE_INTERCEPTOR, interceptor, data);
}

int64_t ANativeWindow_getNextFrameId(ANativeWindow* window) {
    return query64(window, NATIVE_WINDOW_GET_NEXT_FRAME_ID);
}
+11 −23
Original line number Diff line number Diff line
@@ -173,25 +173,22 @@ int ANativeWindow_setQueueBufferInterceptor(ANativeWindow* window,
/**
 * Retrieves how long it took for the last time a buffer was dequeued.
 *
 * \return a negative value on error, otherwise returns the duration in
 * nanoseconds
 * \return the dequeue duration in nanoseconds
 */
int64_t ANativeWindow_getLastDequeueDuration(ANativeWindow* window);

/**
 * Retrieves how long it took for the last time a buffer was queued.
 *
 * \return a negative value on error, otherwise returns the duration in
 * nanoseconds.
 * \return the queue duration in nanoseconds
 */
int64_t ANativeWindow_getLastQueueDuration(ANativeWindow* window);

/**
 * Retrieves the system time in nanoseconds when the last time a buffer
 * was dequeued.
 * started to be dequeued.
 *
 * \return a negative value on error, otherwise returns the duration in
 * nanoseconds.
 * \return the start time in nanoseconds
 */
int64_t ANativeWindow_getLastDequeueStartTime(ANativeWindow* window);

@@ -200,23 +197,14 @@ int64_t ANativeWindow_getLastDequeueStartTime(ANativeWindow* window);
 * made by the window will return -ETIMEDOUT after the timeout if the dequeue
 * takes too long.
 *
 * \return NO_ERROR on success, -errno on error.
 */
int ANativeWindow_setDequeueTimeout(ANativeWindow* window, int64_t timeout);

/**
 * Provides a hint to the window that buffers should be preallocated ahead of
 * time. Note that the window implementation is not guaranteed to preallocate
 * any buffers, for instance if a private API disallows allocation of new
 * buffers. As such no success/error status is returned.
 */
void ANativeWindow_allocateBuffers(ANativeWindow* window);

/**
 * Retrieves an identifier for the next frame to be queued by this window.
 * If the provided timeout is negative, hen this removes the previously configured
 * timeout. The window then behaves as if ANativeWindow_setDequeueTimeout was
 * never called.
 *
 * \return -errno on error, otherwise returns the next frame id.
 * \return NO_ERROR on success
 * \return BAD_VALUE if the dequeue timeout was unabled to be updated, as
 * updating the dequeue timeout may change internals of the underlying window.
 */
int64_t ANativeWindow_getNextFrameId(ANativeWindow* window);
int ANativeWindow_setDequeueTimeout(ANativeWindow* window, int64_t timeout);

__END_DECLS
+11 −0
Original line number Diff line number Diff line
@@ -1051,4 +1051,15 @@ static inline int ANativeWindow_getLastQueuedBuffer(ANativeWindow* window,
                           outTransformMatrix);
}

/**
 * Retrieves an identifier for the next frame to be queued by this window.
 *
 * \return the next frame id.
 */
static inline int64_t ANativeWindow_getNextFrameId(ANativeWindow* window) {
    int64_t value;
    window->perform(window, NATIVE_WINDOW_GET_NEXT_FRAME_ID, &value);
    return value;
}

__END_DECLS
+0 −1
Original line number Diff line number Diff line
@@ -25,7 +25,6 @@ LIBNATIVEWINDOW {
    ANativeWindow_getLastDequeueDuration; # apex # introduced=30
    ANativeWindow_getLastDequeueStartTime; # apex # introduced=30
    ANativeWindow_getLastQueueDuration; # apex # introduced=30
    ANativeWindow_getNextFrameId; # apex # introduced=30
    ANativeWindow_getWidth;
    ANativeWindow_lock;
    ANativeWindow_query; # llndk