48 fNoCountHistoList(0x0),
58 const Char_t* listname)
62 fNoCountHistoList(0x0),
75 fCountHistoList(countHistoList),
76 fNoCountHistoList(0x0),
88 fCountHistoList(other.fCountHistoList),
89 fNoCountHistoList(other.fNoCountHistoList),
90 fFiredStrips(other.fFiredStrips)
94 for(Int_t chCath=0; chCath<
fgkNplanes; chCath++){
108 for(Int_t chCath=0; chCath<
fgkNplanes; chCath++){
150 for(Int_t chCath=0; chCath<
fgkNplanes; chCath++){
151 if ( deleteObjects ) {
165 TFile *file = TFile::Open(filename);
166 if(!file || !file->IsOpen()) {
167 AliError(Form(
"Can't read file %s",filename));
177 const Char_t* histoName;
179 TList* listInFile = 0x0;
180 TString listNameString(listname);
181 if ( ! listNameString.IsNull() )
182 listInFile = (TList*)file->FindObjectAny(listname);
190 for(Int_t hType=0; hType<
kNcounts; hType++){
192 histo = ( listInFile ) ? (TH1F*)listInFile->FindObject(histoName) : (TH1F*)file->Get(histoName);
194 AliWarning(Form(
"Cannot find %s in file. Skip histogram", histoName));
197 histo->SetDirectory(0);
200 AliDebug(5,Form(
"Adding histogram %s\n",histoName));
208 TString newName = histoName;
209 newName.ReplaceAll(
"Counts",
"Eff");
210 TH1F* auxHisto = (TH1F*)histo->Clone(newName.Data());
211 auxHisto->SetDirectory(0);
217 AliDebug(5,Form(
"Creating histogram %s\n",auxHisto->GetName()));
220 for ( Int_t icath=0; icath<2; icath++){
243 TString histoTypeName[
kNcounts] = {
"bendPlane",
"nonBendPlane",
"bothPlanes",
"allTracks"};
245 switch ( histoType ) {
247 return Form(
"%sCountChamber", histoTypeName[countType].Data());
249 return Form(
"%sCountSlatCh%i", histoTypeName[countType].Data(), 11+chamber);
251 return Form(
"%sCountBoardCh%i", histoTypeName[countType].Data(), 11+chamber);
259 Int_t ich, Int_t icath)
const
266 switch ( histoType ) {
virtual ~AliMUONTriggerEfficiencyCells()
tracks used for calculation
AliMUONTriggerEfficiencyCells()
Store and give access to the trigger chamber efficiency.
static const Int_t fgkNplanes
Number of planes.
TList * fNoCountHistoList
list of efficiency denominators (obsolete)
const Char_t * GetHistoName(Int_t histoType, Int_t countType, Int_t chamber=-1)
void ResetHistos(Bool_t deleteObjects=kFALSE)
static const Int_t fgkNcathodes
Number of cathodes.
static const Int_t fgkNchambers
Number of chambers.
static Int_t NofCathodes()
Return number of cathodes.
AliMUONTriggerEfficiencyCells & operator=(const AliMUONTriggerEfficiencyCells &other)
Counts per chamber index.
TList * fCountHistoList
list of histograms for efficiency calculation
void ReadFile(const Char_t *filename, const Char_t *listname)
TH1F * GetOldEffHisto(Int_t hType, Int_t ich, Int_t icath) const
void CheckConstants() const
TList * fFiredStrips
list of fired strips for efficiency check (obsolete)
TH1F * fSlatEfficiency[fgkNplanes]
the slats content (obsolete)
TH1F * fBoardEfficiency[fgkNplanes]
the boards content (obsolete)
static Int_t NofTriggerChambers()