11namespace tracktion {
inline namespace engine
18 : indexInDevice (index), channel (c)
22bool ChannelIndex::operator== (
const ChannelIndex& other)
const {
return indexInDevice == other.indexInDevice && channel == other.channel; }
23bool ChannelIndex::operator!= (
const ChannelIndex& other)
const {
return ! operator== (other); }
30 for (
const auto& ci : channels)
47 for (
const auto& ci : channels)
55 struct NamedChannelTypeCache
57 NamedChannelTypeCache()
64 if (name.isNotEmpty())
65 map[name] = channelType;
72 static NamedChannelTypeCache cache;
73 const auto result = cache.map.find (abbreviatedName);
75 if (result != cache.map.end())
76 return result->second;
100 : name (nm), enabled (isEnabled)
107 : name (nm), channels (chans, chans + numChans), enabled (isEnabled)
112 return name == other.name && enabled == other.enabled && channels == other.channels;
117 return ! operator== (other);
void addChannel(ChannelType newChannelType)
static String JUCE_CALLTYPE getAbbreviatedChannelTypeName(ChannelType)
static StringArray fromTokens(StringRef stringToTokenise, bool preserveQuotedStrings)
juce::AudioChannelSet createChannelSet(const std::vector< ChannelIndex > &channels)
Creates an AudioChannelSet for a list of ChannelIndexes.
juce::AudioChannelSet::ChannelType channelTypeFromAbbreviatedName(const juce::String &abbreviatedName)
Returns the ChannelType for an abbreviated name.
juce::String createDescriptionOfChannels(const std::vector< ChannelIndex > &channels)
Creates a String description of the channels.
juce::AudioChannelSet channelSetFromSpeakerArrangmentString(const juce::String &arrangement)
Creates an AudioChannelSet from a list of abbreviated channel names.
Describes a channel of a WaveInputDevice or WaveOutputDevice by specifying the channel index in the g...
ChannelIndex()
Creates a default, invalid ChannelIndex.
Describes a WaveDevice from which the WaveOutputDevice and WaveInputDevice lists will be built.
WaveDeviceDescription()
Creates an invalid device description.