DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
OutputStream.hpp
Go to the documentation of this file.
1/*
2 * OutputStream.h
3 * ers
4 *
5 * Created by Matthias Wiesmann on 02.12.04.
6 * Modified by Serguei Kolos on 02.08.05.
7 * Copyright 2004 CERN. All rights reserved.
8 *
9 */
10
11
12#ifndef ERS_OUTPUT_STREAM_H
13#define ERS_OUTPUT_STREAM_H
14
15#include <string>
16#include <memory>
17#include <ers/Issue.hpp>
18
24namespace ers
25{
26
27 class Issue;
28
39 {
40 friend class StreamManager;
41
42 public:
43 virtual ~OutputStream()
44 { ; }
45
47 virtual void write( const Issue & issue ) = 0;
48
49 protected:
50 OutputStream( );
51
53
54 virtual bool isNull() const;
55
56 private:
57 OutputStream( const OutputStream & other ) = delete;
58 OutputStream & operator=( const OutputStream & ) = delete;
59
60 void chained( OutputStream * stream );
61
62 std::unique_ptr<OutputStream> m_chained;
63 };
64}
65
67
68#endif
69
Base class for any user define issue.
Definition Issue.hpp:69
ERS abstract output stream interface.
virtual ~OutputStream()
Sends the issue into this stream.
virtual bool isNull() const
OutputStream & operator=(const OutputStream &)=delete
virtual void write(const Issue &issue)=0
std::unique_ptr< OutputStream > m_chained
OutputStream & chained()
OutputStream(const OutputStream &other)=delete
This class manages and provides access to ERS streams.
CTB Buffer Issue