1
/* This file is part of MAUS: http://micewww.pp.rl.ac.uk/projects/maus
3
* MAUS is free software: you can redistribute it and/or modify
4
* it under the terms of the GNU General Public License as published by
5
* the Free Software Foundation, either version 3 of the License, or
6
* (at your option) any later version.
8
* MAUS is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
13
* You should have received a copy of the GNU General Public License
14
* along with MAUS. If not, see <http://www.gnu.org/licenses/>.
18
#ifndef _SRC_COMMON_CPP_DATASTRUCTURE_EMRDAQ_
19
#define _SRC_COMMON_CPP_DATASTRUCTURE_EMRDAQ_
23
#include "Utils/VersionNumber.hh"
24
#include "DataStructure/V1731.hh"
25
#include "DataStructure/DBBSpillData.hh"
29
typedef std::vector<V1731> V1731HitArray;
30
typedef std::vector<V1731HitArray> V1731PartEventArray;
31
typedef std::vector<DBBSpillData> DBBArray;
35
/** Default constructor - initialises to 0/NULL */
38
/** Copy constructor - any pointers are deep copied */
39
EMRDaq(const EMRDaq& _emrdaq);
41
/** Equality operator - any pointers are deep copied */
42
EMRDaq& operator=(const EMRDaq& _emrdaq);
44
/** Destructor - any member pointers are deleted */
47
/** Returns V1731PartEventArray */
48
V1731PartEventArray GetV1731PartEventArray() const;
50
/** Returns V1731PartEventArray size */
51
size_t GetV1731NumPartEvents() const;
53
/** Get an element from V1731Array (needed for PyROOT) */
54
V1731HitArray GetV1731PartEvent(size_t index) const;
56
/** Get size of V1731Array (needed for PyROOT) */
57
size_t GetV1731PartEventArraySize(size_t index) const;
59
/** Sets V1731Array */
60
void SetV1731PartEventArray(V1731PartEventArray V1731);
62
/** Returns DBB Spill */
63
DBBArray GetDBBArray() const;
65
/** Get an element from V1731Array (needed for PyROOT) */
66
DBBSpillData GetDBBArrayElement(size_t index) const;
68
/** Get size of V1731Array (needed for PyROOT) */
69
size_t GetDBBArraySize() const;
72
void SetDBBArray(DBBArray s);
75
V1731PartEventArray _V1731;
78
MAUS_VERSIONED_CLASS_DEF(EMRDaq)