61class JUCE_API AudioIODeviceType
113 const String& inputDeviceName) = 0;
144 virtual ~AudioIODeviceType();
171 [[deprecated (
"You should call the method which takes a WASAPIDeviceMode instead.")]]
176 explicit AudioIODeviceType (
const String& typeName);
185 JUCE_DECLARE_NON_COPYABLE (AudioIODeviceType)
virtual void audioDeviceListChanged()=0
static AudioIODeviceType * createAudioIODeviceType_WASAPI(WASAPIDeviceMode deviceMode)
virtual int getDefaultDeviceIndex(bool forInput) const =0
static AudioIODeviceType * createAudioIODeviceType_ASIO()
static AudioIODeviceType * createAudioIODeviceType_Oboe()
static AudioIODeviceType * createAudioIODeviceType_JACK()
static AudioIODeviceType * createAudioIODeviceType_DirectSound()
void removeListener(Listener *listener)
static AudioIODeviceType * createAudioIODeviceType_Android()
static AudioIODeviceType * createAudioIODeviceType_OpenSLES()
static AudioIODeviceType * createAudioIODeviceType_CoreAudio()
virtual bool hasSeparateInputsAndOutputs() const =0
virtual StringArray getDeviceNames(bool wantInputNames=false) const =0
void callDeviceChangeListeners()
virtual void scanForDevices()=0
virtual int getIndexOfDevice(AudioIODevice *device, bool asInput) const =0
const String & getTypeName() const noexcept
static AudioIODeviceType * createAudioIODeviceType_Bela()
void addListener(Listener *listener)
static AudioIODeviceType * createAudioIODeviceType_ALSA()
virtual AudioIODevice * createDevice(const String &outputDeviceName, const String &inputDeviceName)=0
static AudioIODeviceType * createAudioIODeviceType_iOSAudio()