Audacity 3.2.0
Public Member Functions | Private Attributes | List of all members
audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater Class Referencefinal
Inheritance diagram for audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater:
[legend]
Collaboration diagram for audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater:
[legend]

Public Member Functions

 ExportProgressUpdater (ShareAudioDialog &parent)
 
 ~ExportProgressUpdater () override
 
void Cancel ()
 
ExportResult GetResult () const
 
void SetResult (ExportResult result)
 
void SetStatusString (const TranslatableString &str) override
 
bool IsCancelled () const override
 
bool IsStopped () const override
 
void OnProgress (double value) override
 
void UpdateUI ()
 
- Public Member Functions inherited from ExportProcessorDelegate
virtual ~ExportProcessorDelegate ()
 
virtual bool IsCancelled () const =0
 
virtual bool IsStopped () const =0
 
virtual void SetStatusString (const TranslatableString &str)=0
 
virtual void OnProgress (double progress)=0
 

Private Attributes

ShareAudioDialogmParent
 
std::atomic< bool > mCancelled {false}
 
std::atomic< double > mProgress
 
ExportResult mResult
 

Detailed Description

Definition at line 106 of file ShareAudioDialog.cpp.

Constructor & Destructor Documentation

◆ ExportProgressUpdater()

audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::ExportProgressUpdater ( ShareAudioDialog parent)
inline

Definition at line 109 of file ShareAudioDialog.cpp.

110 : mParent(parent)
111 {
112
113 }

◆ ~ExportProgressUpdater()

audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::~ExportProgressUpdater ( )
inlineoverride

Definition at line 115 of file ShareAudioDialog.cpp.

115{ }

Member Function Documentation

◆ Cancel()

void audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::Cancel ( )
inline

Definition at line 117 of file ShareAudioDialog.cpp.

118 {
119 mCancelled.store(true, std::memory_order_release);
120 }

References mCancelled.

◆ GetResult()

ExportResult audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::GetResult ( ) const
inline

Definition at line 122 of file ShareAudioDialog.cpp.

References mResult.

◆ IsCancelled()

bool audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::IsCancelled ( ) const
inlineoverridevirtual

Implements ExportProcessorDelegate.

Definition at line 136 of file ShareAudioDialog.cpp.

137 {
138 return mCancelled.load(std::memory_order_acquire);
139 }

References mCancelled.

◆ IsStopped()

bool audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::IsStopped ( ) const
inlineoverridevirtual

Implements ExportProcessorDelegate.

Definition at line 141 of file ShareAudioDialog.cpp.

142 {
143 return false;
144 }

◆ OnProgress()

void audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::OnProgress ( double  value)
inlineoverridevirtual

Implements ExportProcessorDelegate.

Definition at line 146 of file ShareAudioDialog.cpp.

147 {
148 mProgress.store(value, std::memory_order_release);
149 }

References mProgress.

◆ SetResult()

void audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::SetResult ( ExportResult  result)
inline

Definition at line 127 of file ShareAudioDialog.cpp.

128 {
129 mResult = result;
130 }

References mResult.

◆ SetStatusString()

void audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::SetStatusString ( const TranslatableString str)
inlineoverridevirtual

Implements ExportProcessorDelegate.

Definition at line 132 of file ShareAudioDialog.cpp.

133 {
134 }

◆ UpdateUI()

void audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::UpdateUI ( )
inline

Definition at line 151 of file ShareAudioDialog.cpp.

152 {
153 constexpr auto ProgressSteps = 1000ull;
154
155 mParent.UpdateProgress(mProgress.load(std::memory_order_acquire) * ProgressSteps, ProgressSteps);
156 }
void UpdateProgress(uint64_t current, uint64_t total)

References mParent, mProgress, and audacity::cloud::audiocom::ShareAudioDialog::UpdateProgress().

Here is the call graph for this function:

Member Data Documentation

◆ mCancelled

std::atomic<bool> audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::mCancelled {false}
private

Definition at line 162 of file ShareAudioDialog.cpp.

Referenced by Cancel(), and IsCancelled().

◆ mParent

ShareAudioDialog& audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::mParent
private

Definition at line 160 of file ShareAudioDialog.cpp.

Referenced by UpdateUI().

◆ mProgress

std::atomic<double> audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::mProgress
private

Definition at line 163 of file ShareAudioDialog.cpp.

Referenced by OnProgress(), and UpdateUI().

◆ mResult

ExportResult audacity::cloud::audiocom::ShareAudioDialog::ExportProgressUpdater::mResult
private

Definition at line 164 of file ShareAudioDialog.cpp.

Referenced by GetResult(), and SetResult().


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