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_LevelMeasuringNode.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
namespace
tracktion
{
inline
namespace
engine
12
{
13
17
class
LevelMeasuringNode
final :
public
tracktion::graph::Node
18
{
19
public
:
20
LevelMeasuringNode
(
std::unique_ptr<tracktion::graph::Node>
inputNode,
LevelMeasurer
&);
21
22
tracktion::graph::NodeProperties
getNodeProperties
()
override
{
return
input->getNodeProperties(); }
23
std::vector<tracktion::graph::Node*>
getDirectInputNodes
()
override
{
return
{ input.
get
() }; }
24
bool
isReadyToProcess
()
override
{
return
input->hasProcessed(); }
25
void
process
(
tracktion::graph::Node::ProcessContext
&)
override
;
26
27
private
:
28
std::unique_ptr<tracktion::graph::Node>
input;
29
LevelMeasurer
& levelMeasurer;
30
};
31
32
}}
// namespace tracktion { inline namespace engine
tracktion::engine::LevelMeasurer
Monitors the levels of buffers that are passed in, and keeps peak values, overloads,...
Definition
tracktion_LevelMeasurer.h:26
tracktion::engine::LevelMeasuringNode
A Node that passes its incomming audio and MIDI through a LevelMeasurer.
Definition
tracktion_LevelMeasuringNode.h:18
tracktion::engine::LevelMeasuringNode::getDirectInputNodes
std::vector< tracktion::graph::Node * > getDirectInputNodes() override
Should return all the inputs directly feeding in to this node.
Definition
tracktion_LevelMeasuringNode.h:23
tracktion::engine::LevelMeasuringNode::process
void process(tracktion::graph::Node::ProcessContext &) override
Called when the node is to be processed.
Definition
tracktion_LevelMeasuringNode.cpp:22
tracktion::engine::LevelMeasuringNode::getNodeProperties
tracktion::graph::NodeProperties getNodeProperties() override
Should return the properties of the node.
Definition
tracktion_LevelMeasuringNode.h:22
tracktion::engine::LevelMeasuringNode::isReadyToProcess
bool isReadyToProcess() override
Should return true when this node is ready to be processed.
Definition
tracktion_LevelMeasuringNode.h:24
tracktion::graph::Node
Main graph Node processor class.
Definition
tracktion_Node.h:217
tracktion::graph::Node::ProcessContext
Struct to describe a single iteration of a process call.
Definition
tracktion_Node.h:303
std::unique_ptr::get
T get(T... args)
tracktion
Definition
tracktion_AudioReader.h:23
tracktion::graph::NodeProperties
Holds some really basic properties of a node.
Definition
tracktion_Node.h:152
std::unique_ptr
std::vector
« « « Anklang Documentation