+
/**************************************************************************
* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* *
#include "TH1D.h"
#include "TH2D.h"
#include "TFile.h"
-#include "TTree.h"
#include "TChain.h"
#include "AliESDEvent.h"
#include "AliESDtrack.h"
-#include "AliKalmanTrack.h"
//______________________________________________________________________________
fESD(0),
fOutputContainer(0)
{
- // Dummy default constructor
+ //
+ // Default constructor
+ //
+
}
+
//______________________________________________________________________________
-AliTRDqaEnergyDeposit:: AliTRDqaEnergyDeposit(AliTRDqaEnergyDeposit& /*trd*/)
+AliTRDqaEnergyDeposit:: AliTRDqaEnergyDeposit(const AliTRDqaEnergyDeposit & /*trd*/)
: AliAnalysisTask("",""),
fChain(0),
fESD(0),
fOutputContainer(0)
{
- // Dummy copy constructor
-
- //return *this;
+ //
+ // Copy constructor
+ //
+
}
//______________________________________________________________________________
fESD(0),
fOutputContainer(0)
{
+ //
// Constructor.
+ //
+
// Input slot #0 works with an Ntuple
DefineInput(0, TChain::Class());
// Output slot #0 writes into a TH1 container
DefineOutput(0, TObjArray::Class()) ;
+
}
//______________________________________________________________________________
for(Int_t j=0; j<AliPID::kSPECIES; j++) {
Int_t idx = AliPID::kSPECIES*i+j;
+
+ //
fSignalPtType[idx] =
new TH2D(Form("ptSig%s%d", charge[i], j), title, knbinsx, scalex, knbinsy, scaley);
fOutputContainer->AddAt(fSignalPtType[idx], c++);
+
+ //
+ fSignalPtPure[idx] =
+ new TH2D(Form("ptSigPure%s%d", charge[i], j), title, knbinsx, scalex, knbinsy, scaley);
+ fOutputContainer->AddAt(fSignalPtPure[idx], c++);
fProb[idx] = new TH1D(Form("prob%s%d", charge[i], j), ";LQ", 100, 0, 1);
fOutputContainer->AddAt(fProb[idx], c++);
printf("n hist = %d\n", c);
}
+
//______________________________________________________________________________
void AliTRDqaEnergyDeposit::Exec(Option_t *)
{
+ //
// Process one event
-
+ //
+
// Long64_t entry = fChain->GetReadEntry() ;
// Processing of one event
UInt_t status = track->GetStatus();
if (!(status & AliESDtrack::kTRDrefit)) continue;
if (!(status & AliESDtrack::kTRDpid)) continue;
- if (track->GetTRDpidQuality() < 6) continue;
+ if (track->GetTRDntrackletsPID() < 6) continue;
// standard selection
Double_t pt = paramOut->Pt();
Double_t signal = 0;
- for(Int_t i=0; i<6; i++)
- signal += track->GetTRDsignals(i, -1);
+ for(Int_t k=0; k<6; ++k)
+ signal += track->GetTRDslice(k, -1);
signal /= 6;
fSignalPtSum[idx]->Fill(pt, signal);
- for(Int_t i=0; i<AliPID::kSPECIES; i++) {
+ for(Int_t k=0; k<AliPID::kSPECIES; ++k) {
- Double_t lq = track->GetTRDpid(i);
- fProb[AliPID::kSPECIES*idx+i]->Fill(lq);
- fSignalPtType[AliPID::kSPECIES*idx+i]->Fill(pt, signal, lq);
+ Double_t lq = track->GetTRDpid(k);
+ fProb[AliPID::kSPECIES*idx+k]->Fill(lq);
+ if (lq > 0.8) fSignalPtType[AliPID::kSPECIES*idx+k]->Fill(pt, signal);
}
}
PostData(0, fOutputContainer);
}
+//______________________________________________________________________________
+void AliTRDqaEnergyDeposit::FillElectrons() const
+{
+ //
+ // Fill the electrons
+ //
+
+}
+
//______________________________________________________________________________
void AliTRDqaEnergyDeposit::Terminate(Option_t *)
{
- // retrieve histograms
+ //
+ // Retrieve histograms
+ //
+
fOutputContainer = (TObjArray*)GetOutputData(0);
// post processing