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

« « « Anklang Documentation
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
tracktion::engine::PluginRenderContext Struct Reference

The context passed to plugin render methods to provide it with buffers to fill. More...

#include "tracktion_Plugin.h"

Public Member Functions

 PluginRenderContext (juce::AudioBuffer< float > *buffer, const juce::AudioChannelSet &bufferChannels, int bufferStart, int bufferSize, MidiMessageArray *midiBuffer, double midiOffset, TimeRange editTime, bool playing, bool scrubbing, bool rendering, bool allowBypassedProcessing) noexcept
 
 PluginRenderContext (const PluginRenderContext &)=default
 Creates a copy of another PluginRenderContext.
 
 PluginRenderContext (PluginRenderContext &&)=default
 
PluginRenderContextoperator= (const PluginRenderContext &)=delete
 Deleted assignment operators.
 
PluginRenderContextoperator= (PluginRenderContext &&)=delete
 

Public Attributes

juce::AudioBuffer< float > * destBuffer
 The target audio buffer which needs to be filled.
 
juce::AudioChannelSet destBufferChannels
 A description of the type of channels in each of the channels in destBuffer.
 
int bufferStartSample
 The index of the start point in the audio buffer from which data must be written.
 
int bufferNumSamples
 The number of samples to write into the audio buffer.
 
MidiMessageArraybufferForMidiMessages
 A buffer of MIDI events to process.
 
double midiBufferOffset
 A time offset to add to the timestamp of any events in the MIDI buffer.
 
TimeRange editTime
 The edit time range this context represents.
 
bool isPlaying
 True if the the playhead is currently playing.
 
bool isScrubbing
 True if the the audio is currently being scrubbed.
 
bool isRendering
 True if the rendering is happening as part of an offline render rather than live playback.
 
bool allowBypassedProcessing
 If this is true and the plugin supports it, this will call the bypassed processing method of the plugin.
 

Detailed Description

The context passed to plugin render methods to provide it with buffers to fill.

Definition at line 47 of file tracktion_Plugin.h.

Constructor & Destructor Documentation

◆ PluginRenderContext()

tracktion::engine::PluginRenderContext::PluginRenderContext ( juce::AudioBuffer< float > *  buffer,
const juce::AudioChannelSet bufferChannels,
int  bufferStart,
int  bufferSize,
MidiMessageArray midiBuffer,
double  midiOffset,
TimeRange  editTime,
bool  playing,
bool  scrubbing,
bool  rendering,
bool  allowBypassedProcessing 
)
noexcept

Definition at line 14 of file tracktion_Plugin.cpp.

Member Data Documentation

◆ allowBypassedProcessing

bool tracktion::engine::PluginRenderContext::allowBypassedProcessing

If this is true and the plugin supports it, this will call the bypassed processing method of the plugin.

If this is false, the plugin simply won't be processed. This can be used to ensure bypassed plugins still introduce their reported latency.

Definition at line 102 of file tracktion_Plugin.h.

◆ bufferForMidiMessages

MidiMessageArray* tracktion::engine::PluginRenderContext::bufferForMidiMessages

A buffer of MIDI events to process.

This may be nullptr if no MIDI is being sent

Definition at line 81 of file tracktion_Plugin.h.

◆ bufferNumSamples

int tracktion::engine::PluginRenderContext::bufferNumSamples

The number of samples to write into the audio buffer.

Definition at line 76 of file tracktion_Plugin.h.

◆ bufferStartSample

int tracktion::engine::PluginRenderContext::bufferStartSample

The index of the start point in the audio buffer from which data must be written.

Definition at line 73 of file tracktion_Plugin.h.

◆ destBuffer

juce::AudioBuffer<float>* tracktion::engine::PluginRenderContext::destBuffer

The target audio buffer which needs to be filled.

This may be nullptr if no audio is being processed.

Definition at line 67 of file tracktion_Plugin.h.

◆ destBufferChannels

juce::AudioChannelSet tracktion::engine::PluginRenderContext::destBufferChannels

A description of the type of channels in each of the channels in destBuffer.

Definition at line 70 of file tracktion_Plugin.h.

◆ editTime

TimeRange tracktion::engine::PluginRenderContext::editTime

The edit time range this context represents.

Definition at line 87 of file tracktion_Plugin.h.

◆ isPlaying

bool tracktion::engine::PluginRenderContext::isPlaying

True if the the playhead is currently playing.

Definition at line 90 of file tracktion_Plugin.h.

◆ isRendering

bool tracktion::engine::PluginRenderContext::isRendering

True if the rendering is happening as part of an offline render rather than live playback.

Definition at line 96 of file tracktion_Plugin.h.

◆ isScrubbing

bool tracktion::engine::PluginRenderContext::isScrubbing

True if the the audio is currently being scrubbed.

Definition at line 93 of file tracktion_Plugin.h.

◆ midiBufferOffset

double tracktion::engine::PluginRenderContext::midiBufferOffset

A time offset to add to the timestamp of any events in the MIDI buffer.

Definition at line 84 of file tracktion_Plugin.h.


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