In AliMUONResponseTriggerV1:
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliTRDPIDParams.h
CommitLineData
ce487a7f 1/**************************************************************************
2* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3* *
4* Author: The ALICE Off-line Project. *
5* Contributors are mentioned in the code where appropriate. *
6* *
7* Permission to use, copy, modify and distribute this software and its *
8* documentation strictly for non-commercial purposes is hereby granted *
9* without fee, provided that the above copyright notice appears in all *
10* copies and that both the copyright notice and this permission notice *
11* appear in the supporting documentation. The authors make no claims *
12* about the suitability of this software for any purpose. It is *
13* provided "as is" without express or implied warranty. *
14**************************************************************************/
15//
16// Container for TRD thresholds stored in the OADB
17//
18#ifndef ALITRDPIDPARAMS_H
19#define ALITRDPIDPARAMS_H
20
21#ifndef ROOT_TNamed
22#include <TNamed.h>
23#endif
24
25class TSortedList;
26
27class AliTRDPIDParams : public TNamed{
28 public:
29 AliTRDPIDParams();
30 AliTRDPIDParams(const char *name);
31 virtual ~AliTRDPIDParams();
32 virtual void Print(Option_t *) const;
33
34 Bool_t GetThresholdParameters(Int_t ntracklets, Double_t efficiency, Double_t *params) const;
35 void SetThresholdParameters(Int_t ntracklets, Double_t effMin, Double_t effMax, Double_t *params);
36
37 private:
38 class AliTRDPIDThresholds : public TObject{
39 public:
40 AliTRDPIDThresholds();
41 AliTRDPIDThresholds(Int_t nTracklets, Double_t effMin, Double_t effMax, Double_t *params = NULL);
42 AliTRDPIDThresholds(Int_t nTracklets, Double_t eff, Double_t *params = NULL);
43 AliTRDPIDThresholds(const AliTRDPIDThresholds &);
44 AliTRDPIDThresholds &operator=(const AliTRDPIDThresholds &);
45 virtual ~AliTRDPIDThresholds() {}
46
47 Int_t GetNTracklets() const { return fNTracklets; }
48 Double_t GetElectronEfficiency(Int_t step = 0) const { if(step == 0) return fEfficiency[0]; else return fEfficiency[1]; }
49 const Double_t *GetThresholdParams() const { return fParams; }
50
51 virtual Bool_t IsSortable() const { return kTRUE; }
52 virtual Int_t Compare(const TObject *ref) const;
53 virtual Bool_t IsEqual(const TObject *ref) const;
54
55 private:
56 Int_t fNTracklets; //
57 Double_t fEfficiency[2]; //
58 Double_t fParams[4]; //
59
60 ClassDef(AliTRDPIDThresholds, 1);
61 };
62
63 static const Double_t kVerySmall;
64
65 AliTRDPIDParams(const AliTRDPIDParams &);
66 AliTRDPIDParams &operator=(const AliTRDPIDParams &);
67
68 TSortedList *fEntries; //
69
70 ClassDef(AliTRDPIDParams, 1);
71};
72#endif
73