tracktion-engine
3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications
« « « Anklang Documentation
Loading...
Searching...
No Matches
tracktion_engine
playback
graph
tracktion_AuxSendNode.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
11
#pragma once
12
13
namespace
tracktion
{
inline
namespace
engine
14
{
15
16
class
TrackMuteState;
17
22
class
AuxSendNode
final :
public
tracktion::graph::SendNode
23
{
24
public
:
25
//==============================================================================
27
AuxSendNode
(
std::unique_ptr<Node>
inputNode,
int
busIDToUse,
28
AuxSendPlugin
&,
tracktion::graph::PlayHeadState
&,
const
TrackMuteState
*,
29
bool
processAuxSendsWhenTrackIsMuted);
30
31
//==============================================================================
32
NodeProperties
getNodeProperties
()
override
;
33
void
prepareToPlay
(
const
tracktion::graph::PlaybackInitialisationInfo
&)
override
;
34
void
process
(
ProcessContext
&)
override
;
35
36
private
:
37
//==============================================================================
38
tracktion::graph::PlayHeadState
& playHeadState;
39
40
Plugin::Ptr pluginPtr;
41
AuxSendPlugin
& sendPlugin;
42
43
double
sampleRate = 44100.0;
44
TimeDuration
automationAdjustmentTime;
45
46
std::optional<NodeProperties>
cachedNodeProperties;
47
bool
isPrepared =
false
;
48
};
49
50
}}
// namespace tracktion { inline namespace engine
tracktion::AuxSendNode
Node for an aux send.
Definition
tracktion_AuxSendNode.h:23
tracktion::engine::AuxSendNode::getNodeProperties
NodeProperties getNodeProperties() override
Should return the properties of the node.
Definition
tracktion_AuxSendNode.cpp:51
tracktion::engine::AuxSendNode::process
void process(ProcessContext &) override
Called when the node is to be processed.
Definition
tracktion_AuxSendNode.cpp:74
tracktion::engine::AuxSendNode::prepareToPlay
void prepareToPlay(const tracktion::graph::PlaybackInitialisationInfo &) override
Called once before playback begins for each node.
Definition
tracktion_AuxSendNode.cpp:64
tracktion::AuxSendPlugin
Definition
tracktion_AuxSend.h:15
tracktion::TrackMuteState
Holds the state of a Track and if its contents/plugins should be played or not.
Definition
tracktion_TrackMutingNode.h:18
tracktion::graph::Node::ProcessContext
Struct to describe a single iteration of a process call.
Definition
tracktion_Node.h:303
tracktion::graph::PlayHeadState
Determines how this block releates to other previous render blocks and if the play head has jumped in...
Definition
tracktion_PlayHeadState.h:24
tracktion::graph::SendNode
Definition
tracktion_TestNodes.h:394
tracktion
Definition
tracktion_AudioReader.h:23
std::optional
tracktion::TimeDuration
Represents a duration in real-life time.
Definition
tracktion_Time.h:99
tracktion::NodeProperties
Holds some really basic properties of a node.
Definition
tracktion_Node.h:152
tracktion::graph::PlaybackInitialisationInfo
Passed into Nodes when they are being initialised, to give them useful contextual information that th...
Definition
tracktion_Node.h:140
std::unique_ptr
« « « Anklang Documentation