TracktionEngine
Loading...
Searching...
No Matches
Public Attributes | List of all members
engine::CreateNodeParams Struct Reference

Contains options for Edit Node content creation. More...

#include <tracktion_EditNodeBuilder.h>

Public Attributes

ProcessStateprocessState
 The process state of the graph.
 
double sampleRate = 44100.0
 The sample rate to use.
 
int blockSize = 256
 The block size to use.
 
const juce::Array< Clip * > * allowedClips = nullptr
 The clips to include.
 
juce::Array< Track * > * allowedTracks = nullptr
 The tracks to include.
 
bool forRendering = false
 If the node is for rendering or not.
 
bool includePlugins = true
 Whether to include track plugins.
 
bool includeMasterPlugins = true
 Whether to include master plugins, fades and volume.
 
bool includeBypassedPlugins = true
 If false, bypassed plugins will be completely ommited from the graph.
 
bool implicitlyIncludeSubmixChildTracks = true
 If true, child track in submixes will be included regardless of the allowedTracks param.
 
juce::Array< EditItemIDtracksToProcessWhileMuted = {}
 Tracks whose contents keep processing while the track is muted, so they can feed sidechains, aux buses and racks without being heard.
 
bool allowClipSlots = true
 If true, track's clip slots will be included, set to false to disable these (which will use a slightly more efficient Node).
 
bool readAheadTimeStretchNodes = false
 TEMPORARY: If true, real-time time-stretch Nodes will use a larger buffer and background thread to reduce audio CPU use.
 
std::function< std::unique_ptr< graph::Node >(OutputDevice &, const CreateNodeParams &, std::unique_ptr< graph::Node >)> insertOptionalLastStageNodeForDevice = {}
 If set, this will be called for each output device to give an opportunity to add an additional final Node.
 

Detailed Description

Contains options for Edit Node content creation.

Member Data Documentation

◆ processState

ProcessState& engine::CreateNodeParams::processState

The process state of the graph.

◆ sampleRate

double engine::CreateNodeParams::sampleRate = 44100.0

The sample rate to use.

◆ blockSize

int engine::CreateNodeParams::blockSize = 256

The block size to use.

◆ allowedClips

const juce::Array<Clip*>* engine::CreateNodeParams::allowedClips = nullptr

The clips to include.

If nullptr, all clips will be included.

◆ allowedTracks

juce::Array<Track*>* engine::CreateNodeParams::allowedTracks = nullptr

The tracks to include.

If nullptr, all tracks will be included.

◆ forRendering

bool engine::CreateNodeParams::forRendering = false

If the node is for rendering or not.

In renders, freeze files won't be used.

◆ includePlugins

bool engine::CreateNodeParams::includePlugins = true

Whether to include track plugins.

◆ includeMasterPlugins

bool engine::CreateNodeParams::includeMasterPlugins = true

Whether to include master plugins, fades and volume.

◆ includeBypassedPlugins

bool engine::CreateNodeParams::includeBypassedPlugins = true

If false, bypassed plugins will be completely ommited from the graph.

◆ implicitlyIncludeSubmixChildTracks

bool engine::CreateNodeParams::implicitlyIncludeSubmixChildTracks = true

If true, child track in submixes will be included regardless of the allowedTracks param.

Only relevent when forRendering is also true.

◆ tracksToProcessWhileMuted

juce::Array<EditItemID> engine::CreateNodeParams::tracksToProcessWhileMuted = {}

Tracks whose contents keep processing while the track is muted, so they can feed sidechains, aux buses and racks without being heard.

Used by stem renders.

See also
Renderer::Parameters::tracksToProcessWhileMuted

◆ allowClipSlots

bool engine::CreateNodeParams::allowClipSlots = true

If true, track's clip slots will be included, set to false to disable these (which will use a slightly more efficient Node).

◆ readAheadTimeStretchNodes

bool engine::CreateNodeParams::readAheadTimeStretchNodes = false

TEMPORARY: If true, real-time time-stretch Nodes will use a larger buffer and background thread to reduce audio CPU use.

◆ insertOptionalLastStageNodeForDevice

std::function<std::unique_ptr<graph::Node>(OutputDevice&, const CreateNodeParams&, std::unique_ptr<graph::Node>)> engine::CreateNodeParams::insertOptionalLastStageNodeForDevice = {}

If set, this will be called for each output device to give an opportunity to add an additional final Node.

Unlike EditNodeBuilder::insertOptionalLastStageNode this is carried per graph build (set via EditPlaybackContext) so different Edits can each have their own callback. The callback receives the OutputDevice being built, the CreateNodeParams (for sample rate/block size/ProcessState) and the current output Node, and returns the Node to use (e.g. a transient generator Plugin summed into the output).


The documentation for this struct was generated from the following file: