Audacity 3.2.0
Public Member Functions | Private Attributes | List of all members
cloud::audiocom::ShareAudioDialog::ExportProgressUpdater Class Referencefinal
Inheritance diagram for cloud::audiocom::ShareAudioDialog::ExportProgressUpdater:
[legend]
Collaboration diagram for 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 109 of file ShareAudioDialog.cpp.

Constructor & Destructor Documentation

◆ ExportProgressUpdater()

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

Definition at line 112 of file ShareAudioDialog.cpp.

113 : mParent(parent)
114 {
115
116 }

◆ ~ExportProgressUpdater()

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

Definition at line 118 of file ShareAudioDialog.cpp.

118{ }

Member Function Documentation

◆ Cancel()

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

Definition at line 120 of file ShareAudioDialog.cpp.

121 {
122 mCancelled.store(true, std::memory_order_release);
123 }

References mCancelled.

◆ GetResult()

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

Definition at line 125 of file ShareAudioDialog.cpp.

References mResult.

◆ IsCancelled()

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

Implements ExportProcessorDelegate.

Definition at line 139 of file ShareAudioDialog.cpp.

140 {
141 return mCancelled.load(std::memory_order_acquire);
142 }

References mCancelled.

◆ IsStopped()

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

Implements ExportProcessorDelegate.

Definition at line 144 of file ShareAudioDialog.cpp.

145 {
146 return false;
147 }

◆ OnProgress()

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

Implements ExportProcessorDelegate.

Definition at line 149 of file ShareAudioDialog.cpp.

150 {
151 mProgress.store(value, std::memory_order_release);
152 }

References mProgress.

◆ SetResult()

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

Definition at line 130 of file ShareAudioDialog.cpp.

131 {
132 mResult = result;
133 }

References mResult.

◆ SetStatusString()

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

Implements ExportProcessorDelegate.

Definition at line 135 of file ShareAudioDialog.cpp.

136 {
137 }

◆ UpdateUI()

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

Definition at line 154 of file ShareAudioDialog.cpp.

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

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

Here is the call graph for this function:

Member Data Documentation

◆ mCancelled

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

Definition at line 165 of file ShareAudioDialog.cpp.

Referenced by Cancel(), and IsCancelled().

◆ mParent

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

Definition at line 163 of file ShareAudioDialog.cpp.

Referenced by UpdateUI().

◆ mProgress

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

Definition at line 166 of file ShareAudioDialog.cpp.

Referenced by OnProgress(), and UpdateUI().

◆ mResult

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

Definition at line 167 of file ShareAudioDialog.cpp.

Referenced by GetResult(), and SetResult().


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