#include <FileReadThread.h>

Inheritance diagram for FileReadThread:
Inheritance graph
Collaboration diagram for FileReadThread:
Collaboration graph

Classes

struct  Request
 

Public Types

enum  Type { RTThread, NonRTThread }
 

Public Slots

void start ()
 

Public Member Functions

 FileReadThread ()
 
void run () override
 
virtual void finish ()
 
virtual int request (const Request &request)
 
virtual void cancel (int token)
 
virtual bool isReady (int token)
 
virtual bool isCancelled (int token)
 
virtual bool haveRequest (int token)
 
virtual bool getRequest (int token, Request &request)
 
virtual void done (int token)
 

Protected Types

typedef std::map< int, RequestRequestQueue
 

Protected Member Functions

void process ()
 
void notifyCancelled ()
 

Protected Attributes

int m_nextToken
 
bool m_exiting
 
RequestQueue m_queue
 
RequestQueue m_cancelledRequests
 
RequestQueue m_readyRequests
 
std::set< int > m_newlyCancelled
 
QMutex m_mutex
 
QWaitCondition m_condition
 

Detailed Description

Definition at line 29 of file FileReadThread.h.

Member Typedef Documentation

typedef std::map<int, Request> FileReadThread::RequestQueue
protected

Definition at line 61 of file FileReadThread.h.

Member Enumeration Documentation

enum Thread::Type
inherited
Enumerator
RTThread 
NonRTThread 

Definition at line 29 of file Thread.h.

Constructor & Destructor Documentation

FileReadThread::FileReadThread ( )

Definition at line 34 of file FileReadThread.cpp.

Member Function Documentation

void FileReadThread::run ( )
overridevirtual

Implements Thread.

Definition at line 41 of file FileReadThread.cpp.

References m_condition, m_exiting, m_mutex, m_queue, notifyCancelled(), process(), and SVDEBUG.

void FileReadThread::finish ( )
virtual
int FileReadThread::request ( const Request request)
virtual

Definition at line 88 of file FileReadThread.cpp.

References m_condition, m_mutex, m_nextToken, and m_queue.

Referenced by process().

void FileReadThread::cancel ( int  token)
virtual
bool FileReadThread::isReady ( int  token)
virtual

Definition at line 130 of file FileReadThread.cpp.

References m_mutex, and m_readyRequests.

bool FileReadThread::isCancelled ( int  token)
virtual

Definition at line 140 of file FileReadThread.cpp.

References m_cancelledRequests, m_mutex, and m_newlyCancelled.

bool FileReadThread::haveRequest ( int  token)
virtual

Definition at line 152 of file FileReadThread.cpp.

References m_cancelledRequests, m_mutex, m_queue, and m_readyRequests.

bool FileReadThread::getRequest ( int  token,
Request request 
)
virtual

Definition at line 170 of file FileReadThread.cpp.

References m_cancelledRequests, m_mutex, m_queue, and m_readyRequests.

void FileReadThread::done ( int  token)
virtual
void FileReadThread::notifyCancelled ( )
protected

Definition at line 313 of file FileReadThread.cpp.

References m_newlyCancelled, and SVDEBUG.

Referenced by run().

Member Data Documentation

int FileReadThread::m_nextToken
protected

Definition at line 58 of file FileReadThread.h.

Referenced by request().

bool FileReadThread::m_exiting
protected

Definition at line 59 of file FileReadThread.h.

Referenced by finish(), process(), and run().

RequestQueue FileReadThread::m_queue
protected

Definition at line 62 of file FileReadThread.h.

Referenced by cancel(), done(), finish(), getRequest(), haveRequest(), process(), request(), and run().

RequestQueue FileReadThread::m_cancelledRequests
protected

Definition at line 63 of file FileReadThread.h.

Referenced by cancel(), done(), finish(), getRequest(), haveRequest(), and isCancelled().

RequestQueue FileReadThread::m_readyRequests
protected

Definition at line 64 of file FileReadThread.h.

Referenced by cancel(), done(), getRequest(), haveRequest(), isReady(), and process().

std::set<int> FileReadThread::m_newlyCancelled
protected

Definition at line 65 of file FileReadThread.h.

Referenced by cancel(), done(), finish(), isCancelled(), and notifyCancelled().

QMutex FileReadThread::m_mutex
protected
QWaitCondition FileReadThread::m_condition
protected

Definition at line 68 of file FileReadThread.h.

Referenced by cancel(), finish(), request(), and run().


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