Modifications in the balance function code + addition of the very first version of...
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnCutBetheBloch.h
CommitLineData
5eb970a4 1//
2// Class AliRsnCutRange
3//
4// General implementation of cuts which check a value inside a range.
5// This range can be defined by two integers or two doubles.
6// A user-friendly enumeration allows to define what is checked.
7//
8// authors: Martin Vala (martin.vala@cern.ch)
9// Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it)
10//
11
12#ifndef ALIRSNCUTBETHEBLOCK_H
13#define ALIRSNCUTBETHEBLOCK_H
14
15#include "AliPID.h"
16#include "AliRsnCut.h"
17
18class AliRsnCutBetheBloch : public AliRsnCut
19{
20 public:
21
22 AliRsnCutBetheBloch();
5eb970a4 23 AliRsnCutBetheBloch(const char *name, Double_t fractionRange, AliPID::EParticleType type, Double_t mip = 50.0, Bool_t correct = kTRUE);
24
cff22d54 25 void SetType(AliPID::EParticleType type) {fType = type;}
5eb970a4 26 void SetMIP(Double_t mip) {fMIP = mip;}
27 void SetCalibConstant(Int_t i, Double_t value) {if (i>=0&&i<5) fConst[i] = value;}
28 Double_t BetheBloch(AliRsnDaughter *track);
6f4a992c 29 Double_t RelDiff(AliRsnDaughter *track);
5eb970a4 30
31 virtual Bool_t IsSelected(ETarget tgt, AliRsnDaughter *daughter);
32 virtual Bool_t IsSelected(ETarget tgt, AliRsnPairParticle *pair);
33 virtual Bool_t IsSelected(ETarget tgt, AliRsnEvent *event);
34 virtual Bool_t IsSelected(ETarget tgt, AliRsnEvent *ev1, AliRsnEvent *ev2);
35
36protected:
37
cff22d54 38 Bool_t fCorrect; // apply or not the saturation corrections
39 Double_t fMIP; // MIP normalization
40 Double_t fConst[5]; // calibration constants
41 AliPID::EParticleType fType; // reference particle type
5eb970a4 42
43 ClassDef(AliRsnCutBetheBloch, 1)
44};
45
46#endif