#include "AliFMDCorrDoubleHit.h"
#include <TBrowser.h>
#include <TH1D.h>
#include <AliLog.h>
#include <iostream>
AliFMDCorrDoubleHit::AliFMDCorrDoubleHit()
: fCorrections()
{
fCorrections.SetOwner(kTRUE);
fCorrections.SetName("doubleHit");
}
AliFMDCorrDoubleHit::AliFMDCorrDoubleHit(const AliFMDCorrDoubleHit& o)
: TObject(o),
fCorrections(o.fCorrections)
{
}
AliFMDCorrDoubleHit::~AliFMDCorrDoubleHit()
{
fCorrections.Clear();
}
AliFMDCorrDoubleHit&
AliFMDCorrDoubleHit::operator=(const AliFMDCorrDoubleHit& o)
{
fCorrections = o.fCorrections;
return *this;
}
TH1D*
AliFMDCorrDoubleHit::GetCorrection(UShort_t d, Char_t r) const
{
Int_t idx = GetRingIndex(d, r);
if (idx < 0) return 0;
TObject* o = fCorrections.At(idx);
if (!o) {
AliWarning(Form("No double hit correction found for FMD%d%c", d, r));
return 0;
}
return static_cast<TH1D*>(o);
}
Int_t
AliFMDCorrDoubleHit::GetRingIndex(UShort_t d, Char_t r) const
{
switch (d) {
case 1: return 0;
case 2: return (r == 'I' || r == 'i' ? 1 : 2); break;
case 3: return (r == 'I' || r == 'i' ? 3 : 4); break;
}
AliWarning(Form("Index for FMD%d%c not found", d, r));
return -1;
}
Bool_t
AliFMDCorrDoubleHit::SetCorrection(UShort_t d, Char_t r, TH1D* h)
{
Int_t idx = GetRingIndex(d, r);
if (idx < 0) return kFALSE;
h->SetName(Form("FMD%d%c", d, r));
h->SetTitle(Form("Double hit correction for FMD%d%c", d,r));
h->SetXTitle("#eta");
h->SetYTitle("#sum_{i} N_{i,strips hit}(#eta)/"
"#sum_{i} N_{i,total hits}(#eta)");
h->SetFillStyle(3001);
h->SetDirectory(0);
h->SetStats(0);
fCorrections.AddAtAndExpand(h, idx);
return kTRUE;
}
void
AliFMDCorrDoubleHit::Browse(TBrowser* b)
{
b->Add(&fCorrections);
}
void
AliFMDCorrDoubleHit::Print(Option_t* option) const
{
std::cout << "Double hit correction" << std::endl;
fCorrections.Print(option);
}
AliFMDCorrDoubleHit.cxx:1 AliFMDCorrDoubleHit.cxx:2 AliFMDCorrDoubleHit.cxx:3 AliFMDCorrDoubleHit.cxx:4 AliFMDCorrDoubleHit.cxx:5 AliFMDCorrDoubleHit.cxx:6 AliFMDCorrDoubleHit.cxx:7 AliFMDCorrDoubleHit.cxx:8 AliFMDCorrDoubleHit.cxx:9 AliFMDCorrDoubleHit.cxx:10 AliFMDCorrDoubleHit.cxx:11 AliFMDCorrDoubleHit.cxx:12 AliFMDCorrDoubleHit.cxx:13 AliFMDCorrDoubleHit.cxx:14 AliFMDCorrDoubleHit.cxx:15 AliFMDCorrDoubleHit.cxx:16 AliFMDCorrDoubleHit.cxx:17 AliFMDCorrDoubleHit.cxx:18 AliFMDCorrDoubleHit.cxx:19 AliFMDCorrDoubleHit.cxx:20 AliFMDCorrDoubleHit.cxx:21 AliFMDCorrDoubleHit.cxx:22 AliFMDCorrDoubleHit.cxx:23 AliFMDCorrDoubleHit.cxx:24 AliFMDCorrDoubleHit.cxx:25 AliFMDCorrDoubleHit.cxx:26 AliFMDCorrDoubleHit.cxx:27 AliFMDCorrDoubleHit.cxx:28 AliFMDCorrDoubleHit.cxx:29 AliFMDCorrDoubleHit.cxx:30 AliFMDCorrDoubleHit.cxx:31 AliFMDCorrDoubleHit.cxx:32 AliFMDCorrDoubleHit.cxx:33 AliFMDCorrDoubleHit.cxx:34 AliFMDCorrDoubleHit.cxx:35 AliFMDCorrDoubleHit.cxx:36 AliFMDCorrDoubleHit.cxx:37 AliFMDCorrDoubleHit.cxx:38 AliFMDCorrDoubleHit.cxx:39 AliFMDCorrDoubleHit.cxx:40 AliFMDCorrDoubleHit.cxx:41 AliFMDCorrDoubleHit.cxx:42 AliFMDCorrDoubleHit.cxx:43 AliFMDCorrDoubleHit.cxx:44 AliFMDCorrDoubleHit.cxx:45 AliFMDCorrDoubleHit.cxx:46 AliFMDCorrDoubleHit.cxx:47 AliFMDCorrDoubleHit.cxx:48 AliFMDCorrDoubleHit.cxx:49 AliFMDCorrDoubleHit.cxx:50 AliFMDCorrDoubleHit.cxx:51 AliFMDCorrDoubleHit.cxx:52 AliFMDCorrDoubleHit.cxx:53 AliFMDCorrDoubleHit.cxx:54 AliFMDCorrDoubleHit.cxx:55 AliFMDCorrDoubleHit.cxx:56 AliFMDCorrDoubleHit.cxx:57 AliFMDCorrDoubleHit.cxx:58 AliFMDCorrDoubleHit.cxx:59 AliFMDCorrDoubleHit.cxx:60 AliFMDCorrDoubleHit.cxx:61 AliFMDCorrDoubleHit.cxx:62 AliFMDCorrDoubleHit.cxx:63 AliFMDCorrDoubleHit.cxx:64 AliFMDCorrDoubleHit.cxx:65 AliFMDCorrDoubleHit.cxx:66 AliFMDCorrDoubleHit.cxx:67 AliFMDCorrDoubleHit.cxx:68 AliFMDCorrDoubleHit.cxx:69 AliFMDCorrDoubleHit.cxx:70 AliFMDCorrDoubleHit.cxx:71 AliFMDCorrDoubleHit.cxx:72 AliFMDCorrDoubleHit.cxx:73 AliFMDCorrDoubleHit.cxx:74 AliFMDCorrDoubleHit.cxx:75 AliFMDCorrDoubleHit.cxx:76 AliFMDCorrDoubleHit.cxx:77 AliFMDCorrDoubleHit.cxx:78 AliFMDCorrDoubleHit.cxx:79 AliFMDCorrDoubleHit.cxx:80 AliFMDCorrDoubleHit.cxx:81 AliFMDCorrDoubleHit.cxx:82 AliFMDCorrDoubleHit.cxx:83 AliFMDCorrDoubleHit.cxx:84 AliFMDCorrDoubleHit.cxx:85 AliFMDCorrDoubleHit.cxx:86 AliFMDCorrDoubleHit.cxx:87 AliFMDCorrDoubleHit.cxx:88 AliFMDCorrDoubleHit.cxx:89 AliFMDCorrDoubleHit.cxx:90 AliFMDCorrDoubleHit.cxx:91 AliFMDCorrDoubleHit.cxx:92 AliFMDCorrDoubleHit.cxx:93 AliFMDCorrDoubleHit.cxx:94 AliFMDCorrDoubleHit.cxx:95 AliFMDCorrDoubleHit.cxx:96 AliFMDCorrDoubleHit.cxx:97 AliFMDCorrDoubleHit.cxx:98 AliFMDCorrDoubleHit.cxx:99 AliFMDCorrDoubleHit.cxx:100 AliFMDCorrDoubleHit.cxx:101 AliFMDCorrDoubleHit.cxx:102 AliFMDCorrDoubleHit.cxx:103 AliFMDCorrDoubleHit.cxx:104 AliFMDCorrDoubleHit.cxx:105 AliFMDCorrDoubleHit.cxx:106 AliFMDCorrDoubleHit.cxx:107 AliFMDCorrDoubleHit.cxx:108 AliFMDCorrDoubleHit.cxx:109 AliFMDCorrDoubleHit.cxx:110 AliFMDCorrDoubleHit.cxx:111 AliFMDCorrDoubleHit.cxx:112 AliFMDCorrDoubleHit.cxx:113 AliFMDCorrDoubleHit.cxx:114 AliFMDCorrDoubleHit.cxx:115 AliFMDCorrDoubleHit.cxx:116 AliFMDCorrDoubleHit.cxx:117 AliFMDCorrDoubleHit.cxx:118 AliFMDCorrDoubleHit.cxx:119 AliFMDCorrDoubleHit.cxx:120 AliFMDCorrDoubleHit.cxx:121 AliFMDCorrDoubleHit.cxx:122 AliFMDCorrDoubleHit.cxx:123 AliFMDCorrDoubleHit.cxx:124 AliFMDCorrDoubleHit.cxx:125 AliFMDCorrDoubleHit.cxx:126 AliFMDCorrDoubleHit.cxx:127 AliFMDCorrDoubleHit.cxx:128 AliFMDCorrDoubleHit.cxx:129 AliFMDCorrDoubleHit.cxx:130 AliFMDCorrDoubleHit.cxx:131 AliFMDCorrDoubleHit.cxx:132 AliFMDCorrDoubleHit.cxx:133 AliFMDCorrDoubleHit.cxx:134 AliFMDCorrDoubleHit.cxx:135 AliFMDCorrDoubleHit.cxx:136 AliFMDCorrDoubleHit.cxx:137 AliFMDCorrDoubleHit.cxx:138 AliFMDCorrDoubleHit.cxx:139 AliFMDCorrDoubleHit.cxx:140 AliFMDCorrDoubleHit.cxx:141 AliFMDCorrDoubleHit.cxx:142 AliFMDCorrDoubleHit.cxx:143 AliFMDCorrDoubleHit.cxx:144 AliFMDCorrDoubleHit.cxx:145 AliFMDCorrDoubleHit.cxx:146 AliFMDCorrDoubleHit.cxx:147 AliFMDCorrDoubleHit.cxx:148 AliFMDCorrDoubleHit.cxx:149 AliFMDCorrDoubleHit.cxx:150 AliFMDCorrDoubleHit.cxx:151 AliFMDCorrDoubleHit.cxx:152 AliFMDCorrDoubleHit.cxx:153 AliFMDCorrDoubleHit.cxx:154 AliFMDCorrDoubleHit.cxx:155 AliFMDCorrDoubleHit.cxx:156