-#ifndef ALIMCINFOCUTS_H\r
-#define ALIMCINFOCUTS_H\r
-\r
-//------------------------------------------------------------------------------\r
-// Class to keep selection cuts for MC tracks. \r
-// \r
-// Author: J.Otwinowski 04/02/2008 \r
-//------------------------------------------------------------------------------\r
-\r
-#include <TPDGCode.h>\r
-#include "AliAnalysisCuts.h"\r
-\r
-class TArrayI;\r
-\r
-class AliMCInfoCuts : public AliAnalysisCuts\r
-{\r
-public:\r
- AliMCInfoCuts(const Char_t* name ="AliMCInfoCuts", const Char_t *title ="");\r
- virtual ~AliMCInfoCuts(); \r
- \r
- // setters \r
- void SetMinRowsWithDigits(const Int_t min=0) {fMinRowsWithDigits = min;}\r
- void SetMaxR(const Float_t max=1e99) {fMaxR = max;}\r
- void SetMaxVz(const Float_t max=1e99) {fMaxVz = max;}\r
- void SetRangeTPCSignal(const Float_t min=0, const Float_t max=1e99) {fMinTPCSignal = min; fMaxTPCSignal = max;}\r
- void SetMinTrackLength(const Int_t min=0) {fMinTrackLength = min;}\r
-\r
- // getters \r
- Int_t GetMinRowsWithDigits() const {return fMinRowsWithDigits;}\r
- Float_t GetMaxR() const {return fMaxR;}\r
- Float_t GetMaxVz() const {return fMaxVz;}\r
- Float_t GetMinTPCSignal() const {return fMinTPCSignal;}\r
- Float_t GetMaxTPCSignal() const {return fMaxTPCSignal;}\r
- Float_t GetMinTrackLength() const {return fMinTrackLength;}\r
-\r
- Float_t GetEP() const {return ep;}\r
- Float_t GetEM() const {return em;}\r
- Float_t GetMuP() const {return mup;}\r
- Float_t GetMuM() const {return mum;}\r
- Float_t GetPiP() const {return pip;}\r
- Float_t GetPiM() const {return pim;}\r
- Float_t GetKP() const {return kp;}\r
- Float_t GetKM() const {return km;}\r
- Float_t GetProt() const {return prot;}\r
- Float_t GetProtBar() const {return protbar;}\r
- \r
- // cuts init function\r
- void InitME();\r
-\r
- // check MC tracks\r
- virtual Bool_t IsSelected(TObject *) {return kTRUE;}\r
- virtual Bool_t IsSelected(TList *) {return kTRUE;}\r
-\r
- // add particle to array \r
- void AddPdgParticle(Int_t idx=-1, Int_t pdgcode=0) const;\r
-\r
- // check particle in array \r
- Bool_t IsPdgParticle(Int_t pdgcode=0) const;\r
-\r
- // check particle in array \r
- Bool_t IsPosPdgParticle(Int_t pdgcode=0) const;\r
-\r
- // Merge output objects (needed by PROOF) \r
- virtual Long64_t Merge(TCollection* list);\r
-\r
-private:\r
- Int_t fMinRowsWithDigits; // min. number of TPC raws with digits \r
- Float_t fMaxR; // max. R distance from MC vertex \r
- Float_t fMaxVz; // max. Z distance from MC vertex\r
- Float_t fMinTPCSignal; // min. TPC Signal calculated from Bethe Bloch formula\r
- Float_t fMaxTPCSignal; // max. TPC Signal calculated from Bethe Bloch formula\r
- Float_t fMinTrackLength; // min. TPC minimum track length\r
- \r
- TArrayI* aTrackParticles; // array of tracked particles \r
-\r
- // PDG tracked particles (later added to aTrackParticles)\r
- enum enumData {\r
- kNParticles = 10, // number of particles below\r
- ep = kPositron,\r
- em = kElectron,\r
- mup = kMuonPlus,\r
- mum = kMuonMinus,\r
- pip = kPiPlus,\r
- pim = kPiMinus,\r
- kp = kKPlus,\r
- km = kKMinus,\r
- prot = kProton,\r
- protbar = kProtonBar\r
- };\r
-\r
- AliMCInfoCuts(const AliMCInfoCuts&); // not implemented\r
- AliMCInfoCuts& operator=(const AliMCInfoCuts&); // not implemented\r
-\r
- ClassDef(AliMCInfoCuts, 1)\r
-};\r
-\r
-#endif // ALIMCINFOCUTS_H\r
+#ifndef ALIMCINFOCUTS_H
+#define ALIMCINFOCUTS_H
+
+//------------------------------------------------------------------------------
+// Class to keep selection cuts for MC tracks.
+//
+// Author: J.Otwinowski 04/02/2008
+//------------------------------------------------------------------------------
+
+#include <TPDGCode.h>
+#include "AliAnalysisCuts.h"
+
+class TArrayI;
+
+class AliMCInfoCuts : public AliAnalysisCuts
+{
+public:
+ AliMCInfoCuts(const Char_t* name ="AliMCInfoCuts", const Char_t *title ="");
+ virtual ~AliMCInfoCuts();
+
+ // setters
+ void SetMinRowsWithDigits(const Int_t min=0) {fMinRowsWithDigits = min;}
+ void SetMaxR(const Float_t max=1e99) {fMaxR = max;}
+ void SetMaxVz(const Float_t max=1e99) {fMaxVz = max;}
+ void SetRangeTPCSignal(const Float_t min=0, const Float_t max=1e99) {fMinTPCSignal = min; fMaxTPCSignal = max;}
+ void SetMinTrackLength(const Int_t min=0) {fMinTrackLength = min;}
+
+ // getters
+ Int_t GetMinRowsWithDigits() const {return fMinRowsWithDigits;}
+ Float_t GetMaxR() const {return fMaxR;}
+ Float_t GetMaxVz() const {return fMaxVz;}
+ Float_t GetMinTPCSignal() const {return fMinTPCSignal;}
+ Float_t GetMaxTPCSignal() const {return fMaxTPCSignal;}
+ Float_t GetMinTrackLength() const {return fMinTrackLength;}
+
+ Float_t GetEP() const {return ep;}
+ Float_t GetEM() const {return em;}
+ Float_t GetMuP() const {return mup;}
+ Float_t GetMuM() const {return mum;}
+ Float_t GetPiP() const {return pip;}
+ Float_t GetPiM() const {return pim;}
+ Float_t GetKP() const {return kp;}
+ Float_t GetKM() const {return km;}
+ Float_t GetProt() const {return prot;}
+ Float_t GetProtBar() const {return protbar;}
+
+ // cuts init function
+ void InitME();
+
+ // check MC tracks
+ virtual Bool_t IsSelected(TObject *) {return kTRUE;}
+ virtual Bool_t IsSelected(TList *) {return kTRUE;}
+
+ // add particle to array
+ void AddPdgParticle(Int_t idx=-1, Int_t pdgcode=0) const;
+
+ // check particle in array
+ Bool_t IsPdgParticle(Int_t pdgcode=0) const;
+
+ // check particle in array
+ Bool_t IsPosPdgParticle(Int_t pdgcode=0) const;
+
+ // Merge output objects (needed by PROOF)
+ virtual Long64_t Merge(TCollection* list);
+
+private:
+ Int_t fMinRowsWithDigits; // min. number of TPC raws with digits
+ Float_t fMaxR; // max. R distance from MC vertex
+ Float_t fMaxVz; // max. Z distance from MC vertex
+ Float_t fMinTPCSignal; // min. TPC Signal calculated from Bethe Bloch formula
+ Float_t fMaxTPCSignal; // max. TPC Signal calculated from Bethe Bloch formula
+ Float_t fMinTrackLength; // min. TPC minimum track length
+
+ TArrayI* aTrackParticles; // array of tracked particles
+
+ // PDG tracked particles (later added to aTrackParticles)
+ enum enumData {
+ kNParticles = 10, // number of particles below
+ ep = kPositron,
+ em = kElectron,
+ mup = kMuonPlus,
+ mum = kMuonMinus,
+ pip = kPiPlus,
+ pim = kPiMinus,
+ kp = kKPlus,
+ km = kKMinus,
+ prot = kProton,
+ protbar = kProtonBar
+ };
+
+ AliMCInfoCuts(const AliMCInfoCuts&); // not implemented
+ AliMCInfoCuts& operator=(const AliMCInfoCuts&); // not implemented
+
+ ClassDef(AliMCInfoCuts, 1)
+};
+
+#endif // ALIMCINFOCUTS_H