Line data Source code
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 AD DDL raw data
19 : /// It is written to the ESD-friend file
20 : ///
21 : ///////////////////////////////////////////////////////////////////////////////
22 :
23 : #include "AliESDADfriend.h"
24 :
25 172 : ClassImp(AliESDADfriend)
26 :
27 : //_____________________________________________________________________________
28 : AliESDADfriend::AliESDADfriend():
29 4 : TObject(),
30 4 : fTrigger(0),
31 4 : fTriggerMask(0)
32 20 : {
33 : // default constructor
34 136 : for (Int_t iScaler = 0; iScaler < kNScalers; iScaler++)
35 64 : fScalers[iScaler] = 0;
36 :
37 136 : for (Int_t iChannel = 0; iChannel < kNChannels; iChannel++) {
38 64 : fBBScalers[iChannel] = 0;
39 64 : fBGScalers[iChannel] = 0;
40 :
41 2816 : for (Int_t iEv = 0; iEv < kNEvOfInt; iEv++) {
42 1344 : fADC[iChannel][iEv] = 0.0;
43 1344 : fIsInt[iChannel][iEv] = kFALSE;
44 1344 : fIsBB[iChannel][iEv] = kFALSE;
45 1344 : fIsBG[iChannel][iEv] = kFALSE;
46 : }
47 64 : fTime[iChannel] = 0.0;
48 64 : fWidth[iChannel] = 0.0;
49 : }
50 8 : }
51 :
52 : //_____________________________________________________________________________
53 : AliESDADfriend::~AliESDADfriend()
54 16 : {
55 : // destructor
56 16 : }
57 :
58 : //_____________________________________________________________________________
59 : AliESDADfriend::AliESDADfriend(const AliESDADfriend& adfriend):
60 0 : TObject(adfriend),
61 0 : fTrigger(adfriend.fTrigger),
62 0 : fTriggerMask(adfriend.fTriggerMask)
63 0 : {
64 : // copy constructor
65 0 : for (Int_t iScaler = 0; iScaler < kNScalers; iScaler++)
66 0 : fScalers[iScaler] = adfriend.fScalers[iScaler];
67 :
68 0 : for (Int_t iChannel = 0; iChannel < kNChannels; iChannel++) {
69 0 : fBBScalers[iChannel] = adfriend.fBBScalers[iChannel];
70 0 : fBGScalers[iChannel] = adfriend.fBGScalers[iChannel];
71 :
72 0 : for (Int_t iEv = 0; iEv < kNEvOfInt; iEv++) {
73 0 : fADC[iChannel][iEv] = adfriend.fADC[iChannel][iEv];
74 0 : fIsInt[iChannel][iEv] = adfriend.fIsInt[iChannel][iEv];
75 0 : fIsBB[iChannel][iEv] = adfriend.fIsBB[iChannel][iEv];
76 0 : fIsBG[iChannel][iEv] = adfriend.fIsBG[iChannel][iEv];
77 : }
78 0 : fTime[iChannel] = adfriend.fTime[iChannel];
79 0 : fWidth[iChannel] = adfriend.fWidth[iChannel];
80 : }
81 0 : }
82 :
83 : //_____________________________________________________________________________
84 : AliESDADfriend& AliESDADfriend::operator = (const AliESDADfriend& adfriend)
85 : {
86 : // assignment operator
87 0 : if(&adfriend == this) return *this;
88 0 : TObject::operator=(adfriend);
89 :
90 0 : fTrigger = adfriend.fTrigger;
91 0 : fTriggerMask = adfriend.fTriggerMask;
92 :
93 0 : for (Int_t iScaler = 0; iScaler < kNScalers; iScaler++)
94 0 : fScalers[iScaler] = adfriend.fScalers[iScaler];
95 :
96 0 : for (Int_t iChannel = 0; iChannel < kNChannels; iChannel++) {
97 0 : fBBScalers[iChannel] = adfriend.fBBScalers[iChannel];
98 0 : fBGScalers[iChannel] = adfriend.fBGScalers[iChannel];
99 :
100 0 : for (Int_t iEv = 0; iEv < kNEvOfInt; iEv++) {
101 0 : fADC[iChannel][iEv] = adfriend.fADC[iChannel][iEv];
102 0 : fIsInt[iChannel][iEv] = adfriend.fIsInt[iChannel][iEv];
103 0 : fIsBB[iChannel][iEv] = adfriend.fIsBB[iChannel][iEv];
104 0 : fIsBG[iChannel][iEv] = adfriend.fIsBG[iChannel][iEv];
105 : }
106 0 : fTime[iChannel] = adfriend.fTime[iChannel];
107 0 : fWidth[iChannel] = adfriend.fWidth[iChannel];
108 : }
109 :
110 0 : return *this;
111 0 : }
112 :
113 : void AliESDADfriend::Reset()
114 : {
115 : // Reset the contents of the object
116 0 : fTrigger = 0;
117 0 : fTriggerMask = 0;
118 :
119 0 : for (Int_t iScaler = 0; iScaler < kNScalers; iScaler++)
120 0 : fScalers[iScaler] = 0;
121 :
122 0 : for (Int_t iChannel = 0; iChannel < kNChannels; iChannel++) {
123 0 : fBBScalers[iChannel] = 0;
124 0 : fBGScalers[iChannel] = 0;
125 :
126 0 : for (Int_t iEv = 0; iEv < kNEvOfInt; iEv++) {
127 0 : fADC[iChannel][iEv] = 0.0;
128 0 : fIsInt[iChannel][iEv] = kFALSE;
129 0 : fIsBB[iChannel][iEv] = kFALSE;
130 0 : fIsBG[iChannel][iEv] = kFALSE;
131 : }
132 0 : fTime[iChannel] = 0.0;
133 0 : fWidth[iChannel] = 0.0;
134 : }
135 :
136 0 : }
|