14
14
* along with MAUS. If not, see <http://www.gnu.org/licenses/>.
17
#ifndef _SRC_COMMON_CPP_DATASTRUCTURE_DAQDATA_HH_
18
#define _SRC_COMMON_CPP_DATASTRUCTURE_DAQDATA_HH_
17
#ifndef _SRC_COMMON_CPP_DATASTRUCTURE_DAQDATA_
18
#define _SRC_COMMON_CPP_DATASTRUCTURE_DAQDATA_
22
#include "Rtypes.h" // ROOT
24
#include "src/common_cpp/DataStructure/KLDaq.hh"
25
#include "src/common_cpp/DataStructure/Trigger.hh"
26
#include "src/common_cpp/DataStructure/TOFDaq.hh"
27
#include "src/common_cpp/DataStructure/V830.hh"
28
#include "src/common_cpp/DataStructure/CkovDaq.hh"
29
#include "src/common_cpp/DataStructure/Unknown.hh"
30
#include "src/common_cpp/DataStructure/TriggerRequest.hh"
31
#include "src/common_cpp/DataStructure/Tag.hh"
35
typedef std::vector<KLDaq*> KLArray;
36
typedef std::vector<CkovDaq*> CkovArray;
37
typedef std::vector<TOFDaq*> TOF0DaqArray;
38
typedef std::vector<Trigger*> TriggerArray;
39
typedef std::vector<TOFDaq*> TOF1DaqArray;
40
typedef std::vector<TOFDaq*> TOF2DaqArray;
41
typedef std::vector<TriggerRequest*> TriggerRequestArray;
42
typedef std::vector<Unknown*> UnknownArray;
43
typedef std::vector<Tag*> TagArray;
24
/** Stub class for DAQ data (output of DAQ parsed into MAUS)
45
/** @class DAQData comment
47
* @var V830 <--description-->
48
* @var trigger_request <--description-->
49
* @var tof1 <--description-->
50
* @var ckov <--description-->
51
* @var tof2 <--description-->
52
* @var unknown <--description-->
53
* @var kl <--description-->
54
* @var tag <--description-->
55
* @var tof0 <--description-->
56
* @var trigger <--description-->
31
DAQData(const DAQData& daq);
33
DAQData& operator=(const DAQData& daq);
61
/** Default constructor - initialises to 0/NULL */
64
/** Copy constructor - any pointers are deep copied */
65
DAQData(const DAQData& _daqdata);
67
/** Equality operator - any pointers are deep copied */
68
DAQData& operator=(const DAQData& _daqdata);
70
/** Destructor - any member pointers are deleted */
78
void SetV830(V830 V830);
80
/** Returns TriggerRequestArray */
81
TriggerRequestArray GetTriggerRequestArray() const;
83
/** Get an element from TriggerRequestArray (needed for PyROOT) */
84
TriggerRequest* GetTriggerRequestArrayElement(size_t index) const;
86
/** Get size of TriggerRequestArray (needed for PyROOT) */
87
size_t GetTriggerRequestArraySize() const;
89
/** Sets TriggerRequestArray */
90
void SetTriggerRequestArray(TriggerRequestArray trigger_request);
92
/** Returns TOF1DaqArray */
93
TOF1DaqArray GetTOF1DaqArray() const;
95
/** Get an element from TOF1DaqArray (needed for PyROOT) */
96
TOFDaq* GetTOF1DaqArrayElement(size_t index) const;
98
/** Get size of TOF1DaqArray (needed for PyROOT) */
99
size_t GetTOF1DaqArraySize() const;
101
/** Sets TOF1DaqArray */
102
void SetTOF1DaqArray(TOF1DaqArray tof1);
104
/** Returns CkovArray */
105
CkovArray GetCkovArray() const;
107
/** Get an element from CkovArray (needed for PyROOT) */
108
CkovDaq* GetCkovArrayElement(size_t index) const;
110
/** Get size of CkovArray (needed for PyROOT) */
111
size_t GetCkovArraySize() const;
113
/** Sets CkovArray */
114
void SetCkovArray(CkovArray ckov);
116
/** Returns TOF2DaqArray */
117
TOF2DaqArray GetTOF2DaqArray() const;
119
/** Get an element from TOF2DaqArray (needed for PyROOT) */
120
TOFDaq* GetTOF2DaqArrayElement(size_t index) const;
122
/** Get size of TOF2DaqArray (needed for PyROOT) */
123
size_t GetTOF2DaqArraySize() const;
125
/** Sets TOF2DaqArray */
126
void SetTOF2DaqArray(TOF2DaqArray tof2);
128
/** Returns UnknownArray */
129
UnknownArray GetUnknownArray() const;
131
/** Get an element from UnknownArray (needed for PyROOT) */
132
Unknown* GetUnknownArrayElement(size_t index) const;
134
/** Get size of UnknownArray (needed for PyROOT) */
135
size_t GetUnknownArraySize() const;
137
/** Sets UnknownArray */
138
void SetUnknownArray(UnknownArray unknown);
140
/** Returns KLArray */
141
KLArray GetKLArray() const;
143
/** Get an element from KLArray (needed for PyROOT) */
144
KLDaq* GetKLArrayElement(size_t index) const;
146
/** Get size of KLArray (needed for PyROOT) */
147
size_t GetKLArraySize() const;
150
void SetKLArray(KLArray kl);
152
/** Returns TagArray */
153
TagArray GetTagArray() const;
155
/** Get an element from TagArray (needed for PyROOT) */
156
Tag* GetTagArrayElement(size_t index) const;
158
/** Get size of TagArray (needed for PyROOT) */
159
size_t GetTagArraySize() const;
162
void SetTagArray(TagArray tag);
164
/** Returns TOF0DaqArray */
165
TOF0DaqArray GetTOF0DaqArray() const;
167
/** Get an element from TOF0DaqArray (needed for PyROOT) */
168
TOFDaq* GetTOF0DaqArrayElement(size_t index) const;
170
/** Get size of TOF0DaqArray (needed for PyROOT) */
171
size_t GetTOF0DaqArraySize() const;
173
/** Sets TOF0DaqArray */
174
void SetTOF0DaqArray(TOF0DaqArray tof0);
176
/** Returns TriggerArray */
177
TriggerArray GetTriggerArray() const;
179
/** Get an element from TriggerArray (needed for PyROOT) */
180
Trigger* GetTriggerArrayElement(size_t index) const;
182
/** Get size of TriggerArray (needed for PyROOT) */
183
size_t GetTriggerArraySize() const;
185
/** Sets TriggerArray */
186
void SetTriggerArray(TriggerArray trigger);
190
TriggerRequestArray _trigger_request;
194
UnknownArray _unknown;
198
TriggerArray _trigger;
204
#endif // _SRC_COMMON_CPP_DATASTRUCTURE_DAQDATA_