Jpp
software
JDAQ
JDAQHeader.hh
Go to the documentation of this file.
1
#ifndef __JDAQHEADER__
2
#define __JDAQHEADER__
3
4
#include <ostream>
5
6
#include "
JIO/JSerialisable.hh
"
7
#include "
JDAQ/JDAQRoot.hh
"
8
#include "
JDAQ/JDAQChronometer.hh
"
9
10
11
/**
12
* \author mdejong
13
*/
14
15
namespace
KM3NETDAQ
{
16
17
using
JIO::JReader
;
18
using
JIO::JWriter
;
19
20
21
/**
22
* DAQ header.
23
*/
24
class
JDAQHeader
:
25
public
JDAQChronometer
26
{
27
public
:
28
/**
29
* Default constructor.
30
*/
31
JDAQHeader
() :
32
JDAQChronometer
()
33
{}
34
35
36
/**
37
* Constructor.
38
*
39
* \param chronometer chronometer
40
*/
41
JDAQHeader
(
const
JDAQChronometer
& chronometer) :
42
JDAQChronometer
(chronometer)
43
{}
44
45
46
/**
47
* Get DAQ header.
48
*
49
* \return DAQ header
50
*/
51
const
JDAQHeader
&
getDAQHeader
()
const
52
{
53
return
static_cast<const JDAQHeader&>(*
this
);
54
}
55
56
57
/**
58
* Set DAQ header.
59
*
60
* \param header DAQ header
61
*/
62
void
setDAQHeader
(
const
JDAQHeader
& header)
63
{
64
static_cast<JDAQHeader&>(*
this
) = header;
65
}
66
67
68
/**
69
* Read DAQ header from input.
70
*
71
* \param in JReader
72
* \param header JDAQHeader
73
* \return JReader
74
*/
75
friend
inline
JReader
&
operator>>
(
JReader
& in,
JDAQHeader
& header)
76
{
77
in >> static_cast<JDAQChronometer&>(header);
78
79
return
in;
80
}
81
82
83
/**
84
* Write DAQ header to output.
85
*
86
* \param out JWriter
87
* \param header JDAQHeader
88
* \return JWriter
89
*/
90
friend
inline
JWriter
&
operator<<
(
JWriter
& out,
const
JDAQHeader
& header)
91
{
92
out << static_cast<const JDAQChronometer&>(header);
93
94
return
out;
95
}
96
97
98
/**
99
* Get size of object.
100
*
101
* \return number of bytes
102
*/
103
static
int
sizeOf
()
104
{
105
return
(
JDAQChronometer::sizeOf
());
106
}
107
108
109
ClassDef
(
JDAQHeader
,2);
110
};
111
112
113
/**
114
* Equal operator for DAQ headers.
115
*
116
* \param first header
117
* \param second header
118
* \result true if first header equal to second; else false
119
*/
120
inline
bool
operator==
(
const
JDAQHeader
& first,
121
const
JDAQHeader
& second)
122
{
123
return
(first.
getDAQChronometer
() == second.
getDAQChronometer
());
124
}
125
126
127
/**
128
* Not-equal operator for DAQ headers.
129
*
130
* \param first header
131
* \param second header
132
* \result true if first header not equal to second; else false
133
*/
134
inline
bool
operator!=
(
const
JDAQHeader
& first,
135
const
JDAQHeader
& second)
136
{
137
return
!(first == second);
138
}
139
}
140
141
#endif
KM3NETDAQ::JDAQHeader::getDAQHeader
const JDAQHeader & getDAQHeader() const
Get DAQ header.
Definition:
JDAQHeader.hh:51
JIO::JReader
Interface for binary input.
Definition:
JSerialisable.hh:62
KM3NETDAQ::JDAQHeader::operator<<
friend JWriter & operator<<(JWriter &out, const JDAQHeader &header)
Write DAQ header to output.
Definition:
JDAQHeader.hh:90
KM3NETDAQ::JDAQHeader
DAQ header.
Definition:
JDAQHeader.hh:24
KM3NETDAQ::JDAQHeader::JDAQHeader
JDAQHeader()
Default constructor.
Definition:
JDAQHeader.hh:31
KM3NETDAQ::JDAQHeader::operator>>
friend JReader & operator>>(JReader &in, JDAQHeader &header)
Read DAQ header from input.
Definition:
JDAQHeader.hh:75
KM3NETDAQ::JDAQHeader::setDAQHeader
void setDAQHeader(const JDAQHeader &header)
Set DAQ header.
Definition:
JDAQHeader.hh:62
JDAQChronometer.hh
KM3NETDAQ::JDAQHeader::ClassDef
ClassDef(JDAQHeader, 2)
JSerialisable.hh
KM3NETDAQ::operator!=
bool operator!=(const JDAQChronometer &first, const JDAQChronometer &second)
Not-equal operator for DAQ chronometers.
Definition:
JDAQChronometer.hh:303
JIO::JWriter
Interface for binary output.
Definition:
JSerialisable.hh:130
JDAQRoot.hh
KM3NETDAQ::operator==
bool operator==(const JDAQChronometer &first, const JDAQChronometer &second)
Equal operator for DAQ chronometers.
Definition:
JDAQChronometer.hh:286
KM3NETDAQ::JDAQHeader::sizeOf
static int sizeOf()
Get size of object.
Definition:
JDAQHeader.hh:103
KM3NETDAQ::JDAQChronometer::getDAQChronometer
const JDAQChronometer & getDAQChronometer() const
Get DAQ chronometer.
Definition:
JDAQChronometer.hh:88
KM3NETDAQ
KM3NeT DAQ data structures and auxiliaries.
Definition:
DataQueue.cc:39
KM3NETDAQ::JDAQHeader::JDAQHeader
JDAQHeader(const JDAQChronometer &chronometer)
Constructor.
Definition:
JDAQHeader.hh:41
KM3NETDAQ::JDAQChronometer::sizeOf
static int sizeOf()
Get size of object.
Definition:
JDAQChronometer.hh:224
KM3NETDAQ::JDAQChronometer
DAQ chronometer.
Definition:
JDAQChronometer.hh:26
Generated by
1.8.16