Loading include/surfaceflinger/Surface.h +8 −8 Original line number Diff line number Diff line Loading @@ -131,7 +131,7 @@ private: // --------------------------------------------------------------------------- class Surface : public EGLNativeBase<android_native_window_t, Surface, RefBase> : public EGLNativeBase<ANativeWindow, Surface, RefBase> { public: struct SurfaceInfo { Loading Loading @@ -195,14 +195,14 @@ private: /* * android_native_window_t hooks * ANativeWindow hooks */ static int setSwapInterval(android_native_window_t* window, int interval); static int dequeueBuffer(android_native_window_t* window, android_native_buffer_t** buffer); static int lockBuffer(android_native_window_t* window, android_native_buffer_t* buffer); static int queueBuffer(android_native_window_t* window, android_native_buffer_t* buffer); static int query(android_native_window_t* window, int what, int* value); static int perform(android_native_window_t* window, int operation, ...); static int setSwapInterval(ANativeWindow* window, int interval); static int dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer); static int lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer); static int queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer); static int query(ANativeWindow* window, int what, int* value); static int perform(ANativeWindow* window, int operation, ...); int dequeueBuffer(android_native_buffer_t** buffer); int lockBuffer(android_native_buffer_t* buffer); Loading include/ui/FramebufferNativeWindow.h +7 −7 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ class NativeBuffer; class FramebufferNativeWindow : public EGLNativeBase< android_native_window_t, ANativeWindow, FramebufferNativeWindow, LightRefBase<FramebufferNativeWindow> > { Loading @@ -59,12 +59,12 @@ public: private: friend class LightRefBase<FramebufferNativeWindow>; ~FramebufferNativeWindow(); // this class cannot be overloaded static int setSwapInterval(android_native_window_t* window, int interval); static int dequeueBuffer(android_native_window_t* window, android_native_buffer_t** buffer); static int lockBuffer(android_native_window_t* window, android_native_buffer_t* buffer); static int queueBuffer(android_native_window_t* window, android_native_buffer_t* buffer); static int query(android_native_window_t* window, int what, int* value); static int perform(android_native_window_t* window, int operation, ...); static int setSwapInterval(ANativeWindow* window, int interval); static int dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer); static int lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer); static int queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer); static int query(ANativeWindow* window, int what, int* value); static int perform(ANativeWindow* window, int operation, ...); framebuffer_device_t* fbDev; alloc_device_t* grDev; Loading include/ui/egl/android_natives.h +23 −19 Original line number Diff line number Diff line Loading @@ -22,6 +22,8 @@ #include <hardware/gralloc.h> #include <android/native_window.h> #ifdef __cplusplus extern "C" { #endif Loading Loading @@ -90,19 +92,19 @@ enum { NATIVE_WINDOW_API_EGL = 1 }; typedef struct android_native_window_t struct ANativeWindow { #ifdef __cplusplus android_native_window_t() ANativeWindow() : flags(0), minSwapInterval(0), maxSwapInterval(0), xdpi(0), ydpi(0) { common.magic = ANDROID_NATIVE_WINDOW_MAGIC; common.version = sizeof(android_native_window_t); common.version = sizeof(ANativeWindow); memset(common.reserved, 0, sizeof(common.reserved)); } // Implement the methods that sp<android_native_window_t> expects so that it // can be used to automatically refcount android_native_window_t's. // Implement the methods that sp<ANativeWindow> expects so that it // can be used to automatically refcount ANativeWindow's. void incStrong(const void* id) const { common.incRef(const_cast<android_native_base_t*>(&common)); } Loading Loading @@ -135,7 +137,7 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*setSwapInterval)(struct android_native_window_t* window, int (*setSwapInterval)(struct ANativeWindow* window, int interval); /* Loading @@ -145,7 +147,7 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*dequeueBuffer)(struct android_native_window_t* window, int (*dequeueBuffer)(struct ANativeWindow* window, struct android_native_buffer_t** buffer); /* Loading @@ -155,7 +157,7 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*lockBuffer)(struct android_native_window_t* window, int (*lockBuffer)(struct ANativeWindow* window, struct android_native_buffer_t* buffer); /* * hook called by EGL when modifications to the render buffer are done. Loading @@ -165,7 +167,7 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*queueBuffer)(struct android_native_window_t* window, int (*queueBuffer)(struct ANativeWindow* window, struct android_native_buffer_t* buffer); /* Loading @@ -173,13 +175,13 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*query)(struct android_native_window_t* window, int (*query)(struct ANativeWindow* window, int what, int* value); /* * hook used to perform various operations on the surface. * (*perform)() is a generic mechanism to add functionality to * android_native_window_t while keeping backward binary compatibility. * ANativeWindow while keeping backward binary compatibility. * * This hook should not be called directly, instead use the helper functions * defined below. Loading @@ -197,12 +199,14 @@ typedef struct android_native_window_t * */ int (*perform)(struct android_native_window_t* window, int (*perform)(struct ANativeWindow* window, int operation, ... ); void* reserved_proc[3]; } android_native_window_t; }; // Backwards compatibility... please switch to ANativeWindow. typedef struct ANativeWindow android_native_window_t; /* * native_window_set_usage(..., usage) Loading @@ -216,7 +220,7 @@ typedef struct android_native_window_t */ static inline int native_window_set_usage( android_native_window_t* window, int usage) ANativeWindow* window, int usage) { return window->perform(window, NATIVE_WINDOW_SET_USAGE, usage); } Loading @@ -228,7 +232,7 @@ static inline int native_window_set_usage( * can happen if it's connected to some other API. */ static inline int native_window_connect( android_native_window_t* window, int api) ANativeWindow* window, int api) { return window->perform(window, NATIVE_WINDOW_CONNECT, api); } Loading @@ -240,7 +244,7 @@ static inline int native_window_connect( * first place. */ static inline int native_window_disconnect( android_native_window_t* window, int api) ANativeWindow* window, int api) { return window->perform(window, NATIVE_WINDOW_DISCONNECT, api); } Loading @@ -258,7 +262,7 @@ static inline int native_window_disconnect( * out of the buffer's bound or if the window is invalid. */ static inline int native_window_set_crop( android_native_window_t* window, ANativeWindow* window, android_native_rect_t const * crop) { return window->perform(window, NATIVE_WINDOW_SET_CROP, crop); Loading @@ -269,7 +273,7 @@ static inline int native_window_set_crop( * Sets the number of buffers associated with this native window. */ static inline int native_window_set_buffer_count( android_native_window_t* window, ANativeWindow* window, size_t bufferCount) { return window->perform(window, NATIVE_WINDOW_SET_BUFFER_COUNT, bufferCount); Loading @@ -287,7 +291,7 @@ static inline int native_window_set_buffer_count( * */ static inline int native_window_set_buffers_geometry( android_native_window_t* window, ANativeWindow* window, int w, int h, int format) { return window->perform(window, NATIVE_WINDOW_SET_BUFFERS_GEOMETRY, Loading libs/surfaceflinger_client/Surface.cpp +18 −18 Original line number Diff line number Diff line Loading @@ -387,21 +387,21 @@ sp<Surface> Surface::readFromParcel( void Surface::init() { android_native_window_t::setSwapInterval = setSwapInterval; android_native_window_t::dequeueBuffer = dequeueBuffer; android_native_window_t::lockBuffer = lockBuffer; android_native_window_t::queueBuffer = queueBuffer; android_native_window_t::query = query; android_native_window_t::perform = perform; ANativeWindow::setSwapInterval = setSwapInterval; ANativeWindow::dequeueBuffer = dequeueBuffer; ANativeWindow::lockBuffer = lockBuffer; ANativeWindow::queueBuffer = queueBuffer; ANativeWindow::query = query; ANativeWindow::perform = perform; DisplayInfo dinfo; SurfaceComposerClient::getDisplayInfo(0, &dinfo); const_cast<float&>(android_native_window_t::xdpi) = dinfo.xdpi; const_cast<float&>(android_native_window_t::ydpi) = dinfo.ydpi; const_cast<float&>(ANativeWindow::xdpi) = dinfo.xdpi; const_cast<float&>(ANativeWindow::ydpi) = dinfo.ydpi; // FIXME: set real values here const_cast<int&>(android_native_window_t::minSwapInterval) = 1; const_cast<int&>(android_native_window_t::maxSwapInterval) = 1; const_cast<uint32_t&>(android_native_window_t::flags) = 0; const_cast<int&>(ANativeWindow::minSwapInterval) = 1; const_cast<int&>(ANativeWindow::maxSwapInterval) = 1; const_cast<uint32_t&>(ANativeWindow::flags) = 0; mConnected = 0; mSwapRectangle.makeInvalid(); Loading Loading @@ -485,35 +485,35 @@ sp<ISurface> Surface::getISurface() const { // ---------------------------------------------------------------------------- int Surface::setSwapInterval(android_native_window_t* window, int interval) { int Surface::setSwapInterval(ANativeWindow* window, int interval) { return 0; } int Surface::dequeueBuffer(android_native_window_t* window, int Surface::dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer) { Surface* self = getSelf(window); return self->dequeueBuffer(buffer); } int Surface::lockBuffer(android_native_window_t* window, int Surface::lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer) { Surface* self = getSelf(window); return self->lockBuffer(buffer); } int Surface::queueBuffer(android_native_window_t* window, int Surface::queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer) { Surface* self = getSelf(window); return self->queueBuffer(buffer); } int Surface::query(android_native_window_t* window, int Surface::query(ANativeWindow* window, int what, int* value) { Surface* self = getSelf(window); return self->query(what, value); } int Surface::perform(android_native_window_t* window, int Surface::perform(ANativeWindow* window, int operation, ...) { va_list args; va_start(args, operation); Loading Loading @@ -803,7 +803,7 @@ status_t Surface::lock(SurfaceInfo* other, Region* dirtyIn, bool blocking) { if (getConnectedApi()) { LOGE("Surface::lock(%p) failed. Already connected to another API", (android_native_window_t*)this); (ANativeWindow*)this); CallStack stack; stack.update(); stack.dump(""); Loading libs/ui/FramebufferNativeWindow.cpp +18 −18 Original line number Diff line number Diff line Loading @@ -67,7 +67,7 @@ private: * This implements the (main) framebuffer management. This class is used * mostly by SurfaceFlinger, but also by command line GL application. * * In fact this is an implementation of android_native_window_t on top of * In fact this is an implementation of ANativeWindow on top of * the framebuffer. * * Currently it is pretty simple, it manages only two buffers (the front and Loading Loading @@ -117,23 +117,23 @@ FramebufferNativeWindow::FramebufferNativeWindow() LOGE_IF(err, "fb buffer 1 allocation failed w=%d, h=%d, err=%s", fbDev->width, fbDev->height, strerror(-err)); const_cast<uint32_t&>(android_native_window_t::flags) = fbDev->flags; const_cast<float&>(android_native_window_t::xdpi) = fbDev->xdpi; const_cast<float&>(android_native_window_t::ydpi) = fbDev->ydpi; const_cast<int&>(android_native_window_t::minSwapInterval) = const_cast<uint32_t&>(ANativeWindow::flags) = fbDev->flags; const_cast<float&>(ANativeWindow::xdpi) = fbDev->xdpi; const_cast<float&>(ANativeWindow::ydpi) = fbDev->ydpi; const_cast<int&>(ANativeWindow::minSwapInterval) = fbDev->minSwapInterval; const_cast<int&>(android_native_window_t::maxSwapInterval) = const_cast<int&>(ANativeWindow::maxSwapInterval) = fbDev->maxSwapInterval; } else { LOGE("Couldn't get gralloc module"); } android_native_window_t::setSwapInterval = setSwapInterval; android_native_window_t::dequeueBuffer = dequeueBuffer; android_native_window_t::lockBuffer = lockBuffer; android_native_window_t::queueBuffer = queueBuffer; android_native_window_t::query = query; android_native_window_t::perform = perform; ANativeWindow::setSwapInterval = setSwapInterval; ANativeWindow::dequeueBuffer = dequeueBuffer; ANativeWindow::lockBuffer = lockBuffer; ANativeWindow::queueBuffer = queueBuffer; ANativeWindow::query = query; ANativeWindow::perform = perform; } FramebufferNativeWindow::~FramebufferNativeWindow() Loading Loading @@ -168,13 +168,13 @@ status_t FramebufferNativeWindow::compositionComplete() } int FramebufferNativeWindow::setSwapInterval( android_native_window_t* window, int interval) ANativeWindow* window, int interval) { framebuffer_device_t* fb = getSelf(window)->fbDev; return fb->setSwapInterval(fb, interval); } int FramebufferNativeWindow::dequeueBuffer(android_native_window_t* window, int FramebufferNativeWindow::dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer) { FramebufferNativeWindow* self = getSelf(window); Loading @@ -196,7 +196,7 @@ int FramebufferNativeWindow::dequeueBuffer(android_native_window_t* window, return 0; } int FramebufferNativeWindow::lockBuffer(android_native_window_t* window, int FramebufferNativeWindow::lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer) { FramebufferNativeWindow* self = getSelf(window); Loading @@ -210,7 +210,7 @@ int FramebufferNativeWindow::lockBuffer(android_native_window_t* window, return NO_ERROR; } int FramebufferNativeWindow::queueBuffer(android_native_window_t* window, int FramebufferNativeWindow::queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer) { FramebufferNativeWindow* self = getSelf(window); Loading @@ -224,7 +224,7 @@ int FramebufferNativeWindow::queueBuffer(android_native_window_t* window, return res; } int FramebufferNativeWindow::query(android_native_window_t* window, int FramebufferNativeWindow::query(ANativeWindow* window, int what, int* value) { FramebufferNativeWindow* self = getSelf(window); Loading @@ -245,7 +245,7 @@ int FramebufferNativeWindow::query(android_native_window_t* window, return BAD_VALUE; } int FramebufferNativeWindow::perform(android_native_window_t* window, int FramebufferNativeWindow::perform(ANativeWindow* window, int operation, ...) { switch (operation) { Loading Loading
include/surfaceflinger/Surface.h +8 −8 Original line number Diff line number Diff line Loading @@ -131,7 +131,7 @@ private: // --------------------------------------------------------------------------- class Surface : public EGLNativeBase<android_native_window_t, Surface, RefBase> : public EGLNativeBase<ANativeWindow, Surface, RefBase> { public: struct SurfaceInfo { Loading Loading @@ -195,14 +195,14 @@ private: /* * android_native_window_t hooks * ANativeWindow hooks */ static int setSwapInterval(android_native_window_t* window, int interval); static int dequeueBuffer(android_native_window_t* window, android_native_buffer_t** buffer); static int lockBuffer(android_native_window_t* window, android_native_buffer_t* buffer); static int queueBuffer(android_native_window_t* window, android_native_buffer_t* buffer); static int query(android_native_window_t* window, int what, int* value); static int perform(android_native_window_t* window, int operation, ...); static int setSwapInterval(ANativeWindow* window, int interval); static int dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer); static int lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer); static int queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer); static int query(ANativeWindow* window, int what, int* value); static int perform(ANativeWindow* window, int operation, ...); int dequeueBuffer(android_native_buffer_t** buffer); int lockBuffer(android_native_buffer_t* buffer); Loading
include/ui/FramebufferNativeWindow.h +7 −7 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ class NativeBuffer; class FramebufferNativeWindow : public EGLNativeBase< android_native_window_t, ANativeWindow, FramebufferNativeWindow, LightRefBase<FramebufferNativeWindow> > { Loading @@ -59,12 +59,12 @@ public: private: friend class LightRefBase<FramebufferNativeWindow>; ~FramebufferNativeWindow(); // this class cannot be overloaded static int setSwapInterval(android_native_window_t* window, int interval); static int dequeueBuffer(android_native_window_t* window, android_native_buffer_t** buffer); static int lockBuffer(android_native_window_t* window, android_native_buffer_t* buffer); static int queueBuffer(android_native_window_t* window, android_native_buffer_t* buffer); static int query(android_native_window_t* window, int what, int* value); static int perform(android_native_window_t* window, int operation, ...); static int setSwapInterval(ANativeWindow* window, int interval); static int dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer); static int lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer); static int queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer); static int query(ANativeWindow* window, int what, int* value); static int perform(ANativeWindow* window, int operation, ...); framebuffer_device_t* fbDev; alloc_device_t* grDev; Loading
include/ui/egl/android_natives.h +23 −19 Original line number Diff line number Diff line Loading @@ -22,6 +22,8 @@ #include <hardware/gralloc.h> #include <android/native_window.h> #ifdef __cplusplus extern "C" { #endif Loading Loading @@ -90,19 +92,19 @@ enum { NATIVE_WINDOW_API_EGL = 1 }; typedef struct android_native_window_t struct ANativeWindow { #ifdef __cplusplus android_native_window_t() ANativeWindow() : flags(0), minSwapInterval(0), maxSwapInterval(0), xdpi(0), ydpi(0) { common.magic = ANDROID_NATIVE_WINDOW_MAGIC; common.version = sizeof(android_native_window_t); common.version = sizeof(ANativeWindow); memset(common.reserved, 0, sizeof(common.reserved)); } // Implement the methods that sp<android_native_window_t> expects so that it // can be used to automatically refcount android_native_window_t's. // Implement the methods that sp<ANativeWindow> expects so that it // can be used to automatically refcount ANativeWindow's. void incStrong(const void* id) const { common.incRef(const_cast<android_native_base_t*>(&common)); } Loading Loading @@ -135,7 +137,7 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*setSwapInterval)(struct android_native_window_t* window, int (*setSwapInterval)(struct ANativeWindow* window, int interval); /* Loading @@ -145,7 +147,7 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*dequeueBuffer)(struct android_native_window_t* window, int (*dequeueBuffer)(struct ANativeWindow* window, struct android_native_buffer_t** buffer); /* Loading @@ -155,7 +157,7 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*lockBuffer)(struct android_native_window_t* window, int (*lockBuffer)(struct ANativeWindow* window, struct android_native_buffer_t* buffer); /* * hook called by EGL when modifications to the render buffer are done. Loading @@ -165,7 +167,7 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*queueBuffer)(struct android_native_window_t* window, int (*queueBuffer)(struct ANativeWindow* window, struct android_native_buffer_t* buffer); /* Loading @@ -173,13 +175,13 @@ typedef struct android_native_window_t * * Returns 0 on success or -errno on error. */ int (*query)(struct android_native_window_t* window, int (*query)(struct ANativeWindow* window, int what, int* value); /* * hook used to perform various operations on the surface. * (*perform)() is a generic mechanism to add functionality to * android_native_window_t while keeping backward binary compatibility. * ANativeWindow while keeping backward binary compatibility. * * This hook should not be called directly, instead use the helper functions * defined below. Loading @@ -197,12 +199,14 @@ typedef struct android_native_window_t * */ int (*perform)(struct android_native_window_t* window, int (*perform)(struct ANativeWindow* window, int operation, ... ); void* reserved_proc[3]; } android_native_window_t; }; // Backwards compatibility... please switch to ANativeWindow. typedef struct ANativeWindow android_native_window_t; /* * native_window_set_usage(..., usage) Loading @@ -216,7 +220,7 @@ typedef struct android_native_window_t */ static inline int native_window_set_usage( android_native_window_t* window, int usage) ANativeWindow* window, int usage) { return window->perform(window, NATIVE_WINDOW_SET_USAGE, usage); } Loading @@ -228,7 +232,7 @@ static inline int native_window_set_usage( * can happen if it's connected to some other API. */ static inline int native_window_connect( android_native_window_t* window, int api) ANativeWindow* window, int api) { return window->perform(window, NATIVE_WINDOW_CONNECT, api); } Loading @@ -240,7 +244,7 @@ static inline int native_window_connect( * first place. */ static inline int native_window_disconnect( android_native_window_t* window, int api) ANativeWindow* window, int api) { return window->perform(window, NATIVE_WINDOW_DISCONNECT, api); } Loading @@ -258,7 +262,7 @@ static inline int native_window_disconnect( * out of the buffer's bound or if the window is invalid. */ static inline int native_window_set_crop( android_native_window_t* window, ANativeWindow* window, android_native_rect_t const * crop) { return window->perform(window, NATIVE_WINDOW_SET_CROP, crop); Loading @@ -269,7 +273,7 @@ static inline int native_window_set_crop( * Sets the number of buffers associated with this native window. */ static inline int native_window_set_buffer_count( android_native_window_t* window, ANativeWindow* window, size_t bufferCount) { return window->perform(window, NATIVE_WINDOW_SET_BUFFER_COUNT, bufferCount); Loading @@ -287,7 +291,7 @@ static inline int native_window_set_buffer_count( * */ static inline int native_window_set_buffers_geometry( android_native_window_t* window, ANativeWindow* window, int w, int h, int format) { return window->perform(window, NATIVE_WINDOW_SET_BUFFERS_GEOMETRY, Loading
libs/surfaceflinger_client/Surface.cpp +18 −18 Original line number Diff line number Diff line Loading @@ -387,21 +387,21 @@ sp<Surface> Surface::readFromParcel( void Surface::init() { android_native_window_t::setSwapInterval = setSwapInterval; android_native_window_t::dequeueBuffer = dequeueBuffer; android_native_window_t::lockBuffer = lockBuffer; android_native_window_t::queueBuffer = queueBuffer; android_native_window_t::query = query; android_native_window_t::perform = perform; ANativeWindow::setSwapInterval = setSwapInterval; ANativeWindow::dequeueBuffer = dequeueBuffer; ANativeWindow::lockBuffer = lockBuffer; ANativeWindow::queueBuffer = queueBuffer; ANativeWindow::query = query; ANativeWindow::perform = perform; DisplayInfo dinfo; SurfaceComposerClient::getDisplayInfo(0, &dinfo); const_cast<float&>(android_native_window_t::xdpi) = dinfo.xdpi; const_cast<float&>(android_native_window_t::ydpi) = dinfo.ydpi; const_cast<float&>(ANativeWindow::xdpi) = dinfo.xdpi; const_cast<float&>(ANativeWindow::ydpi) = dinfo.ydpi; // FIXME: set real values here const_cast<int&>(android_native_window_t::minSwapInterval) = 1; const_cast<int&>(android_native_window_t::maxSwapInterval) = 1; const_cast<uint32_t&>(android_native_window_t::flags) = 0; const_cast<int&>(ANativeWindow::minSwapInterval) = 1; const_cast<int&>(ANativeWindow::maxSwapInterval) = 1; const_cast<uint32_t&>(ANativeWindow::flags) = 0; mConnected = 0; mSwapRectangle.makeInvalid(); Loading Loading @@ -485,35 +485,35 @@ sp<ISurface> Surface::getISurface() const { // ---------------------------------------------------------------------------- int Surface::setSwapInterval(android_native_window_t* window, int interval) { int Surface::setSwapInterval(ANativeWindow* window, int interval) { return 0; } int Surface::dequeueBuffer(android_native_window_t* window, int Surface::dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer) { Surface* self = getSelf(window); return self->dequeueBuffer(buffer); } int Surface::lockBuffer(android_native_window_t* window, int Surface::lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer) { Surface* self = getSelf(window); return self->lockBuffer(buffer); } int Surface::queueBuffer(android_native_window_t* window, int Surface::queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer) { Surface* self = getSelf(window); return self->queueBuffer(buffer); } int Surface::query(android_native_window_t* window, int Surface::query(ANativeWindow* window, int what, int* value) { Surface* self = getSelf(window); return self->query(what, value); } int Surface::perform(android_native_window_t* window, int Surface::perform(ANativeWindow* window, int operation, ...) { va_list args; va_start(args, operation); Loading Loading @@ -803,7 +803,7 @@ status_t Surface::lock(SurfaceInfo* other, Region* dirtyIn, bool blocking) { if (getConnectedApi()) { LOGE("Surface::lock(%p) failed. Already connected to another API", (android_native_window_t*)this); (ANativeWindow*)this); CallStack stack; stack.update(); stack.dump(""); Loading
libs/ui/FramebufferNativeWindow.cpp +18 −18 Original line number Diff line number Diff line Loading @@ -67,7 +67,7 @@ private: * This implements the (main) framebuffer management. This class is used * mostly by SurfaceFlinger, but also by command line GL application. * * In fact this is an implementation of android_native_window_t on top of * In fact this is an implementation of ANativeWindow on top of * the framebuffer. * * Currently it is pretty simple, it manages only two buffers (the front and Loading Loading @@ -117,23 +117,23 @@ FramebufferNativeWindow::FramebufferNativeWindow() LOGE_IF(err, "fb buffer 1 allocation failed w=%d, h=%d, err=%s", fbDev->width, fbDev->height, strerror(-err)); const_cast<uint32_t&>(android_native_window_t::flags) = fbDev->flags; const_cast<float&>(android_native_window_t::xdpi) = fbDev->xdpi; const_cast<float&>(android_native_window_t::ydpi) = fbDev->ydpi; const_cast<int&>(android_native_window_t::minSwapInterval) = const_cast<uint32_t&>(ANativeWindow::flags) = fbDev->flags; const_cast<float&>(ANativeWindow::xdpi) = fbDev->xdpi; const_cast<float&>(ANativeWindow::ydpi) = fbDev->ydpi; const_cast<int&>(ANativeWindow::minSwapInterval) = fbDev->minSwapInterval; const_cast<int&>(android_native_window_t::maxSwapInterval) = const_cast<int&>(ANativeWindow::maxSwapInterval) = fbDev->maxSwapInterval; } else { LOGE("Couldn't get gralloc module"); } android_native_window_t::setSwapInterval = setSwapInterval; android_native_window_t::dequeueBuffer = dequeueBuffer; android_native_window_t::lockBuffer = lockBuffer; android_native_window_t::queueBuffer = queueBuffer; android_native_window_t::query = query; android_native_window_t::perform = perform; ANativeWindow::setSwapInterval = setSwapInterval; ANativeWindow::dequeueBuffer = dequeueBuffer; ANativeWindow::lockBuffer = lockBuffer; ANativeWindow::queueBuffer = queueBuffer; ANativeWindow::query = query; ANativeWindow::perform = perform; } FramebufferNativeWindow::~FramebufferNativeWindow() Loading Loading @@ -168,13 +168,13 @@ status_t FramebufferNativeWindow::compositionComplete() } int FramebufferNativeWindow::setSwapInterval( android_native_window_t* window, int interval) ANativeWindow* window, int interval) { framebuffer_device_t* fb = getSelf(window)->fbDev; return fb->setSwapInterval(fb, interval); } int FramebufferNativeWindow::dequeueBuffer(android_native_window_t* window, int FramebufferNativeWindow::dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer) { FramebufferNativeWindow* self = getSelf(window); Loading @@ -196,7 +196,7 @@ int FramebufferNativeWindow::dequeueBuffer(android_native_window_t* window, return 0; } int FramebufferNativeWindow::lockBuffer(android_native_window_t* window, int FramebufferNativeWindow::lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer) { FramebufferNativeWindow* self = getSelf(window); Loading @@ -210,7 +210,7 @@ int FramebufferNativeWindow::lockBuffer(android_native_window_t* window, return NO_ERROR; } int FramebufferNativeWindow::queueBuffer(android_native_window_t* window, int FramebufferNativeWindow::queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer) { FramebufferNativeWindow* self = getSelf(window); Loading @@ -224,7 +224,7 @@ int FramebufferNativeWindow::queueBuffer(android_native_window_t* window, return res; } int FramebufferNativeWindow::query(android_native_window_t* window, int FramebufferNativeWindow::query(ANativeWindow* window, int what, int* value) { FramebufferNativeWindow* self = getSelf(window); Loading @@ -245,7 +245,7 @@ int FramebufferNativeWindow::query(android_native_window_t* window, return BAD_VALUE; } int FramebufferNativeWindow::perform(android_native_window_t* window, int FramebufferNativeWindow::perform(ANativeWindow* window, int operation, ...) { switch (operation) { Loading