a08c3f51b35e30dfaef3c2f79935641981a541fc
[u/mrichter/AliRoot.git] / STEER / AliESD.cxx
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 /* $Id$ */
17
18 //-----------------------------------------------------------------
19 //           Implementation of the ESD class
20 //   This is the class to deal with during the phisical analysis of data
21 //   This class is generated directly by the reconstruction methods
22 //      Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
23 //-----------------------------------------------------------------
24
25 #include "AliESD.h"
26
27 ClassImp(AliESD)
28
29 //______________________________________________________________________________
30 AliESD::AliESD():
31   fEventNumber(0),
32   fRunNumber(0),
33   fTrigger(0),
34   fRecoVersion(0),
35   fMagneticField(0),
36   fT0zVertex(0),
37   fPrimaryVertex(),
38   fTracks("AliESDtrack",15000),
39   fHLTConfMapTracks("AliESDHLTtrack",25000),
40   fHLTHoughTracks("AliESDHLTtrack",15000),
41   fMuonTracks("AliESDMuonTrack",30),
42   fPmdTracks("AliESDPmdTrack",3000),
43   fV0s("AliESDv0",200),
44   fCascades("AliESDcascade",20),
45   fPHOSParticles(0), 
46   fEMCALParticles(0), 
47   fFirstPHOSParticle(-1), 
48   fFirstEMCALParticle(-1){
49 }
50
51 //______________________________________________________________________________
52 AliESD::~AliESD()
53 {
54   //
55   // Standard destructor
56   //
57   fTracks.Delete();
58   fHLTConfMapTracks.Delete();
59   fHLTHoughTracks.Delete();
60   fMuonTracks.Delete();
61   fPmdTracks.Delete();
62   fV0s.Delete();
63   fCascades.Delete();
64 }
65
66
67 //______________________________________________________________________________
68 void AliESD::Print(Option_t *) const 
69 {
70   //
71   // Print header information of the event
72   //
73   Info("Print","ESD run information");
74   printf("Event # %d Run # %d Trigger %ld Magnetic field %f \n",
75          GetEventNumber(),
76          GetRunNumber(),
77          GetTrigger(),
78          GetMagneticField() );
79   printf("Vertex: (%.4f +- %.4f, %.4f +- %.4f, %.4f +- %.4f) cm\n",
80          fPrimaryVertex.GetXv(), fPrimaryVertex.GetXRes(),
81          fPrimaryVertex.GetYv(), fPrimaryVertex.GetYRes(),
82          fPrimaryVertex.GetZv(), fPrimaryVertex.GetZRes());
83   printf("Event from reconstruction version %d \n",fRecoVersion);
84   printf("Number of tracks: \n");
85   printf("                 charged   %d\n",GetNumberOfTracks()-GetNumberOfPHOSParticles()-GetNumberOfEMCALParticles());
86   printf("                 hlt CF    %d\n", GetNumberOfHLTConfMapTracks());
87   printf("                 hlt HT    %d\n", GetNumberOfHLTHoughTracks());
88   printf("                 phos      %d\n", GetNumberOfPHOSParticles());
89   printf("                 emcal     %d\n", GetNumberOfEMCALParticles());
90   printf("                 muon      %d\n", GetNumberOfMuonTracks());
91   printf("                 pmd       %d\n", GetNumberOfPmdTracks());
92   printf("                 v0        %d\n", GetNumberOfV0s());
93   printf("                 cascades  %d\n)", GetNumberOfCascades());
94 }