]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ANALYSIS/TenderSupplies/AliTRDTenderSupply.h
Fix in TOF tender supply (Annalisa)
[u/mrichter/AliRoot.git] / ANALYSIS / TenderSupplies / AliTRDTenderSupply.h
CommitLineData
e75408ba 1#ifndef ALITRDTENDERSUPPLY_H
2#define ALITRDTENDERSUPPLY_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7////////////////////////////////////////////////////////////////////////
8// //
9// TRD tender, reapply pid on the fly //
10// //
11////////////////////////////////////////////////////////////////////////
12
13
14
15#include <AliTenderSupply.h>
16
00685073 17class AliTRDCalDet;
8d458e7c 18class AliESDtrack;
19class AliESDEvent;
00685073 20
e75408ba 21class AliTRDTenderSupply: public AliTenderSupply {
22
23public:
00685073 24 enum{
25 kNNpid = 0,
26 k1DLQpid = 1,
27 k2DLQpid = 2
28 };
e75408ba 29 AliTRDTenderSupply();
30 AliTRDTenderSupply(const char *name, const AliTender *tender=NULL);
31 virtual ~AliTRDTenderSupply();
32
33 void SetPIDmethod(Int_t pidMethod) { fPIDmethod = pidMethod; }
00685073 34 void SetCalibLowpThreshold(Double_t pmin) { fPthreshold = pmin; };
e75408ba 35
36 virtual void Init();
37 virtual void ProcessEvent();
38
00685073 39 void SwitchOnGainCorrection() { fGainCorrection = kTRUE; }
40 void SwitchOffGainCorrection() { fGainCorrection = kFALSE; }
41 void AddBadChamber(Int_t chamberID){fBadChamberID[fNBadChambers++] = chamberID;};
e75408ba 42
43private:
44 enum{
00685073 45 kNPlanes = 6,
46 kNStacks = 5,
47 kNChambers = 540
e75408ba 48 };
00685073 49
50 Bool_t GetTRDchamberID(AliESDtrack * const track, Int_t *detectors);
51 void SetChamberGain();
52 void ApplyGainCorrection(AliESDtrack *track);
53
54 AliESDEvent *fESD; //! the ESD Event
55 AliESDpid *fESDpid; //! ESD PID object
56
57 AliTRDCalDet *fChamberGainOld; // TRD Chamber Gain Factor used for producing the ESD
58 AliTRDCalDet *fChamberGainNew; // New TRD Chamber Gain Factor
59 AliTRDCalDet *fChamberVdriftOld; // Old drift velocity calibration
60 AliTRDCalDet *fChamberVdriftNew; // New drift velocity calibration
e75408ba 61
62 Int_t fPIDmethod; // PID method
00685073 63 Double_t fPthreshold; // Low Momentum threshold for calibration
64 Int_t fBadChamberID[kNChambers]; // List of Bad Chambers
65 UInt_t fNBadChambers; // Number of bad chambers
66 Bool_t fGainCorrection; // Apply gain correction
e75408ba 67
68 AliTRDTenderSupply(const AliTRDTenderSupply&c);
69 AliTRDTenderSupply& operator= (const AliTRDTenderSupply&c);
70
71 ClassDef(AliTRDTenderSupply, 1); // TRD tender task
72};
e75408ba 73#endif
74