Remove init-time GLES per-frame callback
The GLES renderer interface now allows the per-frame callback to be
registered after initialization. This change updates the emulator to
use the new interface. Since reading back completed frames is slow
(due to pipeline flush/stall), a future change will enable the
callback only while multitouch emulation is actually in use.
Change-Id: I7ad23b4bebe1bd3077863da4d50333cc0578519e
diff --git a/android/opengles.h b/android/opengles.h
index 4e83c02..aac6249 100644
--- a/android/opengles.h
+++ b/android/opengles.h
@@ -16,10 +16,6 @@
#define ANDROID_OPENGLES_BASE_PORT 22468
-/* See the description in render_api.h. */
-typedef void (*OnPostFunc)(void* context, int width, int height, int ydir,
- int format, int type, unsigned char* pixels);
-
/* Call this function to initialize the hardware opengles emulation.
* This function will abort if we can't find the corresponding host
* libraries through dlopen() or equivalent.
@@ -30,8 +26,12 @@
* At the moment, this must be done before the VM starts. The onPost callback
* may be NULL.
*/
-int android_startOpenglesRenderer(int width, int height,
- OnPostFunc onPost, void* onPostContext);
+int android_startOpenglesRenderer(int width, int height);
+
+/* See the description in render_api.h. */
+typedef void (*OnPostFunc)(void* context, int width, int height, int ydir,
+ int format, int type, unsigned char* pixels);
+void android_setPostCallback(OnPostFunc onPost, void* onPostContext);
/* Retrieve the Vendor/Renderer/Version strings describing the underlying GL
* implementation. The call only works while the renderer is started.