]>
Commit | Line | Data |
---|---|---|
1 | // | |
2 | // Class AliRsnCutPrimaryVertex | |
3 | // | |
4 | // This cut implementation checks the quality of event primary vertex. | |
5 | // It currently works only with ESD events (not AOD). | |
6 | // | |
7 | // authors: Martin Vala (martin.vala@cern.ch) | |
8 | // Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it) | |
9 | // | |
10 | ||
11 | #ifndef ALIRSNCUTPRIMARYVERTEX_H | |
12 | #define ALIRSNCUTPRIMARYVERTEX_H | |
13 | ||
14 | #include "AliRsnCut.h" | |
15 | ||
16 | class AliVVertex; | |
17 | ||
18 | class AliRsnCutPrimaryVertex : public AliRsnCut { | |
19 | public: | |
20 | ||
21 | AliRsnCutPrimaryVertex(const char *name = "cutPrimVert", Double_t maxVz = 10.0, Int_t minContributors = 1, Bool_t acceptTPC = kFALSE); | |
22 | virtual ~AliRsnCutPrimaryVertex() {;}; | |
23 | ||
24 | void SetCheckPileUp(Bool_t doit = kTRUE) {fCheckPileUp = doit;} | |
25 | virtual Bool_t IsSelected(TObject *object); | |
26 | virtual void Print(const Option_t *option = "") const; | |
27 | ||
28 | protected: | |
29 | ||
30 | Bool_t CheckVertex(AliVVertex *vert); | |
31 | ||
32 | Bool_t fAcceptTPC; // if kTRUE, the TPC primary vertexes are accepted | |
33 | Bool_t fCheckPileUp; // check and reject pileupped events (pp) | |
34 | ||
35 | ClassDef(AliRsnCutPrimaryVertex, 1) | |
36 | }; | |
37 | ||
38 | //__________________________________________________________________________________________________ | |
39 | inline Bool_t AliRsnCutPrimaryVertex::CheckVertex(AliVVertex *vertex) | |
40 | { | |
41 | // | |
42 | // Checks if a candidate primary vertex is good, | |
43 | // which is true if it is not null and has at | |
44 | // least one contributor | |
45 | // | |
46 | ||
47 | if (!vertex) return kFALSE; | |
48 | if (vertex->GetNContributors() < 1) return kFALSE; | |
49 | return kTRUE; | |
50 | } | |
51 | ||
52 | #endif |