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 AddGroup (const ChannelGroup &group, 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 220 of file RealtimeEffectManager.h.

Constructor & Destructor Documentation

◆ InitializationScope() [1/3]

RealtimeEffects::InitializationScope::InitializationScope ( )
inline

Definition at line 222 of file RealtimeEffectManager.h.

222{}

◆ InitializationScope() [2/3]

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

Definition at line 223 of file RealtimeEffectManager.h.

227 , mwProject{ move(wProject) }
228 , mNumPlaybackChannels{ numPlaybackChannels }
229 {
230 if (auto pProject = mwProject.lock())
232 }
static RealtimeEffectManager & Get(AudacityProject &project)
void Initialize(RealtimeEffects::InitializationScope &scope, double sampleRate)
Main thread begins to define a set of groups for playback.
std::weak_ptr< AudacityProject > mwProject

References RealtimeEffectManager::Get(), RealtimeEffectManager::Initialize(), mwProject, and anonymous_namespace{ClipSegmentTest.cpp}::sampleRate.

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 235 of file RealtimeEffectManager.h.

236 {
237 if (auto pProject = mwProject.lock())
239 }
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

◆ AddGroup()

void RealtimeEffects::InitializationScope::AddGroup ( const ChannelGroup group,
unsigned  chans,
float  rate 
)
inline

Definition at line 241 of file RealtimeEffectManager.h.

243 {
244 if (auto pProject = mwProject.lock())
246 .AddGroup(*this, group, chans, rate);
247 }
void AddGroup(RealtimeEffects::InitializationScope &scope, const ChannelGroup &group, unsigned chans, float rate)

References RealtimeEffectManager::AddGroup(), 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 249 of file RealtimeEffectManager.h.

Referenced by RealtimeEffectManager::MakeNewState().

◆ mNumPlaybackChannels

unsigned RealtimeEffects::InitializationScope::mNumPlaybackChannels

Definition at line 251 of file RealtimeEffectManager.h.

Referenced by RealtimeEffectManager::MakeNewState().

◆ mSampleRate

double RealtimeEffects::InitializationScope::mSampleRate

Definition at line 250 of file RealtimeEffectManager.h.

Referenced by RealtimeEffectManager::MakeNewState().

◆ mwProject

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

Definition at line 254 of file RealtimeEffectManager.h.

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


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