90 virtual void audioDeviceIOCallback (
const float** inputChannelData,
92 float** outputChannelData,
93 int numOutputChannels,
110 virtual void audioDeviceAboutToStart (
AudioIODevice* device) = 0;
113 virtual void audioDeviceStopped() = 0;
119 virtual void audioDeviceError (
const String& errorMessage);
176 virtual Array<int> getAvailableBufferSizes() = 0;
182 virtual int getDefaultBufferSize() = 0;
202 int bufferSizeSamples) = 0;
205 virtual void close() = 0;
212 virtual bool isOpen() = 0;
228 virtual void stop() = 0;
235 virtual bool isPlaying() = 0;
238 virtual String getLastError() = 0;
245 virtual int getCurrentBufferSizeSamples() = 0;
251 virtual double getCurrentSampleRate() = 0;
257 virtual int getCurrentBitDepth() = 0;
263 virtual BigInteger getActiveOutputChannels()
const = 0;
269 virtual BigInteger getActiveInputChannels()
const = 0;
276 virtual int getOutputLatencyInSamples() = 0;
283 virtual int getInputLatencyInSamples() = 0;
292 virtual bool hasControlPanel()
const;
298 virtual bool showControlPanel();
304 virtual bool setAudioPreprocessingEnabled (
bool shouldBeEnabled);
317 virtual int getXRunCount()
const noexcept;
One of these is passed to an AudioIODevice object to stream the audio data in and out...
#define JUCE_API
This macro is added to all JUCE public class declarations.
const String & getName() const noexcept
Returns the device's name, (as set in the constructor).
A special array for holding a list of strings.
An arbitrarily large integer class.
Holds a resizable array of primitive or copy-by-value objects.
Base class for an audio device with synchronised input and output channels.
const String & getTypeName() const noexcept
Returns the type of the device.