Audacity 3.2.0
Public Member Functions | Public Attributes | Private Attributes | List of all members
RealtimeEffects::InitializationScope Class Reference

Brackets processing setup and cleanup in the main thread. More...

#include <RealtimeEffectManager.h>

Collaboration diagram for RealtimeEffects::InitializationScope:
[legend]

Public Member Functions

 InitializationScope ()
 
 InitializationScope (std::weak_ptr< AudacityProject > wProject, double sampleRate, unsigned numPlaybackChannels)
 
 InitializationScope (InitializationScope &&other)=default
 
InitializationScopeoperator= (InitializationScope &&other)=default
 
 ~InitializationScope ()
 
void AddTrack (const Track &track, unsigned chans, float rate)
 

Public Attributes

std::vector< std::shared_ptr< EffectInstance > > mInstances
 
double mSampleRate
 
unsigned mNumPlaybackChannels
 

Private Attributes

std::weak_ptr< AudacityProjectmwProject
 

Detailed Description

Brackets processing setup and cleanup in the main thread.

Definition at line 212 of file RealtimeEffectManager.h.

Constructor & Destructor Documentation

◆ InitializationScope() [1/3]

RealtimeEffects::InitializationScope::InitializationScope ( )
inline

Definition at line 214 of file RealtimeEffectManager.h.

214{}

◆ InitializationScope() [2/3]

RealtimeEffects::InitializationScope::InitializationScope ( std::weak_ptr< AudacityProject wProject,
double  sampleRate,
unsigned  numPlaybackChannels 
)
inlineexplicit

Definition at line 215 of file RealtimeEffectManager.h.

218 : mSampleRate{ sampleRate }
219 , mwProject{ move(wProject) }
220 , mNumPlaybackChannels{ numPlaybackChannels }
221 {
222 if (auto pProject = mwProject.lock())
223 RealtimeEffectManager::Get(*pProject).Initialize(*this, sampleRate);
224 }
static RealtimeEffectManager & Get(AudacityProject &project)
void Initialize(RealtimeEffects::InitializationScope &scope, double sampleRate)
Main thread begins to define a set of tracks for playback.
std::weak_ptr< AudacityProject > mwProject

References RealtimeEffectManager::Get(), RealtimeEffectManager::Initialize(), and mwProject.

Here is the call graph for this function:

◆ InitializationScope() [3/3]

RealtimeEffects::InitializationScope::InitializationScope ( InitializationScope &&  other)
default

◆ ~InitializationScope()

RealtimeEffects::InitializationScope::~InitializationScope ( )
inline

Definition at line 227 of file RealtimeEffectManager.h.

228 {
229 if (auto pProject = mwProject.lock())
231 }
void Finalize() noexcept
Main thread cleans up after playback.

References RealtimeEffectManager::Finalize(), RealtimeEffectManager::Get(), and mwProject.

Here is the call graph for this function:

Member Function Documentation

◆ AddTrack()

void RealtimeEffects::InitializationScope::AddTrack ( const Track track,
unsigned  chans,
float  rate 
)
inline

Definition at line 233 of file RealtimeEffectManager.h.

234 {
235 if (auto pProject = mwProject.lock())
237 .AddTrack(*this, track, chans, rate);
238 }
void AddTrack(RealtimeEffects::InitializationScope &scope, const Track &track, unsigned chans, float rate)

References RealtimeEffectManager::AddTrack(), RealtimeEffectManager::Get(), and mwProject.

Here is the call graph for this function:

◆ operator=()

InitializationScope & RealtimeEffects::InitializationScope::operator= ( InitializationScope &&  other)
default

Member Data Documentation

◆ mInstances

std::vector<std::shared_ptr<EffectInstance> > RealtimeEffects::InitializationScope::mInstances

Definition at line 240 of file RealtimeEffectManager.h.

Referenced by RealtimeEffectManager::MakeNewState().

◆ mNumPlaybackChannels

unsigned RealtimeEffects::InitializationScope::mNumPlaybackChannels

Definition at line 242 of file RealtimeEffectManager.h.

Referenced by RealtimeEffectManager::MakeNewState().

◆ mSampleRate

double RealtimeEffects::InitializationScope::mSampleRate

Definition at line 241 of file RealtimeEffectManager.h.

Referenced by RealtimeEffectManager::MakeNewState().

◆ mwProject

std::weak_ptr<AudacityProject> RealtimeEffects::InitializationScope::mwProject
private

Definition at line 245 of file RealtimeEffectManager.h.

Referenced by AddTrack(), InitializationScope(), and ~InitializationScope().


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