Line data Source code
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 : // //
18 : // class for PMD reconstruction //
19 : // //
20 : ///////////////////////////////////////////////////////////////////////////////
21 :
22 : #include "Riostream.h"
23 : #include "AliPMDReconstructor.h"
24 : #include "AliRun.h"
25 : #include "AliPMDClusterFinder.h"
26 : #include "AliPMDtracker.h"
27 : #include "AliRawReader.h"
28 : #include "AliESDPmdTrack.h"
29 : #include "AliESDEvent.h"
30 : #include "AliLog.h"
31 : #include "AliRunInfo.h"
32 :
33 12 : ClassImp(AliPMDReconstructor)
34 :
35 : // ------------------------------------------------------------------------ //
36 :
37 : void AliPMDReconstructor::Reconstruct(AliRawReader *rawReader,
38 : TTree *clustersTree) const
39 : {
40 : // reconstruct clusters from Raw Data
41 : // Event Species Added By satyajit
42 : Int_t gRecoMode = 1;
43 8 : TString beamType = GetRunInfo()->GetBeamType();
44 :
45 12 : if (((beamType.CompareTo("pp"))==0) ||
46 8 : ((beamType.CompareTo("p-p"))==0)||
47 8 : ((beamType.CompareTo("PP"))==0) ||
48 8 : ((beamType.CompareTo("P-P"))==0)) {
49 : gRecoMode=1;
50 0 : }
51 :
52 12 : else if ((beamType.CompareTo("A-A")) == 0 ||
53 8 : (beamType.CompareTo("AA")) == 0) {
54 : gRecoMode=2;
55 0 : }
56 :
57 7 : static AliPMDClusterFinder pmdClus;
58 4 : pmdClus.Digits2RecPoints(rawReader, clustersTree, gRecoMode);
59 4 : }
60 :
61 : // ------------------------------------------------------------------------ //
62 : void AliPMDReconstructor::Reconstruct(TTree *digitsTree,
63 : TTree *clustersTree) const
64 : {
65 : // reconstruct clusters from Digits
66 : // Setting reconstruction mode
67 :
68 : // Added to Have Sepatrate Event Spcies
69 : Int_t gRecoMode = 1;
70 8 : TString beamType = GetRunInfo()->GetBeamType();
71 :
72 12 : if (((beamType.CompareTo("pp"))==0) ||
73 8 : ((beamType.CompareTo("p-p"))==0)||
74 8 : ((beamType.CompareTo("PP"))==0) ||
75 8 : ((beamType.CompareTo("P-P"))==0)) {
76 : gRecoMode=1;
77 0 : }
78 :
79 12 : else if ((beamType.CompareTo("A-A")) == 0 ||
80 8 : (beamType.CompareTo("AA")) == 0) {
81 : gRecoMode=2;
82 0 : }
83 :
84 7 : static AliPMDClusterFinder pmdClus;
85 4 : pmdClus.Digits2RecPoints(digitsTree, clustersTree,gRecoMode);
86 :
87 4 : }
88 :
89 : // ------------------------------------------------------------------------ //
90 : void AliPMDReconstructor::FillESD(AliRawReader* /*rawReader*/,
91 : TTree* clustersTree, AliESDEvent* esd) const
92 : {
93 11 : static AliPMDtracker pmdtracker;
94 4 : pmdtracker.LoadClusters(clustersTree);
95 4 : pmdtracker.Clusters2Tracks(esd);
96 4 : }
97 : // ------------------------------------------------------------------------ //
98 : void AliPMDReconstructor::FillESD(TTree * /*digitsTree*/,
99 : TTree* clustersTree, AliESDEvent* esd) const
100 : {
101 11 : static AliPMDtracker pmdtracker;
102 4 : pmdtracker.LoadClusters(clustersTree);
103 4 : pmdtracker.Clusters2Tracks(esd);
104 4 : }
105 :
106 :
|