Scroom  0.14
Scroom::Detail::ThreadPool::QueueLock Class Reference

#include <queue.hh>

Collaboration diagram for Scroom::Detail::ThreadPool::QueueLock:
Collaboration graph

Public Member Functions

 QueueLock (QueueImpl::Ptr queue)
 QueueLock. More...
 
 QueueLock (const QueueLock &)=delete
 
 QueueLock (QueueLock &&)=delete
 
QueueLockoperator= (const QueueLock &)=delete
 
QueueLockoperator= (QueueLock &&)=delete
 
 ~QueueLock ()
 
bool queueExists () const
 

Private Attributes

QueueImpl::Ptr q
 
bool isValid
 

Detailed Description

Call Queue::jobStarted() and Queue::jobFinished().

Constructor & Destructor Documentation

◆ QueueLock() [1/3]

QueueLock::QueueLock ( QueueImpl::Ptr  queue)
explicit

QueueLock.

56  : q(std::move(queue))
57  , isValid(q->jobStarted())
58 {
59 }

◆ QueueLock() [2/3]

Scroom::Detail::ThreadPool::QueueLock::QueueLock ( const QueueLock )
delete

◆ QueueLock() [3/3]

Scroom::Detail::ThreadPool::QueueLock::QueueLock ( QueueLock &&  )
delete

◆ ~QueueLock()

QueueLock::~QueueLock ( )
63 { q->jobFinished(); }

Member Function Documentation

◆ operator=() [1/2]

QueueLock& Scroom::Detail::ThreadPool::QueueLock::operator= ( const QueueLock )
delete

◆ operator=() [2/2]

QueueLock& Scroom::Detail::ThreadPool::QueueLock::operator= ( QueueLock &&  )
delete

◆ queueExists()

bool QueueLock::queueExists ( ) const

Return true if there are still references to the ThreadPool::Queue associated with q

61 { return isValid; }

Referenced by ThreadPool::do_one().

Here is the caller graph for this function:

Member Data Documentation

◆ isValid

bool Scroom::Detail::ThreadPool::QueueLock::isValid
private

true if there are still references to the ThreadPool::Queue associated with q

Referenced by queueExists().

◆ q

QueueImpl::Ptr Scroom::Detail::ThreadPool::QueueLock::q
private

Reference to our QueueImpl

Referenced by ~QueueLock().


The documentation for this class was generated from the following files:
Scroom::Detail::ThreadPool::QueueLock::q
QueueImpl::Ptr q
Definition: queue.hh:65
Scroom::Detail::ThreadPool::QueueLock::isValid
bool isValid
Definition: queue.hh:66