use crate::{DriverCategory, DriverRegistryMap};
use std::collections::HashMap;
use std::sync::Arc;
pub fn register(registry: &mut DriverRegistryMap) {
let category = DriverCategory::Bluetooth;
let map = registry.entry(category).or_insert_with(HashMap::new);
#[cfg(any(feature = "bluetooth", feature = "all"))]
{
use crate::drivers::*;
map.insert(
"bluetooth_turn_on".to_string(),
Arc::new(BluetoothTurnOnDriver),
);
map.insert(
"bluetooth_turn_off".to_string(),
Arc::new(BluetoothTurnOffDriver),
);
map.insert("bluetooth_scan".to_string(), Arc::new(BluetoothScanDriver));
map.insert(
"bluetooth_pairable".to_string(),
Arc::new(BluetoothPairableDriver),
);
map.insert("bluetooth_pair".to_string(), Arc::new(BluetoothPairDriver));
map.insert(
"bluetooth_unpair".to_string(),
Arc::new(BluetoothUnpairDriver),
);
map.insert(
"bluetooth_list_paired".to_string(),
Arc::new(BluetoothListPairedDriver),
);
map.insert(
"bluetooth_connect".to_string(),
Arc::new(BluetoothConnectDriver),
);
map.insert(
"bluetooth_disconnect".to_string(),
Arc::new(BluetoothDisconnectDriver),
);
map.insert(
"bluetooth_send_file".to_string(),
Arc::new(BluetoothSendFileDriver),
);
map.insert(
"bluetooth_receive_file".to_string(),
Arc::new(BluetoothReceiveFileDriver),
);
map.insert(
"bluetooth_serial".to_string(),
Arc::new(BluetoothSerialDriver),
);
map.insert(
"bluetooth_scan_services".to_string(),
Arc::new(BluetoothScanServicesDriver),
);
map.insert(
"bluetooth_ble_read".to_string(),
Arc::new(BluetoothBleReadDriver),
);
map.insert(
"bluetooth_ble_write".to_string(),
Arc::new(BluetoothBleWriteDriver),
);
map.insert(
"bluetooth_ble_notify".to_string(),
Arc::new(BluetoothBleNotifyDriver),
);
map.insert(
"bluetooth_adapter_status".to_string(),
Arc::new(BluetoothAdapterStatusDriver),
);
map.insert(
"bluetooth_set_device_name".to_string(),
Arc::new(BluetoothSetDeviceNameDriver),
);
map.insert(
"bluetooth_get_mac_address".to_string(),
Arc::new(BluetoothGetMacAddressDriver),
);
map.insert(
"bluetooth_reject_pairing".to_string(),
Arc::new(BluetoothRejectPairingDriver),
);
map.insert(
"bluetooth_confirm_pin".to_string(),
Arc::new(BluetoothConfirmPinDriver),
);
map.insert(
"bluetooth_set_discoverable_timeout".to_string(),
Arc::new(BluetoothSetDiscoverableTimeoutDriver),
);
map.insert(
"bluetooth_get_connected_devices".to_string(),
Arc::new(BluetoothGetConnectedDevicesDriver),
);
map.insert(
"bluetooth_device_info".to_string(),
Arc::new(BluetoothDeviceInfoDriver),
);
map.insert(
"bluetooth_audio_connect".to_string(),
Arc::new(BluetoothAudioConnectDriver),
);
map.insert(
"bluetooth_audio_disconnect".to_string(),
Arc::new(BluetoothAudioDisconnectDriver),
);
map.insert(
"bluetooth_hid_connect".to_string(),
Arc::new(BluetoothHidConnectDriver),
);
map.insert(
"bluetooth_trust_device".to_string(),
Arc::new(BluetoothTrustDeviceDriver),
);
map.insert(
"bluetooth_delete_device".to_string(),
Arc::new(BluetoothDeleteDeviceDriver),
);
map.insert(
"bluetooth_le_advertise_start".to_string(),
Arc::new(BluetoothLeAdvertiseStartDriver),
);
map.insert(
"bluetooth_le_advertise_stop".to_string(),
Arc::new(BluetoothLeAdvertiseStopDriver),
);
map.insert(
"bluetooth_le_scan_filter".to_string(),
Arc::new(BluetoothLeScanFilterDriver),
);
map.insert(
"bluetooth_battery_get".to_string(),
Arc::new(BluetoothBatteryGetDriver),
);
map.insert(
"bluetooth_rssi_get".to_string(),
Arc::new(BluetoothRssiGetDriver),
);
map.insert(
"bluetooth_firmware_version".to_string(),
Arc::new(BluetoothFirmwareVersionDriver),
);
map.insert(
"bluetooth_rename_device".to_string(),
Arc::new(BluetoothRenameDeviceDriver),
);
map.insert(
"bluetooth_profile_list".to_string(),
Arc::new(BluetoothProfileListDriver),
);
map.insert(
"bluetooth_priority_set".to_string(),
Arc::new(BluetoothPrioritySetDriver),
);
map.insert(
"bluetooth_auto_connect_toggle".to_string(),
Arc::new(BluetoothAutoConnectToggleDriver),
);
map.insert(
"bluetooth_set_receive_directory".to_string(),
Arc::new(BluetoothSetReceiveDirectoryDriver),
);
}
}