10 #include "../../../concurrency/include/joda/concurrency/IThreadUser.h"
19 template <ReaderFlag R_FLAGS, ParserFlag P_FLAGS>
65 virtual void read(
double sample) = 0;
80 template <ReaderFlag R_FLAGS, ParserFlag P_FLAGS>
82 std::unique_ptr<IReader::PQueue>& pqueue)
85 template <ReaderFlag R_FLAGS, ParserFlag P_FLAGS>
87 std::unique_ptr<IReader::PQueue>& pqueue,
88 unsigned int maxThreads)
89 :
IThreadUser(maxThreads), rqueue(rqueue), pqueue(pqueue) {
90 DLOG(INFO) <<
"Started IReader<" <<
JODA_FLAG_T(R_FLAGS) <<
","
#define JODA_FLAG_T
Definition: Queue.h:11
JODA_PARSER_QUEUE< P_FLAGS > PQueueFactory
Definition: IReader.h:30
JODA_PARSER_QUEUE< P_FLAGS >::queue_t PQueue
Definition: IReader.h:26
virtual void read(double sample)=0
virtual bool finishedReading() const =0
virtual void read()
Definition: IReader.h:58
std::unique_ptr< RQueue > & rqueue
Definition: IReader.h:74
JODA_PARSER_QUEUE< P_FLAGS >::payload_t PPayload
Definition: IReader.h:28
JODA_READER_QUEUE< R_FLAGS >::queue_t RQueue
Definition: IReader.h:25
JODA_READER_QUEUE< R_FLAGS >::payload_t RPayload
Definition: IReader.h:27
JODA_READER_QUEUE< R_FLAGS > RQueueFactory
Definition: IReader.h:29
std::unique_ptr< PQueue > & pqueue
Definition: IReader.h:75
IReader(std::unique_ptr< RQueue > &rqueue, std::unique_ptr< PQueue > &pqueue)
Definition: IReader.h:81
virtual ~IReader()=default
Definition: IThreadUser.h:13
size_t maxThreads
Definition: IThreadUser.h:30
Definition: ParserFlags.h:91
Definition: ReaderFlags.h:88