Audacity  3.0.3
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Effect::AddedAnalysisTrack Class Reference

#include <Effect.h>

Collaboration diagram for Effect::AddedAnalysisTrack:
[legend]

Public Member Functions

 AddedAnalysisTrack ()
 
 AddedAnalysisTrack (AddedAnalysisTrack &&that)
 
LabelTrackget () const
 
void Commit ()
 
 ~AddedAnalysisTrack ()
 

Private Member Functions

 AddedAnalysisTrack (Effect *pEffect, const wxString &name)
 
 AddedAnalysisTrack (const AddedAnalysisTrack &) PROHIBITED
 

Private Attributes

friend Effect
 
EffectmpEffect {}
 
LabelTrackmpTrack {}
 

Detailed Description

Definition at line 379 of file Effect.h.

Constructor & Destructor Documentation

◆ AddedAnalysisTrack() [1/4]

Effect::AddedAnalysisTrack::AddedAnalysisTrack ( Effect pEffect,
const wxString &  name 
)
private

Definition at line 2104 of file Effect.cpp.

2105  : mpEffect(pEffect)
2106 {
2107  LabelTrack::Holder pTrack{ std::make_shared<LabelTrack>() };
2108  mpTrack = pTrack.get();
2109  if (!name.empty())
2110  pTrack->SetName(name);
2111  pEffect->mTracks->Add( pTrack );
2112 }

References TrackList::Add(), TranslatableString::empty(), mpTrack, Effect::mTracks, name, and Track::SetName().

Here is the call graph for this function:

◆ AddedAnalysisTrack() [2/4]

Effect::AddedAnalysisTrack::AddedAnalysisTrack ( const AddedAnalysisTrack )
private

◆ AddedAnalysisTrack() [3/4]

Effect::AddedAnalysisTrack::AddedAnalysisTrack ( )
inline

Definition at line 386 of file Effect.h.

386 {}

◆ AddedAnalysisTrack() [4/4]

Effect::AddedAnalysisTrack::AddedAnalysisTrack ( AddedAnalysisTrack &&  that)

Definition at line 2114 of file Effect.cpp.

2115 {
2116  mpEffect = that.mpEffect;
2117  mpTrack = that.mpTrack;
2118  that.Commit();
2119 }

◆ ~AddedAnalysisTrack()

Effect::AddedAnalysisTrack::~AddedAnalysisTrack ( )

Definition at line 2126 of file Effect.cpp.

2127 {
2128  if (mpEffect) {
2129  // not committed -- DELETE the label track
2131  }
2132 }

Member Function Documentation

◆ Commit()

void Effect::AddedAnalysisTrack::Commit ( )

Definition at line 2121 of file Effect.cpp.

2122 {
2123  mpEffect = nullptr;
2124 }

Referenced by EffectFindClipping::Process().

Here is the caller graph for this function:

◆ get()

LabelTrack* Effect::AddedAnalysisTrack::get ( ) const
inline

Definition at line 391 of file Effect.h.

391 { return mpTrack; }

Referenced by EffectFindClipping::Process().

Here is the caller graph for this function:

Member Data Documentation

◆ Effect

friend Effect::AddedAnalysisTrack::Effect
private

Definition at line 380 of file Effect.h.

◆ mpEffect

Effect* Effect::AddedAnalysisTrack::mpEffect {}
private

Definition at line 400 of file Effect.h.

◆ mpTrack

LabelTrack* Effect::AddedAnalysisTrack::mpTrack {}
private

Definition at line 401 of file Effect.h.

Referenced by AddedAnalysisTrack().


The documentation for this class was generated from the following files:
TranslatableString::empty
bool empty() const
Definition: Types.h:329
Effect::AddedAnalysisTrack::mpTrack
LabelTrack * mpTrack
Definition: Effect.h:401
Effect::mTracks
TrackList * mTracks
Definition: Effect.h:506
TrackList::Add
TrackKind * Add(const std::shared_ptr< TrackKind > &t)
Definition: Track.h:1486
name
const TranslatableString name
Definition: Distortion.cpp:98
Track::SetName
void SetName(const wxString &n)
Definition: Track.cpp:83
TrackList::Remove
TrackNodePointer Remove(Track *t)
Remove the Track and return an iterator to what followed it.
Definition: Track.cpp:780
Effect::AddedAnalysisTrack::mpEffect
Effect * mpEffect
Definition: Effect.h:400
LabelTrack::Holder
std::shared_ptr< LabelTrack > Holder
Definition: LabelTrack.h:105