Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
ModulatorMacroProcessor Class Referencefinal

Modulator macro button processor. More...

#include <src/gui/dsp/modulator_macro_processor.h>

Inheritance diagram for ModulatorMacroProcessor:
Collaboration diagram for ModulatorMacroProcessor:

Public Member Functions

 ModulatorMacroProcessor (PortRegistry &port_registry, ModulatorTrack *track, std::optional< int > idx, bool new_identity)
void set_port_metadata_from_owner (dsp::PortIdentifier &id, PortRange &range) const override
 Function that will be called by the Port to update the identifier's relevant members based on this port owner.
utils::Utf8String get_full_designation_for_port (const dsp::PortIdentifier &id) const override
auto get_name () const
void init_loaded (ModulatorTrack &track)
void set_name (const utils::Utf8String &name)
ModulatorTrackget_track () const
utils::Utf8String get_node_name () const override
 Returns a human friendly name of the node.
void process_block (EngineProcessTimeInfo time_nfo) override
CVPortget_cv_in_port ()
CVPortget_cv_out_port ()
ControlPortget_macro_port ()
Public Member Functions inherited from zrythm::dsp::graph::IProcessable
virtual nframes_t get_single_playback_latency () const
 Returns the latency of only the given processable, without adding the previous/next latencies.
virtual void prepare_for_processing (sample_rate_t sample_rate, nframes_t max_block_length)
 Called to allocate resources required for processing.
virtual void release_resources ()
 Called to release resources allocated by prepare_for_processing().
Public Member Functions inherited from IPortOwner
virtual void on_control_change_event (const PortUuid &port_uuid, const dsp::PortIdentifier &id, float val)
 Will be called when a control port's value changes.
virtual void on_midi_activity (const dsp::PortIdentifier &id)
 Called during processing if the MIDI port contains new MIDI events.
virtual bool should_sum_data_from_backend () const
 Whether during processing, the port should sum the data from its backend buffers coming in.
virtual bool should_bounce_to_master (utils::audio::BounceStep step) const
 Whether the port should add its data to the master output when bouncing.
virtual bool are_events_on_midi_channel_approved (midi_byte_t channel) const
 Returns whether MIDI events on this channel on an input port should be processed (not ignored).

Friends

void init_from (ModulatorMacroProcessor &obj, const ModulatorMacroProcessor &other, utils::ObjectCloneType clone_type)
void to_json (nlohmann::json &j, const ModulatorMacroProcessor &p)
void from_json (const nlohmann::json &j, ModulatorMacroProcessor &p)

Additional Inherited Members

Public Types inherited from IPortOwner
using TrackUuid = dsp::PortIdentifier::TrackUuid
using PluginUuid = dsp::PortIdentifier::PluginUuid
using PortUuid = dsp::PortIdentifier::PortUuid

Detailed Description

Modulator macro button processor.

Has 1 control input, many CV inputs and 1 CV output.

Can only belong to modulator track.

Definition at line 28 of file modulator_macro_processor.h.

Member Function Documentation

◆ get_cv_in_port()

CVPort & ModulatorMacroProcessor::get_cv_in_port ( )
inline

Definition at line 67 of file modulator_macro_processor.h.

◆ get_cv_out_port()

CVPort & ModulatorMacroProcessor::get_cv_out_port ( )
inline

Definition at line 72 of file modulator_macro_processor.h.

◆ get_full_designation_for_port()

utils::Utf8String ModulatorMacroProcessor::get_full_designation_for_port ( const dsp::PortIdentifier & id) const
overridevirtual

Reimplemented from IPortOwner.

◆ get_macro_port()

ControlPort & ModulatorMacroProcessor::get_macro_port ( )
inline

Definition at line 77 of file modulator_macro_processor.h.

◆ get_name()

auto ModulatorMacroProcessor::get_name ( ) const
inline

Definition at line 45 of file modulator_macro_processor.h.

◆ get_node_name()

utils::Utf8String ModulatorMacroProcessor::get_node_name ( ) const
inlineoverridevirtual

Returns a human friendly name of the node.

Implements zrythm::dsp::graph::IProcessable.

Definition at line 53 of file modulator_macro_processor.h.

◆ get_track()

ModulatorTrack * ModulatorMacroProcessor::get_track ( ) const
inline

Definition at line 51 of file modulator_macro_processor.h.

◆ process_block()

void ModulatorMacroProcessor::process_block ( EngineProcessTimeInfo time_nfo)
overridevirtual

Reimplemented from zrythm::dsp::graph::IProcessable.

◆ set_name()

void ModulatorMacroProcessor::set_name ( const utils::Utf8String & name)
inline

Definition at line 49 of file modulator_macro_processor.h.

◆ set_port_metadata_from_owner()

void ModulatorMacroProcessor::set_port_metadata_from_owner ( dsp::PortIdentifier & id,
PortRange & range ) const
overridevirtual

Function that will be called by the Port to update the identifier's relevant members based on this port owner.

Parameters
idThe identifier to update.

Implements IPortOwner.

◆ from_json

void from_json ( const nlohmann::json & j,
ModulatorMacroProcessor & p )
friend

Definition at line 96 of file modulator_macro_processor.h.

◆ to_json

void to_json ( nlohmann::json & j,
const ModulatorMacroProcessor & p )
friend

Definition at line 87 of file modulator_macro_processor.h.


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