Audacity 3.2.0
Public Member Functions | Public Attributes | List of all members
LadspaEffectOutputs Struct Reference

Carry output control port information back to main thread. More...

#include <LadspaEffect.h>

Inheritance diagram for LadspaEffectOutputs:
[legend]
Collaboration diagram for LadspaEffectOutputs:
[legend]

Public Member Functions

 ~LadspaEffectOutputs () override
 
std::unique_ptr< EffectOutputsClone () const override
 
void Assign (EffectOutputs &&src) override
 Update one Outputs object from another. More...
 
- Public Member Functions inherited from EffectOutputs
virtual ~EffectOutputs ()
 
virtual std::unique_ptr< EffectOutputsClone () const =0
 
virtual void Assign (EffectOutputs &&src)=0
 Update one Outputs object from another. More...
 

Public Attributes

std::vector< float > controls
 

Detailed Description

Carry output control port information back to main thread.

Definition at line 54 of file LadspaEffect.h.

Constructor & Destructor Documentation

◆ ~LadspaEffectOutputs()

LadspaEffectOutputs::~LadspaEffectOutputs ( )
overridedefault

Member Function Documentation

◆ Assign()

void LadspaEffectOutputs::Assign ( EffectOutputs &&  src)
overridevirtual

Update one Outputs object from another.

This may run in a worker thread, and should avoid allocating and freeing. Even on the main thread, it must avoid relocation of members of containers. Therefore do not grow or clear any containers, but assign the preallocated contents of one container from another.

Parameters
srcsettings to copy from; assume it comes from the same EffectSettingsManager as *this

Implements EffectOutputs.

Definition at line 689 of file LadspaEffect.cpp.

690{
691 // Don't really need to modify src
692 const auto &srcValues = static_cast<LadspaEffectOutputs&>(src).controls;
693 auto &dstValues = controls;
694 assert(srcValues.size() == dstValues.size());
695 copy(srcValues.begin(), srcValues.end(), dstValues.data());
696}
Carry output control port information back to main thread.
Definition: LadspaEffect.h:54
std::vector< float > controls
Definition: LadspaEffect.h:62

References controls.

◆ Clone()

auto LadspaEffectOutputs::Clone ( ) const
overridevirtual

Implements EffectOutputs.

Definition at line 684 of file LadspaEffect.cpp.

685{
686 return std::make_unique<LadspaEffectOutputs>(*this);
687}

Member Data Documentation

◆ controls

std::vector<float> LadspaEffectOutputs::controls

Definition at line 62 of file LadspaEffect.h.

Referenced by Assign(), and LadspaEffect::InitInstance().


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