tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications

« « « Anklang Documentation
Loading...
Searching...
No Matches
tracktion_WaveInputDeviceNode.h
Go to the documentation of this file.
1 /*
2 ,--. ,--. ,--. ,--.
3 ,-' '-.,--.--.,--,--.,---.| |,-.,-' '-.`--' ,---. ,--,--, Copyright 2024
4 '-. .-'| .--' ,-. | .--'| /'-. .-',--.| .-. || \ Tracktion Software
5 | | | | \ '-' \ `--.| \ \ | | | |' '-' '| || | Corporation
6 `---' `--' `--`--'`---'`--'`--' `---' `--' `---' `--''--' www.tracktion.com
7
8 Tracktion Engine uses a GPL/commercial licence - see LICENCE.md for details.
9*/
10
11namespace tracktion { inline namespace engine
12{
13
19{
20public:
22 const juce::AudioChannelSet& destChannelsToFill);
23 ~WaveInputDeviceNode() override;
24
27 bool isReadyToProcess() override;
28 void process (ProcessContext&) override;
29
30 void acceptInputBuffer (choc::buffer::ChannelArrayView<float>) override;
31
32private:
33 //==============================================================================
34 InputDeviceInstance& instance;
35 WaveInputDevice& waveInputDevice;
36 uint32_t lastCallbackTime = 0;
37 tracktion::graph::AudioFifo audioFifo { 1, 32 };
38 const juce::AudioChannelSet destChannels;
39};
40
41}} // namespace tracktion { inline namespace engine
An instance of an InputDevice that's available to an Edit.
A Node that intercepts incoming live audio and inserts it in to the playback graph.
void prepareToPlay(const tracktion::graph::PlaybackInitialisationInfo &) override
Called once before playback begins for each node.
tracktion::graph::NodeProperties getNodeProperties() override
Should return the properties of the node.
void process(ProcessContext &) override
Called when the node is to be processed.
bool isReadyToProcess() override
Should return true when this node is ready to be processed.
void acceptInputBuffer(choc::buffer::ChannelArrayView< float >) override
Override this to receive audio input from the device if it has any.
Main graph Node processor class.
Struct to describe a single iteration of a process call.
typedef uint32_t
Base class for classes that want to listen to an InputDevice and get a callback for each block of inp...
Holds some really basic properties of a node.
Passed into Nodes when they are being initialised, to give them useful contextual information that th...