#pragma once
#include <vector>
#include <simpleble/Adapter.h>
#include <simpleble/export.h>
#if __APPLE__
#include "TargetConditionals.h"
#endif
#if defined(_WIN32)
namespace SimpleBLE::Advanced::Windows {}
#endif
#if TARGET_OS_OSX
namespace SimpleBLE::Advanced::MacOS {
std::vector<Peripheral> SIMPLEBLE_EXPORT retrieve_cached_peripherals(Adapter& adapter,
const std::vector<BluetoothAddress>& identifiers);
}
#endif
#if TARGET_OS_IOS
namespace SimpleBLE::Advanced::iOS {
std::vector<Peripheral> SIMPLEBLE_EXPORT retrieve_cached_peripherals(Adapter& adapter,
const std::vector<BluetoothAddress>& identifiers);
}
#endif
#if defined(__ANDROID__)
#include <jni.h>
namespace SimpleBLE::Advanced::Android {
JavaVM* SIMPLEBLE_EXPORT get_jvm();
void SIMPLEBLE_EXPORT set_jvm(JavaVM* jvm);
}
#endif
#if defined(__linux__) && !defined(__ANDROID__)
namespace SimpleBLE::Advanced::Linux {}
#endif