LibreOffice Module sc (master)  1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
sc::datastreams::ReaderThread Class Reference
Inheritance diagram for sc::datastreams::ReaderThread:
[legend]
Collaboration diagram for sc::datastreams::ReaderThread:
[legend]

Public Member Functions

 ReaderThread (std::unique_ptr< SvStream > pData, size_t nColCount)
 
bool isTerminateRequested ()
 
void requestTerminate ()
 
void endThread ()
 
void waitForNewLines ()
 
std::unique_ptr< DataStream::LinesTypepopNewLines ()
 
void resumeReadStream ()
 
bool hasNewLines () const
 
void pushUsedLines (std::unique_ptr< DataStream::LinesType > pLines)
 
osl::Mutex & getLinesMutex ()
 
- Public Member Functions inherited from salhelper::Thread
 Thread (char const *name)
 
void launch ()
 
- Public Member Functions inherited from salhelper::SimpleReferenceObject
 SimpleReferenceObject ()
 
void acquire ()
 
void release ()
 

Private Member Functions

virtual void execute () override
 

Private Attributes

std::unique_ptr< SvStreammpStream
 
size_t mnColCount
 
bool mbTerminate
 
osl::Mutex maMtxTerminate
 
std::queue< std::unique_ptr< DataStream::LinesType > > maPendingLines
 
std::queue< std::unique_ptr< DataStream::LinesType > > maUsedLines
 
osl::Mutex maMtxLines
 
osl::Condition maCondReadStream
 
osl::Condition maCondConsume
 
orcus::csv::parser_config maConfig
 

Additional Inherited Members

- Static Public Member Functions inherited from salhelper::Thread
static voidoperator new (std::size_t size)
 
static void operator delete (void *pointer)
 
- Static Public Member Functions inherited from salhelper::SimpleReferenceObject
static voidoperator new (std::size_t nSize)
 
static voidoperator new (std::size_t nSize, std::nothrow_t const &rNothrow)
 
static void operator delete (void *pPtr)
 
static void operator delete (void *pPtr, std::nothrow_t const &rNothrow)
 
- Protected Member Functions inherited from salhelper::Thread
virtual ~Thread () SAL_OVERRIDE
 
- Protected Member Functions inherited from salhelper::SimpleReferenceObject
virtual ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE
 
- Protected Attributes inherited from salhelper::SimpleReferenceObject
oslInterlockedCount m_nCount
 

Detailed Description

Definition at line 95 of file datastream.cxx.

Constructor & Destructor Documentation

sc::datastreams::ReaderThread::ReaderThread ( std::unique_ptr< SvStream pData,
size_t  nColCount 
)
inline

Definition at line 113 of file datastream.cxx.

Member Function Documentation

void sc::datastreams::ReaderThread::endThread ( )
inline

Definition at line 135 of file datastream.cxx.

References requestTerminate().

virtual void sc::datastreams::ReaderThread::execute ( )
inlineoverrideprivatevirtual

Implements salhelper::Thread.

Definition at line 176 of file datastream.cxx.

References isTerminateRequested(), maConfig, parser, and requestTerminate().

osl::Mutex& sc::datastreams::ReaderThread::getLinesMutex ( )
inline

Definition at line 170 of file datastream.cxx.

References maMtxLines.

bool sc::datastreams::ReaderThread::hasNewLines ( ) const
inline

Definition at line 160 of file datastream.cxx.

bool sc::datastreams::ReaderThread::isTerminateRequested ( )
inline

Definition at line 123 of file datastream.cxx.

References mbTerminate.

Referenced by execute().

std::unique_ptr<DataStream::LinesType> sc::datastreams::ReaderThread::popNewLines ( )
inline

Definition at line 147 of file datastream.cxx.

void sc::datastreams::ReaderThread::pushUsedLines ( std::unique_ptr< DataStream::LinesType pLines)
inline

Definition at line 165 of file datastream.cxx.

void sc::datastreams::ReaderThread::requestTerminate ( )
inline

Definition at line 129 of file datastream.cxx.

Referenced by endThread(), and execute().

void sc::datastreams::ReaderThread::resumeReadStream ( )
inline

Definition at line 154 of file datastream.cxx.

void sc::datastreams::ReaderThread::waitForNewLines ( )
inline

Definition at line 141 of file datastream.cxx.

Member Data Documentation

osl::Condition sc::datastreams::ReaderThread::maCondConsume
private

Definition at line 107 of file datastream.cxx.

osl::Condition sc::datastreams::ReaderThread::maCondReadStream
private

Definition at line 106 of file datastream.cxx.

orcus::csv::parser_config sc::datastreams::ReaderThread::maConfig
private

Definition at line 109 of file datastream.cxx.

Referenced by execute().

osl::Mutex sc::datastreams::ReaderThread::maMtxLines
private

Definition at line 104 of file datastream.cxx.

Referenced by getLinesMutex().

osl::Mutex sc::datastreams::ReaderThread::maMtxTerminate
private

Definition at line 100 of file datastream.cxx.

std::queue<std::unique_ptr<DataStream::LinesType> > sc::datastreams::ReaderThread::maPendingLines
private

Definition at line 102 of file datastream.cxx.

std::queue<std::unique_ptr<DataStream::LinesType> > sc::datastreams::ReaderThread::maUsedLines
private

Definition at line 103 of file datastream.cxx.

bool sc::datastreams::ReaderThread::mbTerminate
private

Definition at line 99 of file datastream.cxx.

Referenced by isTerminateRequested().

size_t sc::datastreams::ReaderThread::mnColCount
private

Definition at line 98 of file datastream.cxx.

std::unique_ptr<SvStream> sc::datastreams::ReaderThread::mpStream
private

Definition at line 97 of file datastream.cxx.


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