#include "AliFMDSharingFilter.h"
#include "AliFMDStripIndex.h"
#include <AliESDFMD.h>
#include <TAxis.h>
#include <TList.h>
#include <TH1.h>
#include <TMath.h>
#include "AliForwardCorrectionManager.h"
#include "AliFMDCorrELossFit.h"
#include <AliLog.h>
#include <TROOT.h>
#include <THStack.h>
#include <TParameter.h>
#include <iostream>
#include <iomanip>
ClassImp(AliFMDSharingFilter)
#if 0
;
#endif
#define DBG(L,M) \
do { if (L>fDebug)break; std::cout << (M) << std::flush;} while(false)
#define DBGL(L,M) \
do { if (L>fDebug)break; std::cout << (M) << std::endl;} while(false)
AliFMDSharingFilter::AliFMDSharingFilter()
: TNamed(),
fRingHistos(),
fCorrectAngles(kFALSE),
fHighCuts(0),
fLowCuts(0),
fDebug(0),
fZeroSharedHitsBelowThreshold(false),
fLCuts(),
fHCuts(),
fUseSimpleMerging(false),
fThreeStripSharing(true),
fMergingDisabled(false),
fIgnoreESDForAngleCorrection(false)
{
DGUARD(fDebug,1, "Default CTOR for AliFMDSharingFilter");
}
AliFMDSharingFilter::AliFMDSharingFilter(const char* title)
: TNamed("fmdSharingFilter", title),
fRingHistos(),
fCorrectAngles(kFALSE),
fHighCuts(0),
fLowCuts(0),
fDebug(0),
fZeroSharedHitsBelowThreshold(false),
fLCuts(),
fHCuts(),
fUseSimpleMerging(false),
fThreeStripSharing(true),
fMergingDisabled(false),
fIgnoreESDForAngleCorrection(false)
{
DGUARD(fDebug,1, "Named CTOR for AliFMDSharingFilter: %s", title);
fRingHistos.SetName(GetName());
fRingHistos.SetOwner();
fRingHistos.Add(new RingHistos(1, 'I'));
fRingHistos.Add(new RingHistos(2, 'I'));
fRingHistos.Add(new RingHistos(2, 'O'));
fRingHistos.Add(new RingHistos(3, 'I'));
fRingHistos.Add(new RingHistos(3, 'O'));
fHCuts.Set(AliFMDMultCuts::kLandauSigmaWidth, 1);
fLCuts.Set(AliFMDMultCuts::kFixed, .15);
}
AliFMDSharingFilter::~AliFMDSharingFilter()
{
DGUARD(fDebug,3, "DTOR for AliFMDSharingFilter");
}
AliFMDSharingFilter::RingHistos*
AliFMDSharingFilter::GetRingHistos(UShort_t d, Char_t r) const
{
Int_t idx = -1;
switch (d) {
case 1: idx = 0; break;
case 2: idx = 1 + (r == 'I' || r == 'i' ? 0 : 1); break;
case 3: idx = 3 + (r == 'I' || r == 'i' ? 0 : 1); break;
}
if (idx < 0 || idx >= fRingHistos.GetEntries()) return 0;
return static_cast<RingHistos*>(fRingHistos.At(idx));
}
void
AliFMDSharingFilter::SetupForData(const TAxis& axis)
{
DGUARD(fDebug,1, "Initialize for AliFMDSharingFilter");
AliForwardCorrectionManager& fcm = AliForwardCorrectionManager::Instance();
const AliFMDCorrELossFit* fits = fcm.GetELossFit();
TAxis eAxis(axis.GetNbins(),
axis.GetXmin(),
axis.GetXmax());
if(fits)
eAxis.Set(fits->GetEtaAxis().GetNbins(),
fits->GetEtaAxis().GetXmin(),
fits->GetEtaAxis().GetXmax());
UShort_t nEta = eAxis.GetNbins();
fHighCuts->SetBins(nEta, eAxis.GetXmin(), eAxis.GetXmax(), 5, .5, 5.5);
fHighCuts->GetYaxis()->SetBinLabel(1, "FMD1i");
fHighCuts->GetYaxis()->SetBinLabel(2, "FMD2i");
fHighCuts->GetYaxis()->SetBinLabel(3, "FMD2o");
fHighCuts->GetYaxis()->SetBinLabel(4, "FMD3i");
fHighCuts->GetYaxis()->SetBinLabel(5, "FMD3o");
fLowCuts->SetBins(nEta, eAxis.GetXmin(), eAxis.GetXmax(), 5, .5, 5.5);
fLowCuts->GetYaxis()->SetBinLabel(1, "FMD1i");
fLowCuts->GetYaxis()->SetBinLabel(2, "FMD2i");
fLowCuts->GetYaxis()->SetBinLabel(3, "FMD2o");
fLowCuts->GetYaxis()->SetBinLabel(4, "FMD3i");
fLowCuts->GetYaxis()->SetBinLabel(5, "FMD3o");
fLCuts.FillHistogram(fLowCuts);
fHCuts.FillHistogram(fHighCuts);
}
#define ETA2COS(ETA) \
TMath::Cos(2*TMath::ATan(TMath::Exp(-TMath::Abs(ETA))))
Bool_t
AliFMDSharingFilter::Filter(const AliESDFMD& input,
Bool_t ,
AliESDFMD& output,
Double_t )
{
DGUARD(fDebug,1, "Filter event in AliFMDSharingFilter");
output.Clear();
TIter next(&fRingHistos);
RingHistos* o = 0;
while ((o = static_cast<RingHistos*>(next()))) o->Clear();
Int_t nSingle = 0;
Int_t nDouble = 0;
Int_t nTriple = 0;
for(UShort_t d = 1; d <= 3; d++) {
Int_t nRings = (d == 1 ? 1 : 2);
for (UShort_t q = 0; q < nRings; q++) {
Char_t r = (q == 0 ? 'I' : 'O');
UShort_t nsec = (q == 0 ? 20 : 40);
UShort_t nstr = (q == 0 ? 512 : 256);
RingHistos* histos = GetRingHistos(d, r);
for(UShort_t s = 0; s < nsec; s++) {
Bool_t used = kFALSE;
Double_t eTotal = -1;
Bool_t twoLow = kFALSE;
Int_t nStripsAboveCut = 0;
for(UShort_t t = 0; t < nstr; t++) {
output.SetMultiplicity(d,r,s,t,0.);
Float_t mult = SignalInStrip(input,d,r,s,t);
Float_t multNext = (t<nstr-1) ? SignalInStrip(input,d,r,s,t+1) :0;
Float_t multNextNext = (t<nstr-2) ? SignalInStrip(input,d,r,s,t+2) :0;
if (multNext == AliESDFMD::kInvalidMult) multNext = 0;
if (multNextNext == AliESDFMD::kInvalidMult) multNextNext = 0;
if(!fThreeStripSharing) multNextNext = 0;
Double_t eta = input.Eta(d,r,s,t);
Double_t phi = input.Phi(d,r,s,t) * TMath::Pi() / 180.;
if (s == 0) output.SetEta(d,r,s,t,eta);
if (mult == AliESDFMD::kInvalidMult) {
output.SetMultiplicity(d,r,s,t,AliESDFMD::kInvalidMult);
histos->fBefore->Fill(-1);
mult = AliESDFMD::kInvalidMult;
}
Double_t lowCut = GetLowCut(d, r, eta);
Double_t highCut = GetHighCut(d, r, eta, false);
if (mult != AliESDFMD::kInvalidMult && mult > lowCut) {
histos->fSumESD->Fill(eta, phi, mult);
}
if (mult == AliESDFMD::kInvalidMult || mult == 0) {
if (mult == 0) histos->fSum->Fill(eta,phi,mult);
if (eTotal > 0 && t > 0)
output.SetMultiplicity(d,r,s,t-1,eTotal);
eTotal = -1;
used = false;
twoLow = false;
if (t > 0)
histos->fNConsecutive->Fill(nStripsAboveCut);
if (mult == AliESDFMD::kInvalidMult)
nStripsAboveCut = -1;
else
nStripsAboveCut = 0;
continue;
}
histos->fBefore->Fill(mult);
Double_t mergedEnergy = mult;
if(mult > lowCut) {
if(nStripsAboveCut < 1) {
if(t > 0)
histos->fNConsecutive->Fill(nStripsAboveCut);
nStripsAboveCut=0;
}
nStripsAboveCut++;
}
else {
if (t > 0)
histos->fNConsecutive->Fill(nStripsAboveCut);
nStripsAboveCut=0;
}
if (!fMergingDisabled) {
mergedEnergy = 0;
Float_t etot = 0;
if (t < nstr-1) histos->fNeighborsBefore->Fill(mult,multNext);
Bool_t thisValid = mult > lowCut;
Bool_t nextValid = multNext > lowCut;
Bool_t thisSmall = mult < highCut;
Bool_t nextSmall = multNext < highCut;
if (eTotal > 0) {
if (fThreeStripSharing && nextValid && (nextSmall || twoLow)) {
eTotal = eTotal + multNext;
used = kTRUE;
histos->fTriple->Fill(eTotal);
nTriple++;
twoLow = kFALSE;
}
else {
used = kFALSE;
histos->fDouble->Fill(eTotal);
nDouble++;
}
etot = eTotal;
eTotal = -1;
}
else {
if (used) {used = kFALSE; continue; }
if (thisValid) etot = mult;
if (thisValid && nextValid && (thisSmall || nextSmall)) {
if (thisSmall && nextSmall) twoLow = kTRUE;
if (mult>multNext && multNextNext < lowCut) {
etot = mult + multNext;
used = kTRUE;
histos->fDouble->Fill(etot);
nDouble++;
}
else {
etot = 0;
eTotal = mult + multNext;
}
}
else if(etot > 0) {
histos->fSingle->Fill(etot);
histos->fSinglePerStrip->Fill(etot,t);
nSingle++;
}
}
mergedEnergy = etot;
}
if (!fCorrectAngles)
mergedEnergy = AngleCorrect(mergedEnergy, eta);
if (t != 0)
histos->fNeighborsAfter->Fill(output.Multiplicity(d,r,s,t-1),
mergedEnergy);
histos->fBeforeAfter->Fill(mult, mergedEnergy);
if(mergedEnergy > 0)
histos->fAfter->Fill(mergedEnergy);
histos->fSum->Fill(eta,phi,mergedEnergy);
output.SetMultiplicity(d,r,s,t,mergedEnergy);
}
histos->fNConsecutive->Fill(nStripsAboveCut);
}
}
}
DMSG(fDebug, 3,"single=%9d, double=%9d, triple=%9d",
nSingle, nDouble, nTriple);
next.Reset();
return kTRUE;
}
Double_t
AliFMDSharingFilter::SignalInStrip(const AliESDFMD& input,
UShort_t d,
Char_t r,
UShort_t s,
UShort_t t) const
{
Double_t mult = input.Multiplicity(d,r,s,t);
if (mult == AliESDFMD::kInvalidMult ||
mult == 0 ||
(fCorrectAngles && (fIgnoreESDForAngleCorrection || input.IsAngleCorrected())) ||
(!fCorrectAngles && !fIgnoreESDForAngleCorrection && !input.IsAngleCorrected()))
return mult;
if (fCorrectAngles) mult = AngleCorrect(mult, input.Eta(d,r,s,t));
else mult = DeAngleCorrect(mult, input.Eta(d,r,s,t));
return mult;
}
namespace {
Double_t Rng2Cut(UShort_t d, Char_t r, Double_t eta, TH2* h) {
Double_t ret = 1024;
Int_t ybin = 0;
switch(d) {
case 1: ybin = 1; break;
case 2: ybin = (r=='i' || r=='I') ? 2 : 3; break;
case 3: ybin = (r=='i' || r=='I') ? 4 : 5; break;
default: return ret;
}
Int_t xbin = h->GetXaxis()->FindBin(eta);
if (xbin < 1 && xbin > h->GetXaxis()->GetNbins()) return ret;
ret = h->GetBinContent(xbin,ybin);
return ret;
}
}
Double_t
AliFMDSharingFilter::GetLowCut(UShort_t d, Char_t r, Double_t eta) const
{
return Rng2Cut(d, r, eta, fLowCuts);
}
Double_t
AliFMDSharingFilter::GetHighCut(UShort_t d, Char_t r,
Double_t eta, Bool_t ) const
{
return Rng2Cut(d, r, eta, fHighCuts);
}
Double_t
AliFMDSharingFilter::AngleCorrect(Double_t mult, Double_t eta) const
{
Double_t theta = 2 * TMath::ATan(TMath::Exp(-eta));
if (eta < 0) theta -= TMath::Pi();
return mult * TMath::Cos(theta);
}
Double_t
AliFMDSharingFilter::DeAngleCorrect(Double_t mult, Double_t eta) const
{
Double_t theta = 2 * TMath::ATan(TMath::Exp(-eta));
if (eta < 0) theta -= TMath::Pi();
return mult / TMath::Cos(theta);
}
void
AliFMDSharingFilter::Terminate(const TList* dir, TList* output, Int_t nEvents)
{
DGUARD(fDebug,1, "Scale histograms in AliFMDSharingFilter");
if (nEvents <= 0) return;
TList* d = static_cast<TList*>(dir->FindObject(GetName()));
if (!d) return;
TList* out = new TList;
out->SetName(d->GetName());
out->SetOwner();
TParameter<int>* nFiles =
static_cast<TParameter<int>*>(d->FindObject("nFiles"));
TH2* lowCuts = static_cast<TH2*>(d->FindObject("lowCuts"));
TH2* highCuts = static_cast<TH2*>(d->FindObject("highCuts"));
if (lowCuts && nFiles) {
TH1* oh = static_cast<TH1*>(lowCuts->Clone());
oh->Scale(1. / nFiles->GetVal());
oh->SetBit(BIT(20));
out->Add(oh);
}
else
AliWarning("low cuts histogram not found in input list");
if (highCuts && nFiles) {
TH1* oh = static_cast<TH1*>(highCuts->Clone());
oh->Scale(1. / nFiles->GetVal());
oh->SetBit(BIT(20));
out->Add(oh);
}
else
AliWarning("high cuts histogram not found in input list");
TIter next(&fRingHistos);
RingHistos* o = 0;
THStack* sums = new THStack("sums", "Sum of ring signals");
THStack* sumsESD = new THStack("sumsESD", "Sum of ring ESD signals");
while ((o = static_cast<RingHistos*>(next()))) {
o->Terminate(d, nEvents);
if (!o->fSum) {
Warning("Terminate", "No sum histogram found for ring %s", o->GetName());
continue;
}
TH1D* sum = o->fSum->ProjectionX(o->GetName(), 1, o->fSum->GetNbinsY(),"e");
sum->Scale(1., "width");
sum->SetTitle(o->GetName());
sum->SetDirectory(0);
sum->SetYTitle("#sum_{c} #Delta/#Delta_{mip}");
sums->Add(sum);
if (o->fSumESD) {
sum = o->fSumESD->ProjectionX(o->GetName(), 1, o->fSumESD->GetNbinsY(),"e");
sum->Scale(1., "width");
sum->SetTitle(o->GetName());
sum->SetDirectory(0);
sum->SetYTitle("#sum_{s} #Delta/#Delta_{mip}");
sumsESD->Add(sum);
}
}
out->Add(sums);
out->Add(sumsESD);
output->Add(out);
}
void
AliFMDSharingFilter::CreateOutputObjects(TList* dir)
{
DGUARD(fDebug,1, "Define output in AliFMDSharingFilter");
TList* d = new TList;
d->SetName(GetName());
dir->Add(d);
#if 0
fSummed = new TH2I("operations", "Strip operations",
kMergedInto, kNone-.5, kMergedInto+.5,
51201, -.5, 51200.5);
fSummed->SetXTitle("Operation");
fSummed->SetYTitle("# of strips");
fSummed->SetZTitle("Events");
fSummed->GetXaxis()->SetBinLabel(kNone, "None");
fSummed->GetXaxis()->SetBinLabel(kCandidate, "Candidate");
fSummed->GetXaxis()->SetBinLabel(kMergedWithOther, "Merged w/other");
fSummed->GetXaxis()->SetBinLabel(kMergedInto, "Merged into");
fSummed->SetDirectory(0);
d->Add(fSummed);
#endif
fHighCuts = new TH2D("highCuts", "High cuts used", 1,0,1, 1,0,1);
fHighCuts->SetXTitle("#eta");
fHighCuts->SetDirectory(0);
d->Add(fHighCuts);
fLowCuts = new TH2D("lowCuts", "Low cuts used", 1,0,1, 1,0,1);
fLowCuts->SetXTitle("#eta");
fLowCuts->SetDirectory(0);
d->Add(fLowCuts);
d->Add(AliForwardUtil::MakeParameter("angle", fCorrectAngles));
d->Add(AliForwardUtil::MakeParameter("lowSignal",
fZeroSharedHitsBelowThreshold));
d->Add(AliForwardUtil::MakeParameter("simple", fUseSimpleMerging));
d->Add(AliForwardUtil::MakeParameter("sumThree", fThreeStripSharing));
d->Add(AliForwardUtil::MakeParameter("disabled", fMergingDisabled));
TParameter<int>* nFiles = new TParameter<int>("nFiles", 1);
nFiles->SetMergeMode('+');
d->Add(nFiles);
fLCuts.Output(d,"lCuts");
fHCuts.Output(d,"hCuts");
TIter next(&fRingHistos);
RingHistos* o = 0;
while ((o = static_cast<RingHistos*>(next()))) {
o->CreateOutputObjects(d);
}
}
#define PF(N,V,...) \
AliForwardUtil::PrintField(N,V, ## __VA_ARGS__)
#define PFB(N,FLAG) \
do { \
AliForwardUtil::PrintName(N); \
std::cout << std::boolalpha << (FLAG) << std::noboolalpha << std::endl; \
} while(false)
#define PFV(N,VALUE) \
do { \
AliForwardUtil::PrintName(N); \
std::cout << (VALUE) << std::endl; } while(false)
void
AliFMDSharingFilter::Print(Option_t* ) const
{
AliForwardUtil::PrintTask(*this);
gROOT->IncreaseDirLevel();
PFB("Use corrected angles", fCorrectAngles);
PFB("Zero below threshold", fZeroSharedHitsBelowThreshold);
PFB("Use simple sharing", fUseSimpleMerging);
PFB("Allow 3 strip merging", fThreeStripSharing);
PF("Low cuts", "");
fLCuts.Print();
PF("High cuts", "");
fHCuts.Print();
gROOT->DecreaseDirLevel();
}
AliFMDSharingFilter::RingHistos::RingHistos()
: AliForwardUtil::RingHistos(),
fBefore(0),
fAfter(0),
fSingle(0),
fDouble(0),
fTriple(0),
fSinglePerStrip(0),
fBeforeAfter(0),
fNeighborsBefore(0),
fNeighborsAfter(0),
fSumESD(0),
fSum(0),
fNConsecutive(0)
{
}
AliFMDSharingFilter::RingHistos::RingHistos(UShort_t d, Char_t r)
: AliForwardUtil::RingHistos(d,r),
fBefore(0),
fAfter(0),
fSingle(0),
fDouble(0),
fTriple(0),
fSinglePerStrip(0),
fBeforeAfter(0),
fNeighborsBefore(0),
fNeighborsAfter(0),
fSumESD(0),
fSum(0),
fNConsecutive(0)
{
fBefore = new TH1D("esdEloss", Form("Energy loss in %s (reconstruction)",
GetName()), 640, -1, 15);
fBefore->SetXTitle("#Delta E/#Delta E_{mip}");
fBefore->SetYTitle("P(#Delta E/#Delta E_{mip})");
fBefore->SetFillColor(Color());
fBefore->SetFillStyle(3001);
fBefore->SetLineColor(kBlack);
fBefore->SetLineStyle(2);
fBefore->SetDirectory(0);
fAfter = static_cast<TH1D*>(fBefore->Clone("anaEloss"));
fAfter->SetTitle(Form("Energy loss in %s (sharing corrected)", GetName()));
fAfter->SetFillColor(Color()+2);
fAfter->SetLineStyle(1);
fAfter->SetDirectory(0);
fSingle = new TH1D("singleEloss", "Energy loss (single strips)",
600, 0, 15);
fSingle->SetXTitle("#Delta/#Delta_{mip}");
fSingle->SetYTitle("P(#Delta/#Delta_{mip})");
fSingle->SetFillColor(Color());
fSingle->SetFillStyle(3001);
fSingle->SetLineColor(kBlack);
fSingle->SetLineStyle(2);
fSingle->SetDirectory(0);
fDouble = static_cast<TH1D*>(fSingle->Clone("doubleEloss"));
fDouble->SetTitle("Energy loss (two strips)");
fDouble->SetFillColor(Color()+1);
fDouble->SetDirectory(0);
fTriple = static_cast<TH1D*>(fSingle->Clone("tripleEloss"));
fTriple->SetTitle("Energy loss (three strips)");
fTriple->SetFillColor(Color()+2);
fTriple->SetDirectory(0);
Int_t nBinsForInner = (r == 'I' ? 512 : 256);
Int_t nStrips = (r == 'I' ? 512 : 256);
fSinglePerStrip = new TH2D("singlePerStrip", "SinglePerStrip",
600,0,15, nBinsForInner,0,nStrips);
fSinglePerStrip->SetXTitle("#Delta/#Delta_{mip}");
fSinglePerStrip->SetYTitle("Strip #");
fSinglePerStrip->SetZTitle("Counts");
fSinglePerStrip->SetDirectory(0);
#if 0
fDistanceBefore = new TH1D("distanceBefore", "Distance before sharing",
nStrips , 0,nStrips );
fDistanceBefore->SetXTitle("Distance");
fDistanceBefore->SetYTitle("Counts");
fDistanceBefore->SetFillColor(kGreen+2);
fDistanceBefore->SetFillStyle(3001);
fDistanceBefore->SetLineColor(kBlack);
fDistanceBefore->SetLineStyle(2);
fDistanceBefore->SetDirectory(0);
fDistanceAfter = static_cast<TH1D*>(fDistanceBefore->Clone("distanceAfter"));
fDistanceAfter->SetTitle("Distance after sharing");
fDistanceAfter->SetFillColor(kGreen+1);
fDistanceAfter->SetDirectory(0);
#endif
Double_t max = 15;
Double_t min = -1;
Int_t n = int((max-min) / (max / 300));
fBeforeAfter = new TH2D("beforeAfter", "Before and after correlation",
n, min, max, n, min, max);
fBeforeAfter->SetXTitle("#Delta E/#Delta E_{mip} before");
fBeforeAfter->SetYTitle("#Delta E/#Delta E_{mip} after");
fBeforeAfter->SetZTitle("Correlation");
fBeforeAfter->SetDirectory(0);
fNeighborsBefore = static_cast<TH2D*>(fBeforeAfter->Clone("neighborsBefore"));
fNeighborsBefore->SetTitle("Correlation of neighbors before");
fNeighborsBefore->SetXTitle("#Delta E_{i}/#Delta E_{mip}");
fNeighborsBefore->SetYTitle("#Delta E_{i+1}/#Delta E_{mip}");
fNeighborsBefore->SetDirectory(0);
fNeighborsAfter =
static_cast<TH2D*>(fNeighborsBefore->Clone("neighborsAfter"));
fNeighborsAfter->SetTitle("Correlation of neighbors after");
fNeighborsAfter->SetDirectory(0);
fSumESD = new TH2D("summedESD", "Summed ESD signal", 200, -4, 6,
NSector(), 0, 2*TMath::Pi());
fSumESD->SetDirectory(0);
fSumESD->Sumw2();
fSumESD->SetMarkerColor(Color());
fSumESD->SetXTitle("#eta");
fSumESD->SetYTitle("#varphi [radians]");
fSumESD->SetZTitle("#sum_{strip} #Delta/#Delta_{mip}(#eta,#varphi) ");
fSum = static_cast<TH2D*>(fSumESD->Clone("summed"));
fSum->SetTitle("Summed cluster signal");
fSum->SetZTitle("#sum_{cluster} #Delta/#Delta_{mip}(#eta,#varphi) ");
fSum->SetDirectory(0);
fNConsecutive = new TH1D("nConsecutive","# consecutive strips above low cut",
201,-1.5,199.5);
fNConsecutive->SetXTitle("N_{strips}");
fNConsecutive->SetYTitle("N_{entries}");
fNConsecutive->SetFillColor(kYellow+2);
fNConsecutive->SetFillStyle(3001);
fNConsecutive->SetDirectory(0);
#if 0
fHits = new TH1D("hits", "Number of hits", 200, 0, 200000);
fHits->SetDirectory(0);
fHits->SetXTitle("# of hits");
fHits->SetFillColor(kGreen+1);
#endif
}
AliFMDSharingFilter::RingHistos::RingHistos(const RingHistos& o)
: AliForwardUtil::RingHistos(o),
fBefore(o.fBefore),
fAfter(o.fAfter),
fSingle(o.fSingle),
fDouble(o.fDouble),
fTriple(o.fTriple),
fSinglePerStrip(o.fSinglePerStrip),
fBeforeAfter(o.fBeforeAfter),
fNeighborsBefore(o.fNeighborsBefore),
fNeighborsAfter(o.fNeighborsAfter),
fSumESD(o.fSumESD),
fSum(o.fSum),
fNConsecutive(o.fNConsecutive)
{
}
AliFMDSharingFilter::RingHistos&
AliFMDSharingFilter::RingHistos::operator=(const RingHistos& o)
{
if (&o == this) return *this;
AliForwardUtil::RingHistos::operator=(o);
fDet = o.fDet;
fRing = o.fRing;
if (fBefore) delete fBefore;
if (fAfter) delete fAfter;
if (fSingle) delete fSingle;
if (fDouble) delete fDouble;
if (fTriple) delete fTriple;
if (fSinglePerStrip) delete fSinglePerStrip;
if (fNConsecutive) delete fNConsecutive;
fBefore = static_cast<TH1D*>(o.fBefore->Clone());
fAfter = static_cast<TH1D*>(o.fAfter->Clone());
fSingle = static_cast<TH1D*>(o.fSingle->Clone());
fDouble = static_cast<TH1D*>(o.fDouble->Clone());
fTriple = static_cast<TH1D*>(o.fTriple->Clone());
fSinglePerStrip = static_cast<TH2D*>(o.fSinglePerStrip->Clone());
fBeforeAfter = static_cast<TH2D*>(o.fBeforeAfter->Clone());
fNeighborsBefore = static_cast<TH2D*>(o.fNeighborsBefore->Clone());
fNeighborsAfter = static_cast<TH2D*>(o.fNeighborsAfter->Clone());
fSumESD = static_cast<TH2D*>(o.fSumESD->Clone());
fSum = static_cast<TH2D*>(o.fSum->Clone());
fNConsecutive = static_cast<TH1D*>(o.fNConsecutive->Clone());
return *this;
}
AliFMDSharingFilter::RingHistos::~RingHistos()
{
}
#if 0
void
AliFMDSharingFilter::RingHistos::Finish()
{
}
#endif
void
AliFMDSharingFilter::RingHistos::Terminate(const TList* dir, Int_t nEvents)
{
TList* l = GetOutputList(dir);
if (!l) return;
#if 0
TH1D* before = static_cast<TH1D*>(l->FindObject("esdEloss"));
TH1D* after = static_cast<TH1D*>(l->FindObject("anaEloss"));
if (before) before->Scale(1./nEvents);
if (after) after->Scale(1./nEvents);
#endif
TH2D* summed = static_cast<TH2D*>(l->FindObject("summed"));
if (summed) summed->Scale(1./nEvents);
fSum = summed;
TH2D* summedESD = static_cast<TH2D*>(l->FindObject("summedESD"));
if (summedESD) summedESD->Scale(1./nEvents);
fSumESD = summedESD;
TH1D* consecutive = static_cast<TH1D*>(l->FindObject("nConsecutive"));
if (consecutive) consecutive->Scale(1./nEvents);
fNConsecutive= consecutive;
}
void
AliFMDSharingFilter::RingHistos::CreateOutputObjects(TList* dir)
{
TList* d = DefineOutputList(dir);
d->Add(fBefore);
d->Add(fAfter);
d->Add(fSingle);
d->Add(fDouble);
d->Add(fTriple);
d->Add(fSinglePerStrip);
d->Add(fBeforeAfter);
d->Add(fNeighborsBefore);
d->Add(fNeighborsAfter);
d->Add(fSumESD);
d->Add(fSum);
d->Add(fNConsecutive);
}
AliFMDSharingFilter.cxx:1 AliFMDSharingFilter.cxx:2 AliFMDSharingFilter.cxx:3 AliFMDSharingFilter.cxx:4 AliFMDSharingFilter.cxx:5 AliFMDSharingFilter.cxx:6 AliFMDSharingFilter.cxx:7 AliFMDSharingFilter.cxx:8 AliFMDSharingFilter.cxx:9 AliFMDSharingFilter.cxx:10 AliFMDSharingFilter.cxx:11 AliFMDSharingFilter.cxx:12 AliFMDSharingFilter.cxx:13 AliFMDSharingFilter.cxx:14 AliFMDSharingFilter.cxx:15 AliFMDSharingFilter.cxx:16 AliFMDSharingFilter.cxx:17 AliFMDSharingFilter.cxx:18 AliFMDSharingFilter.cxx:19 AliFMDSharingFilter.cxx:20 AliFMDSharingFilter.cxx:21 AliFMDSharingFilter.cxx:22 AliFMDSharingFilter.cxx:23 AliFMDSharingFilter.cxx:24 AliFMDSharingFilter.cxx:25 AliFMDSharingFilter.cxx:26 AliFMDSharingFilter.cxx:27 AliFMDSharingFilter.cxx:28 AliFMDSharingFilter.cxx:29 AliFMDSharingFilter.cxx:30 AliFMDSharingFilter.cxx:31 AliFMDSharingFilter.cxx:32 AliFMDSharingFilter.cxx:33 AliFMDSharingFilter.cxx:34 AliFMDSharingFilter.cxx:35 AliFMDSharingFilter.cxx:36 AliFMDSharingFilter.cxx:37 AliFMDSharingFilter.cxx:38 AliFMDSharingFilter.cxx:39 AliFMDSharingFilter.cxx:40 AliFMDSharingFilter.cxx:41 AliFMDSharingFilter.cxx:42 AliFMDSharingFilter.cxx:43 AliFMDSharingFilter.cxx:44 AliFMDSharingFilter.cxx:45 AliFMDSharingFilter.cxx:46 AliFMDSharingFilter.cxx:47 AliFMDSharingFilter.cxx:48 AliFMDSharingFilter.cxx:49 AliFMDSharingFilter.cxx:50 AliFMDSharingFilter.cxx:51 AliFMDSharingFilter.cxx:52 AliFMDSharingFilter.cxx:53 AliFMDSharingFilter.cxx:54 AliFMDSharingFilter.cxx:55 AliFMDSharingFilter.cxx:56 AliFMDSharingFilter.cxx:57 AliFMDSharingFilter.cxx:58 AliFMDSharingFilter.cxx:59 AliFMDSharingFilter.cxx:60 AliFMDSharingFilter.cxx:61 AliFMDSharingFilter.cxx:62 AliFMDSharingFilter.cxx:63 AliFMDSharingFilter.cxx:64 AliFMDSharingFilter.cxx:65 AliFMDSharingFilter.cxx:66 AliFMDSharingFilter.cxx:67 AliFMDSharingFilter.cxx:68 AliFMDSharingFilter.cxx:69 AliFMDSharingFilter.cxx:70 AliFMDSharingFilter.cxx:71 AliFMDSharingFilter.cxx:72 AliFMDSharingFilter.cxx:73 AliFMDSharingFilter.cxx:74 AliFMDSharingFilter.cxx:75 AliFMDSharingFilter.cxx:76 AliFMDSharingFilter.cxx:77 AliFMDSharingFilter.cxx:78 AliFMDSharingFilter.cxx:79 AliFMDSharingFilter.cxx:80 AliFMDSharingFilter.cxx:81 AliFMDSharingFilter.cxx:82 AliFMDSharingFilter.cxx:83 AliFMDSharingFilter.cxx:84 AliFMDSharingFilter.cxx:85 AliFMDSharingFilter.cxx:86 AliFMDSharingFilter.cxx:87 AliFMDSharingFilter.cxx:88 AliFMDSharingFilter.cxx:89 AliFMDSharingFilter.cxx:90 AliFMDSharingFilter.cxx:91 AliFMDSharingFilter.cxx:92 AliFMDSharingFilter.cxx:93 AliFMDSharingFilter.cxx:94 AliFMDSharingFilter.cxx:95 AliFMDSharingFilter.cxx:96 AliFMDSharingFilter.cxx:97 AliFMDSharingFilter.cxx:98 AliFMDSharingFilter.cxx:99 AliFMDSharingFilter.cxx:100 AliFMDSharingFilter.cxx:101 AliFMDSharingFilter.cxx:102 AliFMDSharingFilter.cxx:103 AliFMDSharingFilter.cxx:104 AliFMDSharingFilter.cxx:105 AliFMDSharingFilter.cxx:106 AliFMDSharingFilter.cxx:107 AliFMDSharingFilter.cxx:108 AliFMDSharingFilter.cxx:109 AliFMDSharingFilter.cxx:110 AliFMDSharingFilter.cxx:111 AliFMDSharingFilter.cxx:112 AliFMDSharingFilter.cxx:113 AliFMDSharingFilter.cxx:114 AliFMDSharingFilter.cxx:115 AliFMDSharingFilter.cxx:116 AliFMDSharingFilter.cxx:117 AliFMDSharingFilter.cxx:118 AliFMDSharingFilter.cxx:119 AliFMDSharingFilter.cxx:120 AliFMDSharingFilter.cxx:121 AliFMDSharingFilter.cxx:122 AliFMDSharingFilter.cxx:123 AliFMDSharingFilter.cxx:124 AliFMDSharingFilter.cxx:125 AliFMDSharingFilter.cxx:126 AliFMDSharingFilter.cxx:127 AliFMDSharingFilter.cxx:128 AliFMDSharingFilter.cxx:129 AliFMDSharingFilter.cxx:130 AliFMDSharingFilter.cxx:131 AliFMDSharingFilter.cxx:132 AliFMDSharingFilter.cxx:133 AliFMDSharingFilter.cxx:134 AliFMDSharingFilter.cxx:135 AliFMDSharingFilter.cxx:136 AliFMDSharingFilter.cxx:137 AliFMDSharingFilter.cxx:138 AliFMDSharingFilter.cxx:139 AliFMDSharingFilter.cxx:140 AliFMDSharingFilter.cxx:141 AliFMDSharingFilter.cxx:142 AliFMDSharingFilter.cxx:143 AliFMDSharingFilter.cxx:144 AliFMDSharingFilter.cxx:145 AliFMDSharingFilter.cxx:146 AliFMDSharingFilter.cxx:147 AliFMDSharingFilter.cxx:148 AliFMDSharingFilter.cxx:149 AliFMDSharingFilter.cxx:150 AliFMDSharingFilter.cxx:151 AliFMDSharingFilter.cxx:152 AliFMDSharingFilter.cxx:153 AliFMDSharingFilter.cxx:154 AliFMDSharingFilter.cxx:155 AliFMDSharingFilter.cxx:156 AliFMDSharingFilter.cxx:157 AliFMDSharingFilter.cxx:158 AliFMDSharingFilter.cxx:159 AliFMDSharingFilter.cxx:160 AliFMDSharingFilter.cxx:161 AliFMDSharingFilter.cxx:162 AliFMDSharingFilter.cxx:163 AliFMDSharingFilter.cxx:164 AliFMDSharingFilter.cxx:165 AliFMDSharingFilter.cxx:166 AliFMDSharingFilter.cxx:167 AliFMDSharingFilter.cxx:168 AliFMDSharingFilter.cxx:169 AliFMDSharingFilter.cxx:170 AliFMDSharingFilter.cxx:171 AliFMDSharingFilter.cxx:172 AliFMDSharingFilter.cxx:173 AliFMDSharingFilter.cxx:174 AliFMDSharingFilter.cxx:175 AliFMDSharingFilter.cxx:176 AliFMDSharingFilter.cxx:177 AliFMDSharingFilter.cxx:178 AliFMDSharingFilter.cxx:179 AliFMDSharingFilter.cxx:180 AliFMDSharingFilter.cxx:181 AliFMDSharingFilter.cxx:182 AliFMDSharingFilter.cxx:183 AliFMDSharingFilter.cxx:184 AliFMDSharingFilter.cxx:185 AliFMDSharingFilter.cxx:186 AliFMDSharingFilter.cxx:187 AliFMDSharingFilter.cxx:188 AliFMDSharingFilter.cxx:189 AliFMDSharingFilter.cxx:190 AliFMDSharingFilter.cxx:191 AliFMDSharingFilter.cxx:192 AliFMDSharingFilter.cxx:193 AliFMDSharingFilter.cxx:194 AliFMDSharingFilter.cxx:195 AliFMDSharingFilter.cxx:196 AliFMDSharingFilter.cxx:197 AliFMDSharingFilter.cxx:198 AliFMDSharingFilter.cxx:199 AliFMDSharingFilter.cxx:200 AliFMDSharingFilter.cxx:201 AliFMDSharingFilter.cxx:202 AliFMDSharingFilter.cxx:203 AliFMDSharingFilter.cxx:204 AliFMDSharingFilter.cxx:205 AliFMDSharingFilter.cxx:206 AliFMDSharingFilter.cxx:207 AliFMDSharingFilter.cxx:208 AliFMDSharingFilter.cxx:209 AliFMDSharingFilter.cxx:210 AliFMDSharingFilter.cxx:211 AliFMDSharingFilter.cxx:212 AliFMDSharingFilter.cxx:213 AliFMDSharingFilter.cxx:214 AliFMDSharingFilter.cxx:215 AliFMDSharingFilter.cxx:216 AliFMDSharingFilter.cxx:217 AliFMDSharingFilter.cxx:218 AliFMDSharingFilter.cxx:219 AliFMDSharingFilter.cxx:220 AliFMDSharingFilter.cxx:221 AliFMDSharingFilter.cxx:222 AliFMDSharingFilter.cxx:223 AliFMDSharingFilter.cxx:224 AliFMDSharingFilter.cxx:225 AliFMDSharingFilter.cxx:226 AliFMDSharingFilter.cxx:227 AliFMDSharingFilter.cxx:228 AliFMDSharingFilter.cxx:229 AliFMDSharingFilter.cxx:230 AliFMDSharingFilter.cxx:231 AliFMDSharingFilter.cxx:232 AliFMDSharingFilter.cxx:233 AliFMDSharingFilter.cxx:234 AliFMDSharingFilter.cxx:235 AliFMDSharingFilter.cxx:236 AliFMDSharingFilter.cxx:237 AliFMDSharingFilter.cxx:238 AliFMDSharingFilter.cxx:239 AliFMDSharingFilter.cxx:240 AliFMDSharingFilter.cxx:241 AliFMDSharingFilter.cxx:242 AliFMDSharingFilter.cxx:243 AliFMDSharingFilter.cxx:244 AliFMDSharingFilter.cxx:245 AliFMDSharingFilter.cxx:246 AliFMDSharingFilter.cxx:247 AliFMDSharingFilter.cxx:248 AliFMDSharingFilter.cxx:249 AliFMDSharingFilter.cxx:250 AliFMDSharingFilter.cxx:251 AliFMDSharingFilter.cxx:252 AliFMDSharingFilter.cxx:253 AliFMDSharingFilter.cxx:254 AliFMDSharingFilter.cxx:255 AliFMDSharingFilter.cxx:256 AliFMDSharingFilter.cxx:257 AliFMDSharingFilter.cxx:258 AliFMDSharingFilter.cxx:259 AliFMDSharingFilter.cxx:260 AliFMDSharingFilter.cxx:261 AliFMDSharingFilter.cxx:262 AliFMDSharingFilter.cxx:263 AliFMDSharingFilter.cxx:264 AliFMDSharingFilter.cxx:265 AliFMDSharingFilter.cxx:266 AliFMDSharingFilter.cxx:267 AliFMDSharingFilter.cxx:268 AliFMDSharingFilter.cxx:269 AliFMDSharingFilter.cxx:270 AliFMDSharingFilter.cxx:271 AliFMDSharingFilter.cxx:272 AliFMDSharingFilter.cxx:273 AliFMDSharingFilter.cxx:274 AliFMDSharingFilter.cxx:275 AliFMDSharingFilter.cxx:276 AliFMDSharingFilter.cxx:277 AliFMDSharingFilter.cxx:278 AliFMDSharingFilter.cxx:279 AliFMDSharingFilter.cxx:280 AliFMDSharingFilter.cxx:281 AliFMDSharingFilter.cxx:282 AliFMDSharingFilter.cxx:283 AliFMDSharingFilter.cxx:284 AliFMDSharingFilter.cxx:285 AliFMDSharingFilter.cxx:286 AliFMDSharingFilter.cxx:287 AliFMDSharingFilter.cxx:288 AliFMDSharingFilter.cxx:289 AliFMDSharingFilter.cxx:290 AliFMDSharingFilter.cxx:291 AliFMDSharingFilter.cxx:292 AliFMDSharingFilter.cxx:293 AliFMDSharingFilter.cxx:294 AliFMDSharingFilter.cxx:295 AliFMDSharingFilter.cxx:296 AliFMDSharingFilter.cxx:297 AliFMDSharingFilter.cxx:298 AliFMDSharingFilter.cxx:299 AliFMDSharingFilter.cxx:300 AliFMDSharingFilter.cxx:301 AliFMDSharingFilter.cxx:302 AliFMDSharingFilter.cxx:303 AliFMDSharingFilter.cxx:304 AliFMDSharingFilter.cxx:305 AliFMDSharingFilter.cxx:306 AliFMDSharingFilter.cxx:307 AliFMDSharingFilter.cxx:308 AliFMDSharingFilter.cxx:309 AliFMDSharingFilter.cxx:310 AliFMDSharingFilter.cxx:311 AliFMDSharingFilter.cxx:312 AliFMDSharingFilter.cxx:313 AliFMDSharingFilter.cxx:314 AliFMDSharingFilter.cxx:315 AliFMDSharingFilter.cxx:316 AliFMDSharingFilter.cxx:317 AliFMDSharingFilter.cxx:318 AliFMDSharingFilter.cxx:319 AliFMDSharingFilter.cxx:320 AliFMDSharingFilter.cxx:321 AliFMDSharingFilter.cxx:322 AliFMDSharingFilter.cxx:323 AliFMDSharingFilter.cxx:324 AliFMDSharingFilter.cxx:325 AliFMDSharingFilter.cxx:326 AliFMDSharingFilter.cxx:327 AliFMDSharingFilter.cxx:328 AliFMDSharingFilter.cxx:329 AliFMDSharingFilter.cxx:330 AliFMDSharingFilter.cxx:331 AliFMDSharingFilter.cxx:332 AliFMDSharingFilter.cxx:333 AliFMDSharingFilter.cxx:334 AliFMDSharingFilter.cxx:335 AliFMDSharingFilter.cxx:336 AliFMDSharingFilter.cxx:337 AliFMDSharingFilter.cxx:338 AliFMDSharingFilter.cxx:339 AliFMDSharingFilter.cxx:340 AliFMDSharingFilter.cxx:341 AliFMDSharingFilter.cxx:342 AliFMDSharingFilter.cxx:343 AliFMDSharingFilter.cxx:344 AliFMDSharingFilter.cxx:345 AliFMDSharingFilter.cxx:346 AliFMDSharingFilter.cxx:347 AliFMDSharingFilter.cxx:348 AliFMDSharingFilter.cxx:349 AliFMDSharingFilter.cxx:350 AliFMDSharingFilter.cxx:351 AliFMDSharingFilter.cxx:352 AliFMDSharingFilter.cxx:353 AliFMDSharingFilter.cxx:354 AliFMDSharingFilter.cxx:355 AliFMDSharingFilter.cxx:356 AliFMDSharingFilter.cxx:357 AliFMDSharingFilter.cxx:358 AliFMDSharingFilter.cxx:359 AliFMDSharingFilter.cxx:360 AliFMDSharingFilter.cxx:361 AliFMDSharingFilter.cxx:362 AliFMDSharingFilter.cxx:363 AliFMDSharingFilter.cxx:364 AliFMDSharingFilter.cxx:365 AliFMDSharingFilter.cxx:366 AliFMDSharingFilter.cxx:367 AliFMDSharingFilter.cxx:368 AliFMDSharingFilter.cxx:369 AliFMDSharingFilter.cxx:370 AliFMDSharingFilter.cxx:371 AliFMDSharingFilter.cxx:372 AliFMDSharingFilter.cxx:373 AliFMDSharingFilter.cxx:374 AliFMDSharingFilter.cxx:375 AliFMDSharingFilter.cxx:376 AliFMDSharingFilter.cxx:377 AliFMDSharingFilter.cxx:378 AliFMDSharingFilter.cxx:379 AliFMDSharingFilter.cxx:380 AliFMDSharingFilter.cxx:381 AliFMDSharingFilter.cxx:382 AliFMDSharingFilter.cxx:383 AliFMDSharingFilter.cxx:384 AliFMDSharingFilter.cxx:385 AliFMDSharingFilter.cxx:386 AliFMDSharingFilter.cxx:387 AliFMDSharingFilter.cxx:388 AliFMDSharingFilter.cxx:389 AliFMDSharingFilter.cxx:390 AliFMDSharingFilter.cxx:391 AliFMDSharingFilter.cxx:392 AliFMDSharingFilter.cxx:393 AliFMDSharingFilter.cxx:394 AliFMDSharingFilter.cxx:395 AliFMDSharingFilter.cxx:396 AliFMDSharingFilter.cxx:397 AliFMDSharingFilter.cxx:398 AliFMDSharingFilter.cxx:399 AliFMDSharingFilter.cxx:400 AliFMDSharingFilter.cxx:401 AliFMDSharingFilter.cxx:402 AliFMDSharingFilter.cxx:403 AliFMDSharingFilter.cxx:404 AliFMDSharingFilter.cxx:405 AliFMDSharingFilter.cxx:406 AliFMDSharingFilter.cxx:407 AliFMDSharingFilter.cxx:408 AliFMDSharingFilter.cxx:409 AliFMDSharingFilter.cxx:410 AliFMDSharingFilter.cxx:411 AliFMDSharingFilter.cxx:412 AliFMDSharingFilter.cxx:413 AliFMDSharingFilter.cxx:414 AliFMDSharingFilter.cxx:415 AliFMDSharingFilter.cxx:416 AliFMDSharingFilter.cxx:417 AliFMDSharingFilter.cxx:418 AliFMDSharingFilter.cxx:419 AliFMDSharingFilter.cxx:420 AliFMDSharingFilter.cxx:421 AliFMDSharingFilter.cxx:422 AliFMDSharingFilter.cxx:423 AliFMDSharingFilter.cxx:424 AliFMDSharingFilter.cxx:425 AliFMDSharingFilter.cxx:426 AliFMDSharingFilter.cxx:427 AliFMDSharingFilter.cxx:428 AliFMDSharingFilter.cxx:429 AliFMDSharingFilter.cxx:430 AliFMDSharingFilter.cxx:431 AliFMDSharingFilter.cxx:432 AliFMDSharingFilter.cxx:433 AliFMDSharingFilter.cxx:434 AliFMDSharingFilter.cxx:435 AliFMDSharingFilter.cxx:436 AliFMDSharingFilter.cxx:437 AliFMDSharingFilter.cxx:438 AliFMDSharingFilter.cxx:439 AliFMDSharingFilter.cxx:440 AliFMDSharingFilter.cxx:441 AliFMDSharingFilter.cxx:442 AliFMDSharingFilter.cxx:443 AliFMDSharingFilter.cxx:444 AliFMDSharingFilter.cxx:445 AliFMDSharingFilter.cxx:446 AliFMDSharingFilter.cxx:447 AliFMDSharingFilter.cxx:448 AliFMDSharingFilter.cxx:449 AliFMDSharingFilter.cxx:450 AliFMDSharingFilter.cxx:451 AliFMDSharingFilter.cxx:452 AliFMDSharingFilter.cxx:453 AliFMDSharingFilter.cxx:454 AliFMDSharingFilter.cxx:455 AliFMDSharingFilter.cxx:456 AliFMDSharingFilter.cxx:457 AliFMDSharingFilter.cxx:458 AliFMDSharingFilter.cxx:459 AliFMDSharingFilter.cxx:460 AliFMDSharingFilter.cxx:461 AliFMDSharingFilter.cxx:462 AliFMDSharingFilter.cxx:463 AliFMDSharingFilter.cxx:464 AliFMDSharingFilter.cxx:465 AliFMDSharingFilter.cxx:466 AliFMDSharingFilter.cxx:467 AliFMDSharingFilter.cxx:468 AliFMDSharingFilter.cxx:469 AliFMDSharingFilter.cxx:470 AliFMDSharingFilter.cxx:471 AliFMDSharingFilter.cxx:472 AliFMDSharingFilter.cxx:473 AliFMDSharingFilter.cxx:474 AliFMDSharingFilter.cxx:475 AliFMDSharingFilter.cxx:476 AliFMDSharingFilter.cxx:477 AliFMDSharingFilter.cxx:478 AliFMDSharingFilter.cxx:479 AliFMDSharingFilter.cxx:480 AliFMDSharingFilter.cxx:481 AliFMDSharingFilter.cxx:482 AliFMDSharingFilter.cxx:483 AliFMDSharingFilter.cxx:484 AliFMDSharingFilter.cxx:485 AliFMDSharingFilter.cxx:486 AliFMDSharingFilter.cxx:487 AliFMDSharingFilter.cxx:488 AliFMDSharingFilter.cxx:489 AliFMDSharingFilter.cxx:490 AliFMDSharingFilter.cxx:491 AliFMDSharingFilter.cxx:492 AliFMDSharingFilter.cxx:493 AliFMDSharingFilter.cxx:494 AliFMDSharingFilter.cxx:495 AliFMDSharingFilter.cxx:496 AliFMDSharingFilter.cxx:497 AliFMDSharingFilter.cxx:498 AliFMDSharingFilter.cxx:499 AliFMDSharingFilter.cxx:500 AliFMDSharingFilter.cxx:501 AliFMDSharingFilter.cxx:502 AliFMDSharingFilter.cxx:503 AliFMDSharingFilter.cxx:504 AliFMDSharingFilter.cxx:505 AliFMDSharingFilter.cxx:506 AliFMDSharingFilter.cxx:507 AliFMDSharingFilter.cxx:508 AliFMDSharingFilter.cxx:509 AliFMDSharingFilter.cxx:510 AliFMDSharingFilter.cxx:511 AliFMDSharingFilter.cxx:512 AliFMDSharingFilter.cxx:513 AliFMDSharingFilter.cxx:514 AliFMDSharingFilter.cxx:515 AliFMDSharingFilter.cxx:516 AliFMDSharingFilter.cxx:517 AliFMDSharingFilter.cxx:518 AliFMDSharingFilter.cxx:519 AliFMDSharingFilter.cxx:520 AliFMDSharingFilter.cxx:521 AliFMDSharingFilter.cxx:522 AliFMDSharingFilter.cxx:523 AliFMDSharingFilter.cxx:524 AliFMDSharingFilter.cxx:525 AliFMDSharingFilter.cxx:526 AliFMDSharingFilter.cxx:527 AliFMDSharingFilter.cxx:528 AliFMDSharingFilter.cxx:529 AliFMDSharingFilter.cxx:530 AliFMDSharingFilter.cxx:531 AliFMDSharingFilter.cxx:532 AliFMDSharingFilter.cxx:533 AliFMDSharingFilter.cxx:534 AliFMDSharingFilter.cxx:535 AliFMDSharingFilter.cxx:536 AliFMDSharingFilter.cxx:537 AliFMDSharingFilter.cxx:538 AliFMDSharingFilter.cxx:539 AliFMDSharingFilter.cxx:540 AliFMDSharingFilter.cxx:541 AliFMDSharingFilter.cxx:542 AliFMDSharingFilter.cxx:543 AliFMDSharingFilter.cxx:544 AliFMDSharingFilter.cxx:545 AliFMDSharingFilter.cxx:546 AliFMDSharingFilter.cxx:547 AliFMDSharingFilter.cxx:548 AliFMDSharingFilter.cxx:549 AliFMDSharingFilter.cxx:550 AliFMDSharingFilter.cxx:551 AliFMDSharingFilter.cxx:552 AliFMDSharingFilter.cxx:553 AliFMDSharingFilter.cxx:554 AliFMDSharingFilter.cxx:555 AliFMDSharingFilter.cxx:556 AliFMDSharingFilter.cxx:557 AliFMDSharingFilter.cxx:558 AliFMDSharingFilter.cxx:559 AliFMDSharingFilter.cxx:560 AliFMDSharingFilter.cxx:561 AliFMDSharingFilter.cxx:562 AliFMDSharingFilter.cxx:563 AliFMDSharingFilter.cxx:564 AliFMDSharingFilter.cxx:565 AliFMDSharingFilter.cxx:566 AliFMDSharingFilter.cxx:567 AliFMDSharingFilter.cxx:568 AliFMDSharingFilter.cxx:569 AliFMDSharingFilter.cxx:570 AliFMDSharingFilter.cxx:571 AliFMDSharingFilter.cxx:572 AliFMDSharingFilter.cxx:573 AliFMDSharingFilter.cxx:574 AliFMDSharingFilter.cxx:575 AliFMDSharingFilter.cxx:576 AliFMDSharingFilter.cxx:577 AliFMDSharingFilter.cxx:578 AliFMDSharingFilter.cxx:579 AliFMDSharingFilter.cxx:580 AliFMDSharingFilter.cxx:581 AliFMDSharingFilter.cxx:582 AliFMDSharingFilter.cxx:583 AliFMDSharingFilter.cxx:584 AliFMDSharingFilter.cxx:585 AliFMDSharingFilter.cxx:586 AliFMDSharingFilter.cxx:587 AliFMDSharingFilter.cxx:588 AliFMDSharingFilter.cxx:589 AliFMDSharingFilter.cxx:590 AliFMDSharingFilter.cxx:591 AliFMDSharingFilter.cxx:592 AliFMDSharingFilter.cxx:593 AliFMDSharingFilter.cxx:594 AliFMDSharingFilter.cxx:595 AliFMDSharingFilter.cxx:596 AliFMDSharingFilter.cxx:597 AliFMDSharingFilter.cxx:598 AliFMDSharingFilter.cxx:599 AliFMDSharingFilter.cxx:600 AliFMDSharingFilter.cxx:601 AliFMDSharingFilter.cxx:602 AliFMDSharingFilter.cxx:603 AliFMDSharingFilter.cxx:604 AliFMDSharingFilter.cxx:605 AliFMDSharingFilter.cxx:606 AliFMDSharingFilter.cxx:607 AliFMDSharingFilter.cxx:608 AliFMDSharingFilter.cxx:609 AliFMDSharingFilter.cxx:610 AliFMDSharingFilter.cxx:611 AliFMDSharingFilter.cxx:612 AliFMDSharingFilter.cxx:613 AliFMDSharingFilter.cxx:614 AliFMDSharingFilter.cxx:615 AliFMDSharingFilter.cxx:616 AliFMDSharingFilter.cxx:617 AliFMDSharingFilter.cxx:618 AliFMDSharingFilter.cxx:619 AliFMDSharingFilter.cxx:620 AliFMDSharingFilter.cxx:621 AliFMDSharingFilter.cxx:622 AliFMDSharingFilter.cxx:623 AliFMDSharingFilter.cxx:624 AliFMDSharingFilter.cxx:625 AliFMDSharingFilter.cxx:626 AliFMDSharingFilter.cxx:627 AliFMDSharingFilter.cxx:628 AliFMDSharingFilter.cxx:629 AliFMDSharingFilter.cxx:630 AliFMDSharingFilter.cxx:631 AliFMDSharingFilter.cxx:632 AliFMDSharingFilter.cxx:633 AliFMDSharingFilter.cxx:634 AliFMDSharingFilter.cxx:635 AliFMDSharingFilter.cxx:636 AliFMDSharingFilter.cxx:637 AliFMDSharingFilter.cxx:638 AliFMDSharingFilter.cxx:639 AliFMDSharingFilter.cxx:640 AliFMDSharingFilter.cxx:641 AliFMDSharingFilter.cxx:642 AliFMDSharingFilter.cxx:643 AliFMDSharingFilter.cxx:644 AliFMDSharingFilter.cxx:645 AliFMDSharingFilter.cxx:646 AliFMDSharingFilter.cxx:647 AliFMDSharingFilter.cxx:648 AliFMDSharingFilter.cxx:649 AliFMDSharingFilter.cxx:650 AliFMDSharingFilter.cxx:651 AliFMDSharingFilter.cxx:652 AliFMDSharingFilter.cxx:653 AliFMDSharingFilter.cxx:654 AliFMDSharingFilter.cxx:655 AliFMDSharingFilter.cxx:656 AliFMDSharingFilter.cxx:657 AliFMDSharingFilter.cxx:658 AliFMDSharingFilter.cxx:659 AliFMDSharingFilter.cxx:660 AliFMDSharingFilter.cxx:661 AliFMDSharingFilter.cxx:662 AliFMDSharingFilter.cxx:663 AliFMDSharingFilter.cxx:664 AliFMDSharingFilter.cxx:665 AliFMDSharingFilter.cxx:666 AliFMDSharingFilter.cxx:667 AliFMDSharingFilter.cxx:668 AliFMDSharingFilter.cxx:669 AliFMDSharingFilter.cxx:670 AliFMDSharingFilter.cxx:671 AliFMDSharingFilter.cxx:672 AliFMDSharingFilter.cxx:673 AliFMDSharingFilter.cxx:674 AliFMDSharingFilter.cxx:675 AliFMDSharingFilter.cxx:676 AliFMDSharingFilter.cxx:677 AliFMDSharingFilter.cxx:678 AliFMDSharingFilter.cxx:679 AliFMDSharingFilter.cxx:680 AliFMDSharingFilter.cxx:681 AliFMDSharingFilter.cxx:682 AliFMDSharingFilter.cxx:683 AliFMDSharingFilter.cxx:684 AliFMDSharingFilter.cxx:685 AliFMDSharingFilter.cxx:686 AliFMDSharingFilter.cxx:687 AliFMDSharingFilter.cxx:688 AliFMDSharingFilter.cxx:689 AliFMDSharingFilter.cxx:690 AliFMDSharingFilter.cxx:691 AliFMDSharingFilter.cxx:692 AliFMDSharingFilter.cxx:693 AliFMDSharingFilter.cxx:694 AliFMDSharingFilter.cxx:695 AliFMDSharingFilter.cxx:696 AliFMDSharingFilter.cxx:697 AliFMDSharingFilter.cxx:698 AliFMDSharingFilter.cxx:699 AliFMDSharingFilter.cxx:700 AliFMDSharingFilter.cxx:701 AliFMDSharingFilter.cxx:702 AliFMDSharingFilter.cxx:703 AliFMDSharingFilter.cxx:704 AliFMDSharingFilter.cxx:705 AliFMDSharingFilter.cxx:706 AliFMDSharingFilter.cxx:707 AliFMDSharingFilter.cxx:708 AliFMDSharingFilter.cxx:709 AliFMDSharingFilter.cxx:710 AliFMDSharingFilter.cxx:711 AliFMDSharingFilter.cxx:712 AliFMDSharingFilter.cxx:713 AliFMDSharingFilter.cxx:714 AliFMDSharingFilter.cxx:715 AliFMDSharingFilter.cxx:716 AliFMDSharingFilter.cxx:717 AliFMDSharingFilter.cxx:718 AliFMDSharingFilter.cxx:719 AliFMDSharingFilter.cxx:720 AliFMDSharingFilter.cxx:721 AliFMDSharingFilter.cxx:722 AliFMDSharingFilter.cxx:723 AliFMDSharingFilter.cxx:724 AliFMDSharingFilter.cxx:725 AliFMDSharingFilter.cxx:726 AliFMDSharingFilter.cxx:727 AliFMDSharingFilter.cxx:728 AliFMDSharingFilter.cxx:729 AliFMDSharingFilter.cxx:730 AliFMDSharingFilter.cxx:731 AliFMDSharingFilter.cxx:732 AliFMDSharingFilter.cxx:733 AliFMDSharingFilter.cxx:734 AliFMDSharingFilter.cxx:735 AliFMDSharingFilter.cxx:736 AliFMDSharingFilter.cxx:737 AliFMDSharingFilter.cxx:738 AliFMDSharingFilter.cxx:739 AliFMDSharingFilter.cxx:740 AliFMDSharingFilter.cxx:741 AliFMDSharingFilter.cxx:742 AliFMDSharingFilter.cxx:743 AliFMDSharingFilter.cxx:744 AliFMDSharingFilter.cxx:745 AliFMDSharingFilter.cxx:746 AliFMDSharingFilter.cxx:747 AliFMDSharingFilter.cxx:748 AliFMDSharingFilter.cxx:749 AliFMDSharingFilter.cxx:750 AliFMDSharingFilter.cxx:751 AliFMDSharingFilter.cxx:752 AliFMDSharingFilter.cxx:753 AliFMDSharingFilter.cxx:754 AliFMDSharingFilter.cxx:755 AliFMDSharingFilter.cxx:756 AliFMDSharingFilter.cxx:757 AliFMDSharingFilter.cxx:758 AliFMDSharingFilter.cxx:759 AliFMDSharingFilter.cxx:760 AliFMDSharingFilter.cxx:761 AliFMDSharingFilter.cxx:762 AliFMDSharingFilter.cxx:763 AliFMDSharingFilter.cxx:764 AliFMDSharingFilter.cxx:765 AliFMDSharingFilter.cxx:766 AliFMDSharingFilter.cxx:767 AliFMDSharingFilter.cxx:768 AliFMDSharingFilter.cxx:769 AliFMDSharingFilter.cxx:770 AliFMDSharingFilter.cxx:771 AliFMDSharingFilter.cxx:772 AliFMDSharingFilter.cxx:773 AliFMDSharingFilter.cxx:774 AliFMDSharingFilter.cxx:775 AliFMDSharingFilter.cxx:776 AliFMDSharingFilter.cxx:777 AliFMDSharingFilter.cxx:778 AliFMDSharingFilter.cxx:779 AliFMDSharingFilter.cxx:780 AliFMDSharingFilter.cxx:781 AliFMDSharingFilter.cxx:782 AliFMDSharingFilter.cxx:783 AliFMDSharingFilter.cxx:784 AliFMDSharingFilter.cxx:785 AliFMDSharingFilter.cxx:786 AliFMDSharingFilter.cxx:787 AliFMDSharingFilter.cxx:788 AliFMDSharingFilter.cxx:789 AliFMDSharingFilter.cxx:790 AliFMDSharingFilter.cxx:791 AliFMDSharingFilter.cxx:792 AliFMDSharingFilter.cxx:793 AliFMDSharingFilter.cxx:794 AliFMDSharingFilter.cxx:795 AliFMDSharingFilter.cxx:796 AliFMDSharingFilter.cxx:797 AliFMDSharingFilter.cxx:798 AliFMDSharingFilter.cxx:799 AliFMDSharingFilter.cxx:800 AliFMDSharingFilter.cxx:801 AliFMDSharingFilter.cxx:802 AliFMDSharingFilter.cxx:803 AliFMDSharingFilter.cxx:804 AliFMDSharingFilter.cxx:805 AliFMDSharingFilter.cxx:806 AliFMDSharingFilter.cxx:807 AliFMDSharingFilter.cxx:808 AliFMDSharingFilter.cxx:809 AliFMDSharingFilter.cxx:810 AliFMDSharingFilter.cxx:811 AliFMDSharingFilter.cxx:812 AliFMDSharingFilter.cxx:813 AliFMDSharingFilter.cxx:814 AliFMDSharingFilter.cxx:815 AliFMDSharingFilter.cxx:816 AliFMDSharingFilter.cxx:817 AliFMDSharingFilter.cxx:818 AliFMDSharingFilter.cxx:819 AliFMDSharingFilter.cxx:820 AliFMDSharingFilter.cxx:821 AliFMDSharingFilter.cxx:822 AliFMDSharingFilter.cxx:823 AliFMDSharingFilter.cxx:824 AliFMDSharingFilter.cxx:825 AliFMDSharingFilter.cxx:826 AliFMDSharingFilter.cxx:827 AliFMDSharingFilter.cxx:828 AliFMDSharingFilter.cxx:829 AliFMDSharingFilter.cxx:830 AliFMDSharingFilter.cxx:831 AliFMDSharingFilter.cxx:832 AliFMDSharingFilter.cxx:833 AliFMDSharingFilter.cxx:834 AliFMDSharingFilter.cxx:835 AliFMDSharingFilter.cxx:836 AliFMDSharingFilter.cxx:837 AliFMDSharingFilter.cxx:838 AliFMDSharingFilter.cxx:839 AliFMDSharingFilter.cxx:840 AliFMDSharingFilter.cxx:841 AliFMDSharingFilter.cxx:842 AliFMDSharingFilter.cxx:843 AliFMDSharingFilter.cxx:844 AliFMDSharingFilter.cxx:845 AliFMDSharingFilter.cxx:846 AliFMDSharingFilter.cxx:847 AliFMDSharingFilter.cxx:848 AliFMDSharingFilter.cxx:849 AliFMDSharingFilter.cxx:850 AliFMDSharingFilter.cxx:851 AliFMDSharingFilter.cxx:852 AliFMDSharingFilter.cxx:853 AliFMDSharingFilter.cxx:854 AliFMDSharingFilter.cxx:855 AliFMDSharingFilter.cxx:856 AliFMDSharingFilter.cxx:857 AliFMDSharingFilter.cxx:858 AliFMDSharingFilter.cxx:859 AliFMDSharingFilter.cxx:860 AliFMDSharingFilter.cxx:861 AliFMDSharingFilter.cxx:862 AliFMDSharingFilter.cxx:863 AliFMDSharingFilter.cxx:864 AliFMDSharingFilter.cxx:865 AliFMDSharingFilter.cxx:866 AliFMDSharingFilter.cxx:867 AliFMDSharingFilter.cxx:868 AliFMDSharingFilter.cxx:869 AliFMDSharingFilter.cxx:870 AliFMDSharingFilter.cxx:871 AliFMDSharingFilter.cxx:872 AliFMDSharingFilter.cxx:873 AliFMDSharingFilter.cxx:874 AliFMDSharingFilter.cxx:875 AliFMDSharingFilter.cxx:876 AliFMDSharingFilter.cxx:877 AliFMDSharingFilter.cxx:878 AliFMDSharingFilter.cxx:879 AliFMDSharingFilter.cxx:880 AliFMDSharingFilter.cxx:881 AliFMDSharingFilter.cxx:882 AliFMDSharingFilter.cxx:883 AliFMDSharingFilter.cxx:884 AliFMDSharingFilter.cxx:885 AliFMDSharingFilter.cxx:886 AliFMDSharingFilter.cxx:887 AliFMDSharingFilter.cxx:888 AliFMDSharingFilter.cxx:889 AliFMDSharingFilter.cxx:890 AliFMDSharingFilter.cxx:891 AliFMDSharingFilter.cxx:892 AliFMDSharingFilter.cxx:893 AliFMDSharingFilter.cxx:894 AliFMDSharingFilter.cxx:895 AliFMDSharingFilter.cxx:896 AliFMDSharingFilter.cxx:897 AliFMDSharingFilter.cxx:898 AliFMDSharingFilter.cxx:899 AliFMDSharingFilter.cxx:900 AliFMDSharingFilter.cxx:901 AliFMDSharingFilter.cxx:902 AliFMDSharingFilter.cxx:903 AliFMDSharingFilter.cxx:904 AliFMDSharingFilter.cxx:905 AliFMDSharingFilter.cxx:906 AliFMDSharingFilter.cxx:907 AliFMDSharingFilter.cxx:908 AliFMDSharingFilter.cxx:909 AliFMDSharingFilter.cxx:910 AliFMDSharingFilter.cxx:911 AliFMDSharingFilter.cxx:912 AliFMDSharingFilter.cxx:913 AliFMDSharingFilter.cxx:914 AliFMDSharingFilter.cxx:915 AliFMDSharingFilter.cxx:916 AliFMDSharingFilter.cxx:917 AliFMDSharingFilter.cxx:918 AliFMDSharingFilter.cxx:919 AliFMDSharingFilter.cxx:920 AliFMDSharingFilter.cxx:921 AliFMDSharingFilter.cxx:922 AliFMDSharingFilter.cxx:923 AliFMDSharingFilter.cxx:924 AliFMDSharingFilter.cxx:925 AliFMDSharingFilter.cxx:926 AliFMDSharingFilter.cxx:927 AliFMDSharingFilter.cxx:928 AliFMDSharingFilter.cxx:929 AliFMDSharingFilter.cxx:930 AliFMDSharingFilter.cxx:931 AliFMDSharingFilter.cxx:932 AliFMDSharingFilter.cxx:933 AliFMDSharingFilter.cxx:934 AliFMDSharingFilter.cxx:935 AliFMDSharingFilter.cxx:936 AliFMDSharingFilter.cxx:937 AliFMDSharingFilter.cxx:938 AliFMDSharingFilter.cxx:939 AliFMDSharingFilter.cxx:940 AliFMDSharingFilter.cxx:941 AliFMDSharingFilter.cxx:942 AliFMDSharingFilter.cxx:943 AliFMDSharingFilter.cxx:944 AliFMDSharingFilter.cxx:945 AliFMDSharingFilter.cxx:946 AliFMDSharingFilter.cxx:947 AliFMDSharingFilter.cxx:948 AliFMDSharingFilter.cxx:949 AliFMDSharingFilter.cxx:950 AliFMDSharingFilter.cxx:951 AliFMDSharingFilter.cxx:952 AliFMDSharingFilter.cxx:953 AliFMDSharingFilter.cxx:954 AliFMDSharingFilter.cxx:955 AliFMDSharingFilter.cxx:956 AliFMDSharingFilter.cxx:957 AliFMDSharingFilter.cxx:958 AliFMDSharingFilter.cxx:959 AliFMDSharingFilter.cxx:960 AliFMDSharingFilter.cxx:961 AliFMDSharingFilter.cxx:962 AliFMDSharingFilter.cxx:963 AliFMDSharingFilter.cxx:964 AliFMDSharingFilter.cxx:965 AliFMDSharingFilter.cxx:966 AliFMDSharingFilter.cxx:967 AliFMDSharingFilter.cxx:968 AliFMDSharingFilter.cxx:969 AliFMDSharingFilter.cxx:970 AliFMDSharingFilter.cxx:971 AliFMDSharingFilter.cxx:972 AliFMDSharingFilter.cxx:973 AliFMDSharingFilter.cxx:974 AliFMDSharingFilter.cxx:975 AliFMDSharingFilter.cxx:976 AliFMDSharingFilter.cxx:977 AliFMDSharingFilter.cxx:978 AliFMDSharingFilter.cxx:979 AliFMDSharingFilter.cxx:980 AliFMDSharingFilter.cxx:981 AliFMDSharingFilter.cxx:982 AliFMDSharingFilter.cxx:983 AliFMDSharingFilter.cxx:984 AliFMDSharingFilter.cxx:985 AliFMDSharingFilter.cxx:986 AliFMDSharingFilter.cxx:987 AliFMDSharingFilter.cxx:988 AliFMDSharingFilter.cxx:989 AliFMDSharingFilter.cxx:990 AliFMDSharingFilter.cxx:991 AliFMDSharingFilter.cxx:992 AliFMDSharingFilter.cxx:993 AliFMDSharingFilter.cxx:994 AliFMDSharingFilter.cxx:995 AliFMDSharingFilter.cxx:996 AliFMDSharingFilter.cxx:997 AliFMDSharingFilter.cxx:998 AliFMDSharingFilter.cxx:999 AliFMDSharingFilter.cxx:1000 AliFMDSharingFilter.cxx:1001 AliFMDSharingFilter.cxx:1002 AliFMDSharingFilter.cxx:1003 AliFMDSharingFilter.cxx:1004 AliFMDSharingFilter.cxx:1005 AliFMDSharingFilter.cxx:1006 AliFMDSharingFilter.cxx:1007 AliFMDSharingFilter.cxx:1008 AliFMDSharingFilter.cxx:1009 AliFMDSharingFilter.cxx:1010 AliFMDSharingFilter.cxx:1011 AliFMDSharingFilter.cxx:1012 AliFMDSharingFilter.cxx:1013 AliFMDSharingFilter.cxx:1014 AliFMDSharingFilter.cxx:1015 AliFMDSharingFilter.cxx:1016 AliFMDSharingFilter.cxx:1017 AliFMDSharingFilter.cxx:1018 AliFMDSharingFilter.cxx:1019 AliFMDSharingFilter.cxx:1020 AliFMDSharingFilter.cxx:1021 AliFMDSharingFilter.cxx:1022 AliFMDSharingFilter.cxx:1023 AliFMDSharingFilter.cxx:1024 AliFMDSharingFilter.cxx:1025 AliFMDSharingFilter.cxx:1026 AliFMDSharingFilter.cxx:1027 AliFMDSharingFilter.cxx:1028 AliFMDSharingFilter.cxx:1029 AliFMDSharingFilter.cxx:1030 AliFMDSharingFilter.cxx:1031 AliFMDSharingFilter.cxx:1032 AliFMDSharingFilter.cxx:1033 AliFMDSharingFilter.cxx:1034 AliFMDSharingFilter.cxx:1035 AliFMDSharingFilter.cxx:1036 AliFMDSharingFilter.cxx:1037 AliFMDSharingFilter.cxx:1038 AliFMDSharingFilter.cxx:1039 AliFMDSharingFilter.cxx:1040 AliFMDSharingFilter.cxx:1041 AliFMDSharingFilter.cxx:1042 AliFMDSharingFilter.cxx:1043 AliFMDSharingFilter.cxx:1044 AliFMDSharingFilter.cxx:1045 AliFMDSharingFilter.cxx:1046 AliFMDSharingFilter.cxx:1047 AliFMDSharingFilter.cxx:1048 AliFMDSharingFilter.cxx:1049 AliFMDSharingFilter.cxx:1050 AliFMDSharingFilter.cxx:1051 AliFMDSharingFilter.cxx:1052 AliFMDSharingFilter.cxx:1053 AliFMDSharingFilter.cxx:1054 AliFMDSharingFilter.cxx:1055 AliFMDSharingFilter.cxx:1056 AliFMDSharingFilter.cxx:1057 AliFMDSharingFilter.cxx:1058 AliFMDSharingFilter.cxx:1059 AliFMDSharingFilter.cxx:1060 AliFMDSharingFilter.cxx:1061 AliFMDSharingFilter.cxx:1062 AliFMDSharingFilter.cxx:1063 AliFMDSharingFilter.cxx:1064 AliFMDSharingFilter.cxx:1065 AliFMDSharingFilter.cxx:1066 AliFMDSharingFilter.cxx:1067 AliFMDSharingFilter.cxx:1068 AliFMDSharingFilter.cxx:1069 AliFMDSharingFilter.cxx:1070 AliFMDSharingFilter.cxx:1071 AliFMDSharingFilter.cxx:1072 AliFMDSharingFilter.cxx:1073 AliFMDSharingFilter.cxx:1074 AliFMDSharingFilter.cxx:1075 AliFMDSharingFilter.cxx:1076 AliFMDSharingFilter.cxx:1077 AliFMDSharingFilter.cxx:1078 AliFMDSharingFilter.cxx:1079