MythTV  master
Public Member Functions | Private Member Functions | Private Attributes | List of all members
CDRipperThread Class Reference

#include <cdrip.h>

Inheritance diagram for CDRipperThread:
Inheritance graph
[legend]
Collaboration diagram for CDRipperThread:
Collaboration graph
[legend]

Public Member Functions

 CDRipperThread (RipStatus *parent, QString device, QVector< RipTrack * > *tracks, int quality)
 
 ~CDRipperThread () override
 
void cancel (void)
 
- Public Member Functions inherited from MThread
 MThread (const QString &objectName)
 Standard constructor. More...
 
 MThread (const QString &objectName, QRunnable *runnable)
 Use this constructor if you want the default run() method to run the QRunnable's run() method instead of entering the Qt event loop. More...
 
virtual ~MThread ()
 
 MThread (const MThread &)=delete
 
MThreadoperator= (const MThread &)=delete
 
void RunProlog (void)
 Sets up a thread, call this if you reimplement run(). More...
 
void RunEpilog (void)
 Cleans up a thread's resources, call this if you reimplement run(). More...
 
QThread * qthread (void)
 Returns the thread, this will always return the same pointer no matter how often you restart the thread. More...
 
void setObjectName (const QString &name)
 
QString objectName (void) const
 
void setPriority (QThread::Priority priority)
 
QThread::Priority priority (void) const
 
bool isFinished (void) const
 
bool isRunning (void) const
 
void setStackSize (uint stackSize)
 
uint stackSize (void) const
 
void exit (int retcode=0)
 Use this to exit from the thread if you are using a Qt event loop. More...
 
void start (QThread::Priority p=QThread::InheritPriority)
 Tell MThread to start running the thread in the near future. More...
 
void terminate (void)
 Kill a thread unsafely. More...
 
void quit (void)
 calls exit(0) More...
 
bool wait (std::chrono::milliseconds time=std::chrono::milliseconds::max())
 Wait for the MThread to exit, with a maximum timeout. More...
 

Private Member Functions

 Q_DECLARE_TR_FUNCTIONS (CDRipperThread)
 
void run (void) override
 Runs the Qt event loop unless we have a QRunnable, in which case we run the runnable run instead. More...
 
int ripTrack (QString &cddevice, Encoder *encoder, int tracknum)
 
bool isCancelled (void) const
 

Private Attributes

RipStatusm_parent {nullptr}
 
bool m_quit {false}
 
QString m_cdDevice
 
int m_quality
 
QVector< RipTrack * > * m_tracks {nullptr}
 
long int m_totalSectors {0}
 
long int m_totalSectorsDone {0}
 
int m_lastTrackPct {0}
 
int m_lastOverallPct {0}
 
QString m_musicStorageDir
 

Additional Inherited Members

- Static Public Member Functions inherited from MThread
static void ThreadSetup (const QString &name)
 This is to be called on startup in those few threads that haven't been ported to MThread. More...
 
static void ThreadCleanup (void)
 This is to be called on exit in those few threads that haven't been ported to MThread. More...
 
static void Cleanup (void)
 This will print out all the running threads, call exit(1) on each and then wait up to 5 seconds total for all the threads to exit. More...
 
static void GetAllThreadNames (QStringList &list)
 
static void GetAllRunningThreadNames (QStringList &list)
 
- Protected Member Functions inherited from MThread
int exec (void)
 Enters the qt event loop. call exit or quit to exit thread. More...
 
- Static Protected Member Functions inherited from MThread
static void setTerminationEnabled (bool enabled=true)
 
static void usleep (std::chrono::microseconds time)
 
template<typename R , typename P >
static std::enable_if_t< std::chrono::treat_as_floating_point< R >::value, void > usleep (std::chrono::duration< R, P > time)
 
- Protected Attributes inherited from MThread
MThreadInternalm_thread {nullptr}
 
QRunnable * m_runnable {nullptr}
 
bool m_prologExecuted {true}
 
bool m_epilogExecuted {true}
 

Detailed Description

Definition at line 62 of file cdrip.h.

Constructor & Destructor Documentation

◆ CDRipperThread()

CDRipperThread::CDRipperThread ( RipStatus parent,
QString  device,
QVector< RipTrack * > *  tracks,
int  quality 
)

Definition at line 162 of file cdrip.cpp.

◆ ~CDRipperThread()

CDRipperThread::~CDRipperThread ( )
override

Definition at line 180 of file cdrip.cpp.

Member Function Documentation

◆ Q_DECLARE_TR_FUNCTIONS()

CDRipperThread::Q_DECLARE_TR_FUNCTIONS ( CDRipperThread  )
private

◆ cancel()

void CDRipperThread::cancel ( void  )

Definition at line 186 of file cdrip.cpp.

Referenced by RipStatus::customEvent(), and ~CDRipperThread().

◆ run()

void CDRipperThread::run ( void  )
overrideprivatevirtual

Runs the Qt event loop unless we have a QRunnable, in which case we run the runnable run instead.

Note
If you override this method you must call RunProlog before you do any work and RunEpilog before you exit the run method.

Reimplemented from MThread.

Definition at line 196 of file cdrip.cpp.

◆ ripTrack()

int CDRipperThread::ripTrack ( QString &  cddevice,
Encoder encoder,
int  tracknum 
)
private

Definition at line 392 of file cdrip.cpp.

Referenced by run().

◆ isCancelled()

bool CDRipperThread::isCancelled ( void  ) const
private

Definition at line 191 of file cdrip.cpp.

Referenced by ripTrack(), and run().

Member Data Documentation

◆ m_parent

RipStatus* CDRipperThread::m_parent {nullptr}
private

Definition at line 79 of file cdrip.h.

Referenced by ripTrack(), and run().

◆ m_quit

bool CDRipperThread::m_quit {false}
private

Definition at line 80 of file cdrip.h.

Referenced by cancel(), and isCancelled().

◆ m_cdDevice

QString CDRipperThread::m_cdDevice
private

Definition at line 81 of file cdrip.h.

Referenced by CDRipperThread(), and run().

◆ m_quality

int CDRipperThread::m_quality
private

Definition at line 82 of file cdrip.h.

Referenced by run().

◆ m_tracks

QVector<RipTrack*>* CDRipperThread::m_tracks {nullptr}
private

Definition at line 83 of file cdrip.h.

Referenced by run().

◆ m_totalSectors

long int CDRipperThread::m_totalSectors {0}
private

Definition at line 85 of file cdrip.h.

Referenced by ripTrack(), and run().

◆ m_totalSectorsDone

long int CDRipperThread::m_totalSectorsDone {0}
private

Definition at line 86 of file cdrip.h.

Referenced by ripTrack(), and run().

◆ m_lastTrackPct

int CDRipperThread::m_lastTrackPct {0}
private

Definition at line 88 of file cdrip.h.

Referenced by ripTrack().

◆ m_lastOverallPct

int CDRipperThread::m_lastOverallPct {0}
private

Definition at line 89 of file cdrip.h.

Referenced by ripTrack().

◆ m_musicStorageDir

QString CDRipperThread::m_musicStorageDir
private

Definition at line 91 of file cdrip.h.

Referenced by CDRipperThread(), and run().


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