14 #include "GaudiKernel/ThreadLocalContext.h"
28 { 0.572496, 0.655057, 0.731093},
29 { 0.075488, 0.104297, 0.214769},
30 { -0.148836, -0.187077, -0.136677},
31 { -0.196002, -0.24895, -0.252711},
32 { -0.177228, -0.21831, -0.245412},
33 { -0.143346, -0.168434, -0.201137},
34 { -0.11199, -0.123737, -0.154998},
35 { -0.0864405, -0.0892498, -0.116567},
36 { -0.0660753, -0.0641608, -0.0867919},
37 { -0.050389, -0.0458778, -0.0642172},
38 { -0.0385136, -0.032897, -0.047445},
39 { -0.0288351, -0.023311, -0.0351371},
40 { -0.0218402, -0.0163931, -0.0260872},
41 { -0.0165734, -0.0114467, -0.019315},
42 { -0.0125223, -0.00795447, -0.0141427},
43 { -0.00894386, -0.00551898, -0.0101339},
44 { -0.00576509, -0.00396242, -0.00705192},
45 { -0.00364762, -0.00298286, -0.00479298},
46 { -0.00188369, -0.00202063, -0.00284983},
47 { -0.000721197, -0.000986272, -0.00117402},
48 { 2.62603e-05, -0.000216376, -0.000234439},
49 { 0.000133223, -5.59111e-06, 6.85495e-06},
50 { 0.000133223, -5.59111e-06, 6.85495e-06},
51 { 0.000133223, -5.59111e-06, 6.85495e-06},
52 { 0.000133223, -5.59111e-06, 6.85495e-06},
53 { 0.000133223, -5.59111e-06, 6.85495e-06},
54 { 0.000133223, -5.59111e-06, 6.85495e-06},
55 { 0.000133223, -5.59111e-06, 6.85495e-06},
56 { 0.000133223, -5.59111e-06, 6.85495e-06},
57 { 0.000133223, -5.59111e-06, 6.85495e-06},
58 { 0.000133223, -5.59111e-06, 6.85495e-06}
81 return StatusCode::SUCCESS ;
90 const EventContext& ctx = Gaudi::Hive::currentContext();
105 return StatusCode::FAILURE;
110 outfit->Add(
s.c_str());
121 outfit->SetBranchAddress(
"channelId", &
channelId);
122 outfit->SetBranchAddress(
"FT", &
FT);
123 outfit->SetBranchAddress(
"slot", &slot);
124 outfit->SetBranchAddress(
"channel", &
channel);
125 outfit->SetBranchAddress(
"detector", &
det);
126 outfit->SetBranchAddress(
"gain", &
gain);
127 outfit->SetBranchAddress(
"covr", covr);
130 std::unique_ptr<LArAutoCorrComplete> larAutoCorrComplete;
131 std::unique_ptr<LArAutoCorrMC> larAutoCorrMC;
134 larAutoCorrComplete = std::make_unique<LArAutoCorrComplete>();
138 larAutoCorrMC = std::make_unique<LArAutoCorrMC>();
143 typedef std::vector<float> AutoCorrVec;
144 std::map<std::pair<unsigned int,int>, AutoCorrVec>
AutoCorr;
151 Long64_t
nentries = outfit->GetEntries();
152 for ( Long64_t iev = 0; iev <
nentries; ++iev )
154 outfit->GetEvent(iev);
192 unsigned int count=0;
193 for(;ibeg != iend; ++ibeg) {
194 ATH_MSG_DEBUG (
" Chan " << std::hex << (ibeg->first).first << std::dec );
207 larAutoCorrMC->
set(
HWIdentifier((ibeg->first).first),(ibeg->first).second, ibeg->second);
209 larAutoCorrComplete->
set(
HWIdentifier((ibeg->first).first),(ibeg->first).second, ibeg->second);
220 AutoCorrVec myvec(
limit);
233 if(mod<0 || mod > 3) {
237 for(
int mygain=0; mygain<3; ++mygain) {
240 larAutoCorrComplete->
set(chid,mygain,myvec);
242 larAutoCorrMC->
set(chid,mygain,myvec);
260 return StatusCode::SUCCESS;