mirror of
https://github.com/libretro/RetroArch.git
synced 2025-02-02 15:05:09 +00:00
(Android) Stub android camera C driver - will interface with JNI
functions
This commit is contained in:
parent
ee35e5382f
commit
51891483c4
@ -27,18 +27,18 @@ static void input_autodetect_get_device_name(void *data, char *buf, size_t size,
|
||||
JNIEnv *env = NULL;
|
||||
(*vm)->AttachCurrentThread(vm, &env, 0);
|
||||
|
||||
jclass input_device_class = NULL;
|
||||
FIND_CLASS(env, input_device_class, "android/view/InputDevice");
|
||||
if (!input_device_class)
|
||||
jclass class = NULL;
|
||||
FIND_CLASS(env, class, "android/view/InputDevice");
|
||||
if (!class)
|
||||
goto end;
|
||||
|
||||
jmethodID method = NULL;
|
||||
GET_STATIC_METHOD_ID(env, method, input_device_class, "getDevice", "(I)Landroid/view/InputDevice;");
|
||||
GET_STATIC_METHOD_ID(env, method, class, "getDevice", "(I)Landroid/view/InputDevice;");
|
||||
if (!method)
|
||||
goto end;
|
||||
|
||||
jobject device = NULL;
|
||||
CALL_OBJ_STATIC_METHOD_PARAM(env, device, input_device_class, method, (jint)id);
|
||||
CALL_OBJ_STATIC_METHOD_PARAM(env, device, class, method, (jint)id);
|
||||
if (!device)
|
||||
{
|
||||
RARCH_ERR("Failed to find device for ID: %d\n", id);
|
||||
@ -46,7 +46,7 @@ static void input_autodetect_get_device_name(void *data, char *buf, size_t size,
|
||||
}
|
||||
|
||||
jmethodID getName = NULL;
|
||||
GET_METHOD_ID(env, getName, input_device_class, "getName", "()Ljava/lang/String;");
|
||||
GET_METHOD_ID(env, getName, class, "getName", "()Ljava/lang/String;");
|
||||
if (!getName)
|
||||
goto end;
|
||||
|
||||
|
67
camera/android.c
Normal file
67
camera/android.c
Normal file
@ -0,0 +1,67 @@
|
||||
/* RetroArch - A frontend for libretro.
|
||||
* Copyright (C) 2010-2013 - Michael Lelli
|
||||
*
|
||||
* RetroArch is free software: you can redistribute it and/or modify it under the terms
|
||||
* of the GNU General Public License as published by the Free Software Found-
|
||||
* ation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with RetroArch.
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "../driver.h"
|
||||
#include "../emscripten/RWebCam.h"
|
||||
#include "../android/native/jni/jni_macros.h"
|
||||
|
||||
static void *android_init(const char *device, uint64_t caps, unsigned width, unsigned height)
|
||||
{
|
||||
(void)device;
|
||||
(void)caps;
|
||||
(void)width;
|
||||
(void)height;
|
||||
return (void*)0;
|
||||
}
|
||||
|
||||
static void android_free(void *data)
|
||||
{
|
||||
struct android_app *android_app = (struct android_app*)g_android;
|
||||
(void)android_app;
|
||||
(void)data;
|
||||
}
|
||||
|
||||
static bool android_start(void *data)
|
||||
{
|
||||
struct android_app *android_app = (struct android_app*)g_android;
|
||||
(void)android_app;
|
||||
(void)data;
|
||||
return true;
|
||||
}
|
||||
|
||||
static void android_stop(void *data)
|
||||
{
|
||||
struct android_app *android_app = (struct android_app*)g_android;
|
||||
(void)android_app;
|
||||
(void)data;
|
||||
}
|
||||
|
||||
static bool android_poll(void *data, retro_camera_frame_raw_framebuffer_t frame_raw_cb,
|
||||
retro_camera_frame_opengl_texture_t frame_gl_cb)
|
||||
{
|
||||
struct android_app *android_app = (struct android_app*)g_android;
|
||||
(void)android_app;
|
||||
(void)data;
|
||||
return true;
|
||||
}
|
||||
|
||||
const camera_driver_t camera_android = {
|
||||
android_init,
|
||||
android_free,
|
||||
android_start,
|
||||
android_stop,
|
||||
android_poll,
|
||||
"android",
|
||||
};
|
Loading…
x
Reference in New Issue
Block a user