Switchboard Extension SDK
Loading...
Searching...
No Matches
AudioBusArray.hpp
1//
2// AudioBusArray.hpp
3// SwitchboardSDK
4//
5// Created by Balazs Kiss on 03/03/2024.
6//
7
8#pragma once
9
10#include <switchboard_core/AudioBusFormatArray.hpp>
11
12#include <array>
13#include <switchboard/export.h>
14#include <switchboard_core/AudioBusList.hpp>
15
16namespace switchboard {
17
22template <std::size_t N>
23class SWITCHBOARDSDK_EXPORT AudioBusArray : public AudioBusList {
24public:
30
38
46
47 // MARK: Overridden methods
48
49 uint getNumberOfBuses() const override;
50 AudioBus& getBus(const uint busIndex) const override;
52
53private:
54 std::array<AudioBus, N> buses;
56};
57
58using EmptyAudioBusArray = AudioBusArray<0>;
59
60}
Provides an abstraction around raw audio buffers stored in memory.
Definition AudioBuffer.hpp:22
Holds a list of AudioBus instances and allocates memory on the stack.
Definition AudioBusArray.hpp:23
AudioBusFormatList & getFormat() override
Gets the formats of the audio buses.
uint getNumberOfBuses() const override
Gets the number of audio buses.
AudioBusArray(AudioBuffer< float > &buffer)
Creates an AudioBusArray instance with a single audio bus from an audio buffer.
AudioBusArray()
Creates an AudioBusArray instance.
Definition AudioBusArray.hpp:29
AudioBusArray(AudioBus &audioBus)
Creates an AudioBusArray instance with a single audio bus.
AudioBus & getBus(const uint busIndex) const override
Gets an audio bus by its index.
Holds a list of AudioBusList instances on the stack.
Definition AudioBusFormatArray.hpp:24
Holds a list of AudioBusList instances.
Definition AudioBusFormatList.hpp:25
Represents a stream of audio in one direction.
Definition AudioBus.hpp:22
AudioBusList()=default
Default constructor for AudioBusList.