]>
Commit | Line | Data |
---|---|---|
f553869e | 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 | /***************************************************************** | |
17 | AliFlowEventStar: Event container for flow analysis | |
18 | ||
19 | origin: Mikolaj Krzewicki (mikolaj.krzewicki@cern.ch) | |
20 | *****************************************************************/ | |
21 | ||
22 | #include "Riostream.h" | |
23 | #include "AliFlowEventSimple.h" | |
24 | #include "AliFlowTrackSimple.h" | |
25 | #include "AliStarTrack.h" | |
b4dba88d | 26 | #include "AliStarTrackCuts.h" |
f553869e | 27 | #include "AliStarEvent.h" |
28 | #include "AliFlowEventStar.h" | |
29 | ||
3a7af7bd | 30 | using std::cout; |
31 | using std::endl; | |
f553869e | 32 | ClassImp(AliFlowEventStar) |
33 | ||
34 | //----------------------------------------------------------------------- | |
35 | ||
36 | AliFlowEventStar::AliFlowEventStar(): | |
37 | AliFlowEventSimple() | |
38 | { | |
39 | //ctor | |
40 | cout << "AliFlowEventStar: Default constructor to be used only by root for io" << endl; | |
41 | } | |
42 | ||
43 | //----------------------------------------------------------------------- | |
44 | AliFlowEventStar::AliFlowEventStar(const AliFlowEventStar& event): | |
45 | AliFlowEventSimple(event) | |
46 | { | |
47 | //cpy ctor | |
48 | } | |
49 | ||
50 | //----------------------------------------------------------------------- | |
b4dba88d | 51 | AliFlowEventStar& AliFlowEventStar::operator=( const AliFlowEventStar& event ) |
f553869e | 52 | { |
53 | //assignment operator | |
54 | AliFlowEventSimple::operator=(event); | |
55 | return *this; | |
56 | } | |
57 | ||
b4dba88d | 58 | //----------------------------------------------------------------------- |
59 | AliFlowEventStar::AliFlowEventStar( const AliStarEvent* starevent, | |
60 | const AliStarTrackCuts* rpCuts, | |
61 | const AliStarTrackCuts* poiCuts ): | |
f553869e | 62 | AliFlowEventSimple(starevent->GetNumberOfTracks()) |
63 | { | |
64 | //construct from a star event | |
65 | SetReferenceMultiplicity(starevent->GetRefMult()); | |
66 | for (Int_t i=0; i<starevent->GetNumberOfTracks(); i++) | |
67 | { | |
68 | const AliStarTrack* startrack = starevent->GetTrack(i); | |
69 | if (!startrack) continue; | |
70 | AliFlowTrackSimple* flowtrack = new AliFlowTrackSimple(); | |
71 | flowtrack->SetPhi(startrack->GetPhi()); | |
72 | flowtrack->SetEta(startrack->GetEta()); | |
73 | flowtrack->SetPt(startrack->GetPt()); | |
74 | flowtrack->SetCharge(startrack->GetCharge()); | |
b4dba88d | 75 | if (rpCuts) |
76 | { | |
77 | Bool_t pass = rpCuts->PassesCuts(startrack); | |
78 | flowtrack->TagRP(pass); //tag RPs | |
8fa6a5fa | 79 | if (pass) IncrementNumberOfPOIs(0); |
b4dba88d | 80 | } |
81 | if (poiCuts) | |
82 | { | |
83 | flowtrack->TagPOI(poiCuts->PassesCuts(startrack)); //tag POIs | |
84 | } | |
f553869e | 85 | AddTrack(flowtrack); |
86 | } | |
87 | } |