BOSS 6.6.4.p03
BESIII Offline Software System
Loading...
Searching...
No Matches
FIFOStream.h
Go to the documentation of this file.
1/*
2 * FIFOStream.h
3 * ers
4 *
5 * Created by Matthias Wiesmann on 02.12.04.
6 * Copyright 2004 CERN. All rights reserved.
7 *
8 */
9
10#include <deque>
11#include "ers/Stream.h"
12
13namespace ers {
14
15 /** This streams is used to transmit Issues inside a process.
16 * \author Matthias Wiesmann
17 * \version 1.0
18 * \brief Queue stream
19 * \note This stream is \b not thread safe - it cannot depend on thread library.
20 */
21
22 class FIFOStream : public Stream {
23
24protected:
25 std::deque<Issue*> m_issue_queue ;
26public:
27 static const char* const FIFO_STREAM_KEY ; /**< Key for FIFO stream */
28 FIFOStream();
29 FIFOStream(const FIFOStream &other);
30 ~FIFOStream() ;
31 virtual void send(const Issue *i) ;
32 virtual Issue *receive() ;
33 virtual void print_to(std::ostream& stream) const ;
34 } ; // FIFOStream
35} // ers
36
37
Queue stream.
Definition: FIFOStream.h:22
std::deque< Issue * > m_issue_queue
Definition: FIFOStream.h:25
virtual void send(const Issue *i)
Definition: FIFOStream.cxx:45
virtual void print_to(std::ostream &stream) const
Definition: FIFOStream.cxx:63
static const char *const FIFO_STREAM_KEY
Definition: FIFOStream.h:27
virtual Issue * receive()
Definition: FIFOStream.cxx:56
Root Issue class.
Root/Null issue stream.
Definition: Stream.h:35