]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliPIDCombined.h
Fixing in/out tags in documentation
[u/mrichter/AliRoot.git] / STEER / AliPIDCombined.h
CommitLineData
fd21ec8d 1#ifndef ALIPIDCOMBINED_H\r
2#define ALIPIDCOMBINED_H\r
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r
4 * See cxx source for full Copyright notice */\r
5\r
6//---------------------------------------------------------------//\r
7// Base class for combining PID response of //\r
8// of different detectors //\r
9// and compute Bayesian probabilities //\r
10// //\r
11// Origin: Pietro Antonioli, INFN-BO, pietro.antonioli@cern.ch //\r
12// //\r
13//---------------------------------------------------------------//\r
14\r
15\r
16\r
17#include <TNamed.h>\r
18#include <AliPID.h>\r
19#include <AliPIDResponse.h>\r
20#include <TH1F.h>\r
21\r
22//class TH1;\r
23class AliPIDResponse;\r
24\r
25class AliPIDCombined : public TNamed {\r
26public:\r
27 AliPIDCombined();\r
28 AliPIDCombined(const TString& name, const TString& title);\r
29 virtual ~AliPIDCombined();\r
30\r
31 void SetDetectorMask(Int_t mask) {fDetectorMask=mask;}\r
32 Int_t GetDetectorMask() const {return fDetectorMask;}\r
33 void SetRejectMismatchMask(Int_t mask) {fRejectMismatchMask=mask;}\r
34 Int_t GetRejectMismatchMask() const {return fRejectMismatchMask;}\r
35 void SetEnablePriors(Bool_t flag) {fEnablePriors=flag;}\r
36 Bool_t GetEnablePriors() const {return fEnablePriors;}\r
37 void SetPriorDistribution(AliPID::EParticleType type,TH1F *prior);\r
38 // const TH1* GetPriorDistribution(AliPID::EParticleType type) const {return (TH1*)fPriorsDistributions[type];}\r
39 TH1* GetPriorDistribution(AliPID::EParticleType type) const {return (TH1*)fPriorsDistributions[type];}\r
40 \r
41 UInt_t ComputeProbabilities(const AliVTrack *track, const AliPIDResponse *response, Double_t* bayesProbabilities) const;\r
42 void SetSelectedSpecies(Int_t selectedSpecies) {fSelectedSpecies = selectedSpecies;}\r
43 Int_t GetSelectedSpecies() const {return fSelectedSpecies;}\r
44\r
45protected:\r
46 void GetPriors(const AliVTrack *track,Double_t* priors) const;\r
47 void ComputeBayesProbabilities(Double_t* bayesProbabilities,const Double_t* probDensity, const Double_t* priors) const;\r
48 void SetCombinedStatus(const AliPIDResponse::EDetPidStatus status,UInt_t *mask, const AliPIDResponse::EDetCode bit, Double_t* p) const;\r
49\r
50private:\r
51 AliPIDCombined(const AliPIDCombined&);\r
52 AliPIDCombined &operator=(const AliPIDCombined&);\r
53\r
54 Int_t fDetectorMask; // Detectors included in combined pid\r
55 Int_t fRejectMismatchMask; // Detectors set return flat prob. if mismatch detected \r
56 Bool_t fEnablePriors; // Enable bayesian PID (if kFALSE priors set flat)\r
57 Int_t fSelectedSpecies; // Number of selected species to study\r
58 TH1F *fPriorsDistributions[AliPID::kSPECIES+AliPID::kSPECIESLN]; // priors\r
59\r
60 ClassDef(AliPIDCombined,1);\r
61};\r
62\r
63#endif\r