Corrected protection.
[u/mrichter/AliRoot.git] / STEER / AliESDVZEROfriend.cxx
CommitLineData
b090e6a3 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16///////////////////////////////////////////////////////////////////////////////
17///
18/// This is a class for containing all the VZERO DDL raw data
19/// It is written to the ESD-friend file
20///
21///////////////////////////////////////////////////////////////////////////////
22
23#include "AliESDVZEROfriend.h"
24
25ClassImp(AliESDVZEROfriend)
26
27//_____________________________________________________________________________
28AliESDVZEROfriend::AliESDVZEROfriend():
29 TObject(),
30 fTrigger(0),
31 fTriggerMask(0)
32{
33 // default constructor
34 for (Int_t iScaler = 0; iScaler < kNScalers; iScaler++)
35 fScalers[iScaler] = 0;
36
37 for (Int_t iBunch = 0; iBunch < kNBunches; iBunch++)
38 fBunchNumbers[iBunch] = 0;
39
40 for (Int_t iChannel = 0; iChannel < kNChannels; iChannel++) {
41 fBBScalers[iChannel] = 0;
42 fBGScalers[iChannel] = 0;
43 for (Int_t iBunch = 0; iBunch < kNBunches; iBunch++) {
44 fChargeMB[iChannel][iBunch] = 0;
db0db003 45 fIsIntMB[iChannel][iBunch] = kFALSE;
46 fIsBBMB[iChannel][iBunch] = kFALSE;
47 fIsBGMB[iChannel][iBunch] = kFALSE;
b090e6a3 48 }
49 for (Int_t iEv = 0; iEv < kNEvOfInt; iEv++) {
db0db003 50 fADC[iChannel][iEv] = 0.0;
b090e6a3 51 fIsInt[iChannel][iEv] = kFALSE;
db0db003 52 fIsBB[iChannel][iEv] = kFALSE;
53 fIsBG[iChannel][iEv] = kFALSE;
b090e6a3 54 }
db0db003 55 fTime[iChannel] = 0.0;
56 fWidth[iChannel] = 0.0;
b090e6a3 57 }
58}
59
60//_____________________________________________________________________________
61AliESDVZEROfriend::~AliESDVZEROfriend()
62{
63 // destructor
64}
65
66//_____________________________________________________________________________
67AliESDVZEROfriend::AliESDVZEROfriend(const AliESDVZEROfriend& vzerofriend):
68 TObject(vzerofriend),
69 fTrigger(vzerofriend.fTrigger),
70 fTriggerMask(vzerofriend.fTriggerMask)
71{
72 // copy constructor
73 for (Int_t iScaler = 0; iScaler < kNScalers; iScaler++)
74 fScalers[iScaler] = vzerofriend.fScalers[iScaler];
75
76 for (Int_t iBunch = 0; iBunch < kNBunches; iBunch++)
77 fBunchNumbers[iBunch] = vzerofriend.fBunchNumbers[iBunch];
78
79 for (Int_t iChannel = 0; iChannel < kNChannels; iChannel++) {
80 fBBScalers[iChannel] = vzerofriend.fBBScalers[iChannel];
81 fBGScalers[iChannel] = vzerofriend.fBGScalers[iChannel];
82 for (Int_t iBunch = 0; iBunch < kNBunches; iBunch++) {
83 fChargeMB[iChannel][iBunch] = vzerofriend.fChargeMB[iChannel][iBunch];
db0db003 84 fIsIntMB[iChannel][iBunch] = vzerofriend.fIsIntMB[iChannel][iBunch];
85 fIsBBMB[iChannel][iBunch] = vzerofriend.fIsBBMB[iChannel][iBunch];
86 fIsBGMB[iChannel][iBunch] = vzerofriend.fIsBGMB[iChannel][iBunch];
b090e6a3 87 }
88 for (Int_t iEv = 0; iEv < kNEvOfInt; iEv++) {
db0db003 89 fADC[iChannel][iEv] = vzerofriend.fADC[iChannel][iEv];
b090e6a3 90 fIsInt[iChannel][iEv] = vzerofriend.fIsInt[iChannel][iEv];
db0db003 91 fIsBB[iChannel][iEv] = vzerofriend.fIsBB[iChannel][iEv];
92 fIsBG[iChannel][iEv] = vzerofriend.fIsBG[iChannel][iEv];
b090e6a3 93 }
db0db003 94 fTime[iChannel] = vzerofriend.fTime[iChannel];
b090e6a3 95 fWidth[iChannel] = vzerofriend.fWidth[iChannel];
96 }
97}
98
99//_____________________________________________________________________________
100AliESDVZEROfriend& AliESDVZEROfriend::operator = (const AliESDVZEROfriend& vzerofriend)
101{
102 // assignment operator
103 if(&vzerofriend == this) return *this;
104 TObject::operator=(vzerofriend);
105
106 fTrigger = vzerofriend.fTrigger;
107 fTriggerMask = vzerofriend.fTriggerMask;
108
109 for (Int_t iScaler = 0; iScaler < kNScalers; iScaler++)
110 fScalers[iScaler] = vzerofriend.fScalers[iScaler];
111
112 for (Int_t iBunch = 0; iBunch < kNBunches; iBunch++)
113 fBunchNumbers[iBunch] = vzerofriend.fBunchNumbers[iBunch];
114
115 for (Int_t iChannel = 0; iChannel < kNChannels; iChannel++) {
116 fBBScalers[iChannel] = vzerofriend.fBBScalers[iChannel];
117 fBGScalers[iChannel] = vzerofriend.fBGScalers[iChannel];
118 for (Int_t iBunch = 0; iBunch < kNBunches; iBunch++) {
119 fChargeMB[iChannel][iBunch] = vzerofriend.fChargeMB[iChannel][iBunch];
db0db003 120 fIsIntMB[iChannel][iBunch] = vzerofriend.fIsIntMB[iChannel][iBunch];
121 fIsBBMB[iChannel][iBunch] = vzerofriend.fIsBBMB[iChannel][iBunch];
122 fIsBGMB[iChannel][iBunch] = vzerofriend.fIsBGMB[iChannel][iBunch];
b090e6a3 123 }
124 for (Int_t iEv = 0; iEv < kNEvOfInt; iEv++) {
db0db003 125 fADC[iChannel][iEv] = vzerofriend.fADC[iChannel][iEv];
b090e6a3 126 fIsInt[iChannel][iEv] = vzerofriend.fIsInt[iChannel][iEv];
db0db003 127 fIsBB[iChannel][iEv] = vzerofriend.fIsBB[iChannel][iEv];
128 fIsBG[iChannel][iEv] = vzerofriend.fIsBG[iChannel][iEv];
b090e6a3 129 }
db0db003 130 fTime[iChannel] = vzerofriend.fTime[iChannel];
b090e6a3 131 fWidth[iChannel] = vzerofriend.fWidth[iChannel];
132 }
133
134 return *this;
135}
136
137void AliESDVZEROfriend::Reset()
138{
139 // Reset the contents of the object
140 fTrigger = 0;
141 fTriggerMask = 0;
142
143 for (Int_t iScaler = 0; iScaler < kNScalers; iScaler++)
144 fScalers[iScaler] = 0;
145
146 for (Int_t iBunch = 0; iBunch < kNBunches; iBunch++)
147 fBunchNumbers[iBunch] = 0;
148
149 for (Int_t iChannel = 0; iChannel < kNChannels; iChannel++) {
150 fBBScalers[iChannel] = 0;
151 fBGScalers[iChannel] = 0;
152 for (Int_t iBunch = 0; iBunch < kNBunches; iBunch++) {
153 fChargeMB[iChannel][iBunch] = 0;
db0db003 154 fIsIntMB[iChannel][iBunch] = kFALSE;
155 fIsBBMB[iChannel][iBunch] = kFALSE;
156 fIsBGMB[iChannel][iBunch] = kFALSE;
b090e6a3 157 }
158 for (Int_t iEv = 0; iEv < kNEvOfInt; iEv++) {
db0db003 159 fADC[iChannel][iEv] = 0.0;
b090e6a3 160 fIsInt[iChannel][iEv] = kFALSE;
db0db003 161 fIsBB[iChannel][iEv] = kFALSE;
162 fIsBG[iChannel][iEv] = kFALSE;
b090e6a3 163 }
db0db003 164 fTime[iChannel] = 0.0;
165 fWidth[iChannel] = 0.0;
b090e6a3 166 }
167
168}