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 : /* $Id: AliTRDCalDCSFEEv2.cxx 18952 2007-06-08 11:36:12Z cblume $ */
17 :
18 : ///////////////////////////////////////////////////////////////////////////////
19 : // //
20 : // TRD calibration class for TRD DCS FEE configuration parameters //
21 : // //
22 : ///////////////////////////////////////////////////////////////////////////////
23 :
24 : // fStatusBit:
25 : // 0: no errors for that ROC
26 : // 1: ROC sent invalid or corrupted data.
27 : // 2: ROC was not in state CONFIGURED or STANDBY_INIT (most probably it was in STANDBY)
28 : // 3: No new data received from that ROC.
29 : // 4: DCS id from XML attributes <DCS> and <ack> and the one calculated from SM, S, L do not match
30 : // 5: ROC has not responded at all, most probably it was off.
31 :
32 : #include "AliTRDCalDCSFEEv2.h"
33 :
34 48 : ClassImp(AliTRDCalDCSFEEv2)
35 :
36 : //_____________________________________________________________________________
37 : AliTRDCalDCSFEEv2::AliTRDCalDCSFEEv2()
38 3240 : :TObject()
39 3240 : ,fStatusBit(0)
40 3240 : ,fSM(-1)
41 3240 : ,fStack(-1)
42 3240 : ,fLayer(-1)
43 3240 : ,fGainTableRocSerial(0)
44 3240 : ,fDCSID(-1)
45 3240 : ,fNumberOfTimeBins(-1)
46 3240 : ,fConfigTag(-1)
47 3240 : ,fSingleHitThres(-1)
48 3240 : ,fThrPdClsThres(-1)
49 3240 : ,fSelNoZS(-1)
50 3240 : ,fTCFilterWeight(-1)
51 3240 : ,fTCFilterShortDecPar(-1)
52 3240 : ,fTCFilterLongDecPar(-1)
53 3240 : ,fFastStatNoise(-1)
54 3240 : ,fGainTableRocType("")
55 3240 : ,fFilterType("")
56 3240 : ,fReadoutParam("")
57 3240 : ,fTestPattern("")
58 3240 : ,fTrackletMode("")
59 3240 : ,fTrackletDef("")
60 3240 : ,fTriggerSetup("")
61 3240 : ,fAddOptions("")
62 3240 : ,fConfigName("")
63 3240 : ,fConfigVersion("")
64 3240 : ,fGainTableName("")
65 3240 : ,fGainTableDesc("")
66 16200 : {
67 : //
68 : // AliTRDCalDCSFEEv2 default constructor
69 : //
70 58320 : for(Int_t i=0; i<(Int_t)fgkROB; i++) {
71 984960 : for(Int_t j=0; j<(Int_t)fgkMCM; j++) {
72 466560 : fRStateGSM[i][j] = -1;
73 466560 : fRStateNI[i][j] = -1;
74 466560 : fRStateEV[i][j] = -1;
75 466560 : fRStatePTRG[i][j] = -1;
76 466560 : fGainTableAdcdac[i][j] = -1;
77 20528640 : for(Int_t k=0; k<(Int_t)fgkADC; k++) {
78 9797760 : fGainTableFgfn[i][j][k] = -1;
79 9797760 : fGainTableFgan[i][j][k] = -1;
80 : }
81 : }
82 : }
83 6480 : }
84 :
85 :
86 : //_____________________________________________________________________________
87 : AliTRDCalDCSFEEv2::AliTRDCalDCSFEEv2(const AliTRDCalDCSFEEv2 &c)
88 0 : :TObject(c)
89 0 : ,fStatusBit(c.fStatusBit)
90 0 : ,fSM(c.fSM)
91 0 : ,fStack(c.fStack)
92 0 : ,fLayer(c.fLayer)
93 0 : ,fGainTableRocSerial(c.fGainTableRocSerial)
94 0 : ,fDCSID(c.fDCSID)
95 0 : ,fNumberOfTimeBins(c.fNumberOfTimeBins)
96 0 : ,fConfigTag(c.fConfigTag)
97 0 : ,fSingleHitThres(c.fSingleHitThres)
98 0 : ,fThrPdClsThres(c.fThrPdClsThres)
99 0 : ,fSelNoZS(c.fSelNoZS)
100 0 : ,fTCFilterWeight(c.fTCFilterWeight)
101 0 : ,fTCFilterShortDecPar(c.fTCFilterShortDecPar)
102 0 : ,fTCFilterLongDecPar(c.fTCFilterLongDecPar)
103 0 : ,fFastStatNoise(c.fFastStatNoise)
104 0 : ,fGainTableRocType(c.fGainTableRocType)
105 0 : ,fFilterType(c.fFilterType)
106 0 : ,fReadoutParam(c.fReadoutParam)
107 0 : ,fTestPattern(c.fTestPattern)
108 0 : ,fTrackletMode(c.fTrackletMode)
109 0 : ,fTrackletDef(c.fTrackletDef)
110 0 : ,fTriggerSetup(c.fTriggerSetup)
111 0 : ,fAddOptions(c.fAddOptions)
112 0 : ,fConfigName(c.fConfigName)
113 0 : ,fConfigVersion(c.fConfigVersion)
114 0 : ,fGainTableName(c.fGainTableName)
115 0 : ,fGainTableDesc(c.fGainTableDesc)
116 0 : {
117 : //
118 : // AliTRDCalDCSFEEv2 copy constructor
119 : //
120 0 : for(Int_t i=0; i<(Int_t)fgkROB; i++) {
121 0 : for(Int_t j=0; j<(Int_t)fgkMCM; j++) {
122 0 : fRStateGSM[i][j] = c.fRStateGSM[i][j];
123 0 : fRStateNI[i][j] = c.fRStateNI[i][j];
124 0 : fRStateEV[i][j] = c.fRStateEV[i][j];
125 0 : fRStatePTRG[i][j] = c.fRStatePTRG[i][j];
126 0 : fGainTableAdcdac[i][j] = c.fGainTableAdcdac[i][j];
127 0 : for(Int_t k=0; k<(Int_t)fgkADC; k++) {
128 0 : fGainTableFgfn[i][j][k] = c.fGainTableFgfn[i][j][k];
129 0 : fGainTableFgan[i][j][k] = c.fGainTableFgan[i][j][k];
130 : }
131 : }
132 : }
133 0 : }
134 :
135 :
136 : //_____________________________________________________________________________
137 : AliTRDCalDCSFEEv2 &AliTRDCalDCSFEEv2::operator=(const AliTRDCalDCSFEEv2 &c)
138 : {
139 : //
140 : // Assignment operator
141 : //
142 0 : if (&c == this) return *this;
143 :
144 0 : new (this) AliTRDCalDCSFEEv2(c);
145 0 : return *this;
146 0 : }
147 :
|