Simplifying calling test, explicite functions for each type of test
[u/mrichter/AliRoot.git] / FASTSIM / AliFastMuonTriggerEff.h
CommitLineData
6255180c 1#ifndef ALIFASTMUONTRIGGEREFF_H
2#define ALIFASTMUONTRIGGEREFF_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8#include <AliFastResponse.h>
490243f3 9#include <TString.h>
10#include <TObjString.h>
11#include <TFile.h>
12#include <TH3.h>
13#include <TROOT.h>
14#include <stdlib.h>
15
16// Debugging flag
17//#define MYTRIGDEBUG
18
19enum CutTupe {kLow, kHigh, kAny};
6255180c 20
21class AliFastMuonTriggerEff : public AliFastResponse {
22
23 public:
24 AliFastMuonTriggerEff();
2e480dff 25 AliFastMuonTriggerEff(const char* /*Name*/, const char* /*Title*/) {;}
6255180c 26 virtual ~AliFastMuonTriggerEff(){;}
27 virtual void Init();
28 virtual void Evaluate(Float_t charge, Float_t pt, Float_t theta, Float_t phi,
490243f3 29 Float_t& effLow, Float_t& effHigh, Float_t& effAny);
30 virtual void Evaluate(Float_t charge, Float_t pt, Float_t theta, Float_t phi,
31 Float_t& effLow, Float_t& effHigh);
6255180c 32 virtual Float_t Evaluate(Float_t charge, Float_t pt, Float_t theta, Float_t phi);
490243f3 33 virtual void SetCut(Int_t cut = kLow);
6255180c 34 virtual Float_t Cut() {return fCut;}
490243f3 35 virtual Int_t SetBkgLevel(Float_t Bkg=0.);
36 virtual Int_t ForceBkgLevel(Float_t Bkg=0.);
37 virtual Float_t GetBkgLevel() {return fBkg;}
38 Int_t LoadTables(Char_t *namet); // Load trigger response tables
39 void SetInt() {fInt=1;}
40 void UnsetInt() {fInt=0;}
41 Int_t GetInt() {return fInt;}
6255180c 42 protected:
490243f3 43 Double_t fPtMin;
44 Double_t fPtMax;
45 Double_t fDpt; // Delta_pt
46 Int_t fnptb;
47 Double_t fPhiMin; // lower limit for phi
48 Double_t fPhiMax; // upper limit for phi
49 Double_t fDphi; // Delta_phi
50 Int_t fnphib;
51 Double_t fThetaMin; // lower limit for theta
52 Double_t fThetaMax; // upper limit for theta
53 Double_t fDtheta; // Delta_theta
54 Int_t fnthetab;
6255180c 55 Int_t fCut; // Cut type (low/high)
56 Int_t fZones; // Total number of zones
490243f3 57 TH3F* fhEffAPt; // Trig. prob. for Any Pt
58 TH3F* fhEffLPt; // Trig. prob. for Low Pt
59 TH3F* fhEffHPt; // Trig. prob. for High Pt
60 TAxis* fhLX;
61 TAxis* fhLY;
62 TAxis* fhLZ;
63 Float_t fBkg; // Background level
64 TString fTableTitle; // Title of the LUT
65 TString fDescription; // Description of the table content
66 Int_t fInt; // Interpolation flag (1 to interpolate)
67 private:
68 Int_t fibx;
69 Int_t fiby;
70 Int_t fibz;
6255180c 71 ClassDef(AliFastMuonTriggerEff,1) // Fast Muon Trigger response
72};
73
74#endif
75
76
77