MythTV  master
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread Class Reference
Inheritance diagram for anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread:
[legend]
Collaboration diagram for anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread:
[legend]

Public Member Functions

 VolumeWriteBackThread (const VolumeWriteBackThread &)=delete
 
VolumeWriteBackThreadoperator= (const VolumeWriteBackThread &)=delete
 
void SetVolume (int value)
 
- 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...
 

Static Public Member Functions

static VolumeWriteBackThreadInstance ()
 
- 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

void run (void) override
 Runs the Qt event loop unless we have a QRunnable, in which case we run the runnable run instead. More...
 
- Protected Member Functions inherited from MThread
int exec (void)
 Enters the qt event loop. call exit or quit to exit thread. More...
 

Private Types

enum  : std::uint8_t { kStopped, kRunning, kFinished }
 

Private Member Functions

 VolumeWriteBackThread ()
 

Private Attributes

QMutex m_mutex
 
enum anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread:: { ... }  kStopped
 
int m_volume {-1}
 

Static Private Attributes

static QMutex s_mutex
 

Additional Inherited Members

- 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 17 of file volumebase.cpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum : std::uint8_t
private
Enumerator
kStopped 
kRunning 
kFinished 

Definition at line 91 of file volumebase.cpp.

Constructor & Destructor Documentation

◆ VolumeWriteBackThread() [1/2]

anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::VolumeWriteBackThread ( )
inlineprivate

Definition at line 19 of file volumebase.cpp.

◆ VolumeWriteBackThread() [2/2]

anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::VolumeWriteBackThread ( const VolumeWriteBackThread )
delete

Member Function Documentation

◆ Instance()

static VolumeWriteBackThread* anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::Instance ( )
inlinestatic

Definition at line 23 of file volumebase.cpp.

◆ operator=()

VolumeWriteBackThread& anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::operator= ( const VolumeWriteBackThread )
delete

◆ SetVolume()

void anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::SetVolume ( int  value)
inline

Definition at line 33 of file volumebase.cpp.

◆ run()

void anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::run ( void  )
inlineoverrideprotectedvirtual

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 56 of file volumebase.cpp.

Member Data Documentation

◆ s_mutex

QMutex anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::s_mutex
staticprivate

Definition at line 89 of file volumebase.cpp.

◆ m_mutex

QMutex anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::m_mutex
mutableprivate

Definition at line 90 of file volumebase.cpp.

◆ kStopped

enum { ... } anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::kStopped

◆ m_volume

int anonymous_namespace{volumebase.cpp}::VolumeWriteBackThread::m_volume {-1}
private

Definition at line 92 of file volumebase.cpp.


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