jni-android-sys 0.0.10

Autogenerated glue code for access Android JVM APIs from Rust
// WARNING:  This file was autogenerated by jni-bindgen.  Any changes to this file may be lost!!!


#[cfg(any(feature = "all", feature = "android-bluetooth-BluetoothHidDevice"))]
__jni_bindgen! {
    /// public final class [BluetoothHidDevice](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html)
    ///
    /// Required feature: "android-bluetooth-BluetoothHidDevice"
    public final class BluetoothHidDevice ("android/bluetooth/BluetoothHidDevice") extends crate::java::lang::Object, implements crate::android::bluetooth::BluetoothProfile {

        /// [getConnectedDevices](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#getConnectedDevices())
        ///
        /// Required features: "java-util-List"
        #[cfg(any(feature = "all", all(feature = "java-util-List")))]
        pub fn getConnectedDevices<'env>(&'env self) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::java::util::List>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "getConnectedDevices", .descriptor == "()Ljava/util/List;"
            unsafe {
                let __jni_args = [];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "getConnectedDevices\0", "()Ljava/util/List;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getDevicesMatchingConnectionStates](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#getDevicesMatchingConnectionStates(int%5B%5D))
        ///
        /// Required features: "java-util-List"
        #[cfg(any(feature = "all", all(feature = "java-util-List")))]
        pub fn getDevicesMatchingConnectionStates<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::IntArray>>) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::java::util::List>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "getDevicesMatchingConnectionStates", .descriptor == "([I)Ljava/util/List;"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "getDevicesMatchingConnectionStates\0", "([I)Ljava/util/List;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getConnectionState](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#getConnectionState(android.bluetooth.BluetoothDevice))
        ///
        /// Required features: "android-bluetooth-BluetoothDevice"
        #[cfg(any(feature = "all", all(feature = "android-bluetooth-BluetoothDevice")))]
        pub fn getConnectionState<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothDevice>>) -> __jni_bindgen::std::result::Result<i32, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "getConnectionState", .descriptor == "(Landroid/bluetooth/BluetoothDevice;)I"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "getConnectionState\0", "(Landroid/bluetooth/BluetoothDevice;)I\0");
                __jni_env.call_int_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [registerApp](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#registerApp(android.bluetooth.BluetoothHidDeviceAppSdpSettings,%20android.bluetooth.BluetoothHidDeviceAppQosSettings,%20android.bluetooth.BluetoothHidDeviceAppQosSettings,%20java.util.concurrent.Executor,%20android.bluetooth.BluetoothHidDevice.Callback))
        ///
        /// Required features: "android-bluetooth-BluetoothHidDeviceAppQosSettings", "android-bluetooth-BluetoothHidDeviceAppSdpSettings", "android-bluetooth-BluetoothHidDevice_Callback", "java-util-concurrent-Executor"
        #[cfg(any(feature = "all", all(feature = "android-bluetooth-BluetoothHidDeviceAppQosSettings", feature = "android-bluetooth-BluetoothHidDeviceAppSdpSettings", feature = "android-bluetooth-BluetoothHidDevice_Callback", feature = "java-util-concurrent-Executor")))]
        pub fn registerApp<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothHidDeviceAppSdpSettings>>, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothHidDeviceAppQosSettings>>, arg2: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothHidDeviceAppQosSettings>>, arg3: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::java::util::concurrent::Executor>>, arg4: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothHidDevice_Callback>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "registerApp", .descriptor == "(Landroid/bluetooth/BluetoothHidDeviceAppSdpSettings;Landroid/bluetooth/BluetoothHidDeviceAppQosSettings;Landroid/bluetooth/BluetoothHidDeviceAppQosSettings;Ljava/util/concurrent/Executor;Landroid/bluetooth/BluetoothHidDevice$Callback;)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __jni_bindgen::AsJValue::as_jvalue(&arg1.into()), __jni_bindgen::AsJValue::as_jvalue(&arg2.into()), __jni_bindgen::AsJValue::as_jvalue(&arg3.into()), __jni_bindgen::AsJValue::as_jvalue(&arg4.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "registerApp\0", "(Landroid/bluetooth/BluetoothHidDeviceAppSdpSettings;Landroid/bluetooth/BluetoothHidDeviceAppQosSettings;Landroid/bluetooth/BluetoothHidDeviceAppQosSettings;Ljava/util/concurrent/Executor;Landroid/bluetooth/BluetoothHidDevice$Callback;)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [unregisterApp](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#unregisterApp())
        pub fn unregisterApp<'env>(&'env self) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "unregisterApp", .descriptor == "()Z"
            unsafe {
                let __jni_args = [];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "unregisterApp\0", "()Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [sendReport](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#sendReport(android.bluetooth.BluetoothDevice,%20int,%20byte%5B%5D))
        ///
        /// Required features: "android-bluetooth-BluetoothDevice"
        #[cfg(any(feature = "all", all(feature = "android-bluetooth-BluetoothDevice")))]
        pub fn sendReport<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothDevice>>, arg1: i32, arg2: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "sendReport", .descriptor == "(Landroid/bluetooth/BluetoothDevice;I[B)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __jni_bindgen::AsJValue::as_jvalue(&arg1), __jni_bindgen::AsJValue::as_jvalue(&arg2.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "sendReport\0", "(Landroid/bluetooth/BluetoothDevice;I[B)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [replyReport](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#replyReport(android.bluetooth.BluetoothDevice,%20byte,%20byte,%20byte%5B%5D))
        ///
        /// Required features: "android-bluetooth-BluetoothDevice"
        #[cfg(any(feature = "all", all(feature = "android-bluetooth-BluetoothDevice")))]
        pub fn replyReport<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothDevice>>, arg1: i8, arg2: i8, arg3: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "replyReport", .descriptor == "(Landroid/bluetooth/BluetoothDevice;BB[B)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __jni_bindgen::AsJValue::as_jvalue(&arg1), __jni_bindgen::AsJValue::as_jvalue(&arg2), __jni_bindgen::AsJValue::as_jvalue(&arg3.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "replyReport\0", "(Landroid/bluetooth/BluetoothDevice;BB[B)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [reportError](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#reportError(android.bluetooth.BluetoothDevice,%20byte))
        ///
        /// Required features: "android-bluetooth-BluetoothDevice"
        #[cfg(any(feature = "all", all(feature = "android-bluetooth-BluetoothDevice")))]
        pub fn reportError<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothDevice>>, arg1: i8) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "reportError", .descriptor == "(Landroid/bluetooth/BluetoothDevice;B)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __jni_bindgen::AsJValue::as_jvalue(&arg1)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "reportError\0", "(Landroid/bluetooth/BluetoothDevice;B)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [connect](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#connect(android.bluetooth.BluetoothDevice))
        ///
        /// Required features: "android-bluetooth-BluetoothDevice"
        #[cfg(any(feature = "all", all(feature = "android-bluetooth-BluetoothDevice")))]
        pub fn connect<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothDevice>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "connect", .descriptor == "(Landroid/bluetooth/BluetoothDevice;)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "connect\0", "(Landroid/bluetooth/BluetoothDevice;)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [disconnect](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#disconnect(android.bluetooth.BluetoothDevice))
        ///
        /// Required features: "android-bluetooth-BluetoothDevice"
        #[cfg(any(feature = "all", all(feature = "android-bluetooth-BluetoothDevice")))]
        pub fn disconnect<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::bluetooth::BluetoothDevice>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/bluetooth/BluetoothHidDevice", java.flags == PUBLIC, .name == "disconnect", .descriptor == "(Landroid/bluetooth/BluetoothDevice;)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/bluetooth/BluetoothHidDevice\0", "disconnect\0", "(Landroid/bluetooth/BluetoothDevice;)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// public static final [ACTION_CONNECTION_STATE_CHANGED](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#ACTION_CONNECTION_STATE_CHANGED)
        pub const ACTION_CONNECTION_STATE_CHANGED : &'static str = "android.bluetooth.hiddevice.profile.action.CONNECTION_STATE_CHANGED";

        /// public static final [ERROR_RSP_INVALID_PARAM](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#ERROR_RSP_INVALID_PARAM)
        pub const ERROR_RSP_INVALID_PARAM : i8 = 4;

        /// public static final [ERROR_RSP_INVALID_RPT_ID](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#ERROR_RSP_INVALID_RPT_ID)
        pub const ERROR_RSP_INVALID_RPT_ID : i8 = 2;

        /// public static final [ERROR_RSP_NOT_READY](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#ERROR_RSP_NOT_READY)
        pub const ERROR_RSP_NOT_READY : i8 = 1;

        /// public static final [ERROR_RSP_SUCCESS](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#ERROR_RSP_SUCCESS)
        pub const ERROR_RSP_SUCCESS : i8 = 0;

        /// public static final [ERROR_RSP_UNKNOWN](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#ERROR_RSP_UNKNOWN)
        pub const ERROR_RSP_UNKNOWN : i8 = 14;

        /// public static final [ERROR_RSP_UNSUPPORTED_REQ](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#ERROR_RSP_UNSUPPORTED_REQ)
        pub const ERROR_RSP_UNSUPPORTED_REQ : i8 = 3;

        /// public static final [PROTOCOL_BOOT_MODE](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#PROTOCOL_BOOT_MODE)
        pub const PROTOCOL_BOOT_MODE : i8 = 0;

        /// public static final [PROTOCOL_REPORT_MODE](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#PROTOCOL_REPORT_MODE)
        pub const PROTOCOL_REPORT_MODE : i8 = 1;

        /// public static final [REPORT_TYPE_FEATURE](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#REPORT_TYPE_FEATURE)
        pub const REPORT_TYPE_FEATURE : i8 = 3;

        /// public static final [REPORT_TYPE_INPUT](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#REPORT_TYPE_INPUT)
        pub const REPORT_TYPE_INPUT : i8 = 1;

        /// public static final [REPORT_TYPE_OUTPUT](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#REPORT_TYPE_OUTPUT)
        pub const REPORT_TYPE_OUTPUT : i8 = 2;

        /// public static final [SUBCLASS1_COMBO](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS1_COMBO)
        pub const SUBCLASS1_COMBO : i8 = -64;

        /// public static final [SUBCLASS1_KEYBOARD](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS1_KEYBOARD)
        pub const SUBCLASS1_KEYBOARD : i8 = 64;

        /// public static final [SUBCLASS1_MOUSE](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS1_MOUSE)
        pub const SUBCLASS1_MOUSE : i8 = -128;

        /// public static final [SUBCLASS1_NONE](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS1_NONE)
        pub const SUBCLASS1_NONE : i8 = 0;

        /// public static final [SUBCLASS2_CARD_READER](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS2_CARD_READER)
        pub const SUBCLASS2_CARD_READER : i8 = 6;

        /// public static final [SUBCLASS2_DIGITIZER_TABLET](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS2_DIGITIZER_TABLET)
        pub const SUBCLASS2_DIGITIZER_TABLET : i8 = 5;

        /// public static final [SUBCLASS2_GAMEPAD](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS2_GAMEPAD)
        pub const SUBCLASS2_GAMEPAD : i8 = 2;

        /// public static final [SUBCLASS2_JOYSTICK](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS2_JOYSTICK)
        pub const SUBCLASS2_JOYSTICK : i8 = 1;

        /// public static final [SUBCLASS2_REMOTE_CONTROL](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS2_REMOTE_CONTROL)
        pub const SUBCLASS2_REMOTE_CONTROL : i8 = 3;

        /// public static final [SUBCLASS2_SENSING_DEVICE](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS2_SENSING_DEVICE)
        pub const SUBCLASS2_SENSING_DEVICE : i8 = 4;

        /// public static final [SUBCLASS2_UNCATEGORIZED](https://developer.android.com/reference/android/bluetooth/BluetoothHidDevice.html#SUBCLASS2_UNCATEGORIZED)
        pub const SUBCLASS2_UNCATEGORIZED : i8 = 0;
    }
}