duckstation

duckstation, but archived from the revision just before upstream changed it to a proprietary software project, this version is the libre one
git clone https://git.neptards.moe/u3shit/duckstation.git
Log | Files | Refs | README | LICENSE

jni.h (2263B)


      1 /*
      2  * JNI public API functions
      3  *
      4  * Copyright (c) 2015-2016 Matthieu Bouron <matthieu.bouron stupeflix.com>
      5  *
      6  * This file is part of FFmpeg.
      7  *
      8  * FFmpeg is free software; you can redistribute it and/or
      9  * modify it under the terms of the GNU Lesser General Public
     10  * License as published by the Free Software Foundation; either
     11  * version 2.1 of the License, or (at your option) any later version.
     12  *
     13  * FFmpeg is distributed in the hope that it will be useful,
     14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
     15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     16  * Lesser General Public License for more details.
     17  *
     18  * You should have received a copy of the GNU Lesser General Public
     19  * License along with FFmpeg; if not, write to the Free Software
     20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
     21  */
     22 
     23 #ifndef AVCODEC_JNI_H
     24 #define AVCODEC_JNI_H
     25 
     26 /*
     27  * Manually set a Java virtual machine which will be used to retrieve the JNI
     28  * environment. Once a Java VM is set it cannot be changed afterwards, meaning
     29  * you can call multiple times av_jni_set_java_vm with the same Java VM pointer
     30  * however it will error out if you try to set a different Java VM.
     31  *
     32  * @param vm Java virtual machine
     33  * @param log_ctx context used for logging, can be NULL
     34  * @return 0 on success, < 0 otherwise
     35  */
     36 int av_jni_set_java_vm(void *vm, void *log_ctx);
     37 
     38 /*
     39  * Get the Java virtual machine which has been set with av_jni_set_java_vm.
     40  *
     41  * @param vm Java virtual machine
     42  * @return a pointer to the Java virtual machine
     43  */
     44 void *av_jni_get_java_vm(void *log_ctx);
     45 
     46 /*
     47  * Set the Android application context which will be used to retrieve the Android
     48  * content resolver to handle content uris.
     49  *
     50  * This function is only available on Android.
     51  *
     52  * @param app_ctx global JNI reference to the Android application context
     53  * @return 0 on success, < 0 otherwise
     54  */
     55 int av_jni_set_android_app_ctx(void *app_ctx, void *log_ctx);
     56 
     57 /*
     58  * Get the Android application context that has been set with
     59  * av_jni_set_android_app_ctx.
     60  *
     61  * This function is only available on Android.
     62  *
     63  * @return a pointer the the Android application context
     64  */
     65 void *av_jni_get_android_app_ctx(void);
     66 
     67 #endif /* AVCODEC_JNI_H */