Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
/*****************************************************************************
* Copyright (C) 2009-2010 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: N. de Sereville contact address: deserevi@ipno.in2p3.fr *
* *
* Creation Date : march 2009 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold Exogam Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#ifndef __EXOGAMDATA__
#define __EXOGAMDATA__
// STL
#include <vector>
#include "TObject.h"
class TExogamData : public TObject {
private:
// ECC / Energy
vector<UShort_t> fEXO_ECC_E_Clover;
vector<UShort_t> fEXO_ECC_E_Cristal;
vector<UShort_t> fEXO_ECC_E_Energy;
// ECC / Time
vector<UShort_t> fEXO_ECC_T_Clover;
vector<UShort_t> fEXO_ECC_T_Cristal;
vector<UShort_t> fEXO_ECC_T_Time;
// GOCCE / Energy
vector<UShort_t> fEXO_GOCCE_E_Clover;
vector<UShort_t> fEXO_GOCCE_E_Cristal;
vector<UShort_t> fEXO_GOCCE_E_Segment;
vector<UShort_t> fEXO_GOCCE_E_Energy;
// GOCCE / Time
vector<UShort_t> fEXO_GOCCE_T_Clover;
vector<UShort_t> fEXO_GOCCE_T_Cristal;
vector<UShort_t> fEXO_GOCCE_T_Segment;
vector<UShort_t> fEXO_GOCCE_T_Time;
// GeFill
UShort_t fEXO_Fill;
public:
TExogamData();
virtual ~TExogamData();
void Clear();
void Clear(const Option_t*) {};
void Dump() const;
///////////////////// SETTERS ////////////////////////
// ECC / Energy
void SetECCEClover(UShort_t clov) { fEXO_ECC_E_Clover.push_back(clov);}
void SetECCECristal(UShort_t cris) { fEXO_ECC_E_Cristal.push_back(cris);}
void SetECCEEnergy(UShort_t ener) { fEXO_ECC_E_Energy.push_back(ener);}
// ECC / Time
void SetECCTClover(UShort_t clov) { fEXO_ECC_T_Clover.push_back(clov);}
void SetECCTCristal(UShort_t cris) { fEXO_ECC_T_Cristal.push_back(cris);}
void SetECCTTime(UShort_t time) { fEXO_ECC_T_Time.push_back(time);}
// GOCCE / Energy
void SetGOCCEEClover(UShort_t clov) { fEXO_GOCCE_E_Clover.push_back(clov);}
void SetGOCCEECristal(UShort_t cris) { fEXO_GOCCE_E_Cristal.push_back(cris);}
void SetGOCCEESegment(UShort_t seg) { fEXO_GOCCE_E_Segment.push_back(seg);}
void SetGOCCEEEnergy(UShort_t ener) { fEXO_GOCCE_E_Energy.push_back(ener);}
// GOCCE / Time
void SetGOCCETClover(UShort_t clov) { fEXO_GOCCE_T_Clover.push_back(clov);}
void SetGOCCETCristal(UShort_t cris) { fEXO_GOCCE_T_Cristal.push_back(cris);}
void SetGOCCETSegment(UShort_t seg) { fEXO_GOCCE_T_Segment.push_back(seg);}
void SetGOCCETTime(UShort_t time) { fEXO_GOCCE_T_Time.push_back(time);}
//GeFill
void SetGeFill(UShort_t Fill) {fEXO_Fill = Fill;}
///////////////////// GETTERS ////////////////////////
// ECC / Energy
// UShort_t GetCloverMult() {return fEXO_ECC_E_Clover.size();}
UShort_t GetECCEMult() {return fEXO_ECC_E_Clover.size();}
UShort_t GetECCEClover(Int_t i) {return fEXO_ECC_E_Clover.at(i);}
UShort_t GetECCECristal(Int_t i) {return fEXO_ECC_E_Cristal.at(i);}
UShort_t GetECCEEnergy(Int_t i) {return fEXO_ECC_E_Energy.at(i);}
// ECC / Time
UShort_t GetECCTMult() {return fEXO_ECC_T_Clover.size();}
UShort_t GetECCTClover(Int_t i) {return fEXO_ECC_T_Clover.at(i);}
UShort_t GetECCTCristal(Int_t i) {return fEXO_ECC_T_Cristal.at(i);}
UShort_t GetECCTTime(Int_t i) {return fEXO_ECC_T_Time.at(i);}
// GOCCE / Energy
UShort_t GetGOCCEEMult() {return fEXO_GOCCE_E_Clover.size();} // multiplicity of segments hit in one clover
UShort_t GetGOCCEEClover(Int_t i) {return fEXO_GOCCE_E_Clover.at(i);}
UShort_t GetGOCCEECristal(Int_t i) {return fEXO_GOCCE_E_Cristal.at(i);}
UShort_t GetGOCCEESegment(Int_t i) {return fEXO_GOCCE_E_Segment.at(i);}
UShort_t GetGOCCEEEnergy(Int_t i) {return fEXO_GOCCE_E_Energy.at(i);}
// GOCCE / Time
UShort_t GetGOCCETMult() {return fEXO_GOCCE_T_Clover.size();}
UShort_t GetGOCCETClover(Int_t i) {return fEXO_GOCCE_T_Clover.at(i);}
UShort_t GetGOCCETCristal(Int_t i) {return fEXO_GOCCE_T_Cristal.at(i);}
UShort_t GetGOCCETSegment(Int_t i) {return fEXO_GOCCE_T_Segment.at(i);}
UShort_t GetGOCCETTime(Int_t i) {return fEXO_GOCCE_T_Time.at(i);}
//GeFill
UShort_t GetGeFill() {return fEXO_Fill;}
ClassDef(TExogamData,1) // ExogamData structure
};
#endif