OpenShot Audio Library | OpenShotAudio  0.3.3
juce_AudioIODeviceType.cpp
1 /*
2  ==============================================================================
3 
4  This file is part of the JUCE library.
5  Copyright (c) 2017 - ROLI Ltd.
6 
7  JUCE is an open source library subject to commercial or open-source
8  licensing.
9 
10  The code included in this file is provided under the terms of the ISC license
11  http://www.isc.org/downloads/software-support-policy/isc-license. Permission
12  To use, copy, modify, and/or distribute this software for any purpose with or
13  without fee is hereby granted provided that the above copyright notice and
14  this permission notice appear in all copies.
15 
16  JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
17  EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
18  DISCLAIMED.
19 
20  ==============================================================================
21 */
22 
23 namespace juce
24 {
25 
26 AudioIODeviceType::AudioIODeviceType (const String& name)
27  : typeName (name)
28 {
29 }
30 
31 AudioIODeviceType::~AudioIODeviceType()
32 {
33 }
34 
35 //==============================================================================
36 void AudioIODeviceType::addListener (Listener* l) { listeners.add (l); }
37 void AudioIODeviceType::removeListener (Listener* l) { listeners.remove (l); }
38 
39 void AudioIODeviceType::callDeviceChangeListeners()
40 {
41  listeners.call ([] (Listener& l) { l.audioDeviceListChanged(); });
42 }
43 
44 //==============================================================================
45 #if ! JUCE_MAC
46 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_CoreAudio() { return nullptr; }
47 #endif
48 
49 #if ! JUCE_IOS
50 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_iOSAudio() { return nullptr; }
51 #endif
52 
53 #if ! (JUCE_WINDOWS && JUCE_WASAPI)
54 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_WASAPI (bool) { return nullptr; }
55 #endif
56 
57 #if ! (JUCE_WINDOWS && JUCE_DIRECTSOUND)
58 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_DirectSound() { return nullptr; }
59 #endif
60 
61 #if ! (JUCE_WINDOWS && JUCE_ASIO)
62 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_ASIO() { return nullptr; }
63 #endif
64 
65 #if ! (JUCE_LINUX && JUCE_ALSA)
66 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_ALSA() { return nullptr; }
67 #endif
68 
69 #if ! (JUCE_LINUX && JUCE_JACK)
70 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_JACK() { return nullptr; }
71 #endif
72 
73 #if ! (JUCE_LINUX && JUCE_BELA)
74 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_Bela() { return nullptr; }
75 #endif
76 
77 #if ! JUCE_ANDROID
78 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_Android() { return nullptr; }
79 #endif
80 
81 #if ! (JUCE_ANDROID && JUCE_USE_ANDROID_OPENSLES)
82 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_OpenSLES() { return nullptr; }
83 #endif
84 
85 #if ! (JUCE_ANDROID && JUCE_USE_ANDROID_OBOE)
86 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_Oboe() { return nullptr; }
87 #endif
88 
89 } // namespace juce
virtual void audioDeviceListChanged()=0