3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 // $Id: AliEvent.h,v 1.8 2003/02/25 12:36:28 nick Exp $
11 #include "TObjArray.h"
14 #include "AliVertex.h"
15 #include "AliCalorimeter.h"
17 class AliEvent : public AliVertex
20 AliEvent(); // Default constructor
21 AliEvent(Int_t n); // Create an event to hold initially n tracks
22 virtual ~AliEvent(); // Default destructor
23 AliEvent(AliEvent& evt); // Copy constructor
24 virtual void SetOwner(Bool_t own=kTRUE);// Set ownership of all added objects
25 void SetDayTime(TDatime& stamp); // Set the date and time stamp
26 void SetRunNumber(Int_t run); // Set the run number
27 void SetEventNumber(Int_t evt); // Set the event number
28 void SetProjectile(Int_t a,Int_t z,Double_t pnuc,Int_t id=0); // Set projectile A, Z, p per nucleon and id
29 Int_t GetProjectileA(); // Provide A value of the projectile
30 Int_t GetProjectileZ(); // Provide Z value of the projectile
31 Double_t GetProjectilePnuc(); // Provide the projectile momentum value per nucleon
32 Int_t GetProjectileId(); // Provide the user defined particle ID of the projectile
33 void SetTarget(Int_t a,Int_t z,Double_t pnuc,Int_t id=0); // Set target A, Z, p per nucleon and id
34 Int_t GetTargetA(); // Provide A value of the target
35 Int_t GetTargetZ(); // Provide Z value of the target
36 Double_t GetTargetPnuc(); // Provide the target momentum value per nucleon
37 Int_t GetTargetId(); // Provide the user defined particle ID of the target
38 void Reset(); // Reset all values
39 TDatime GetDayTime(); // Provide the date and time stamp
40 Int_t GetRunNumber(); // Provide the run number
41 Int_t GetEventNumber(); // Provide the event number
42 void HeaderData(); // Print the event header information
43 void Data(TString f="car"); // Print the event info within coordinate frame f
44 void SetCalCopy(Int_t j); // (De)activate creation of private copies in fCalorimeters
45 Int_t GetCalCopy(); // Provide CalCopy flag value
46 void AddCalorimeter(AliCalorimeter& c); // Add a calorimeter system to the event
47 void AddCalorimeter(AliCalorimeter* c) { AddCalorimeter(*c); }
48 Int_t GetNcalorimeters(); // Provide the number of calorimeter systems
49 void ShowCalorimeters(); // Provide on overview of the available calorimeter systems
50 AliCalorimeter* GetCalorimeter(Int_t i);// Provide i-th calorimeter system of the event
51 AliCalorimeter* GetCalorimeter(TString name); // Provide calorimeter with name "name"
54 TDatime fDaytime; // The date and time stamp
55 Int_t fRun; // The run number
56 Int_t fEvent; // The event number
57 Int_t fAproj; // The projectile A value
58 Int_t fZproj; // The projectile Z value
59 Double_t fPnucProj; // The projectile momentum per nucleon
60 Int_t fIdProj; // User defined projectile particle ID
61 Int_t fAtarg; // The target A value
62 Int_t fZtarg; // The target Z value
63 Double_t fPnucTarg; // The target momentum per nucleon
64 Int_t fIdTarg; // User defined target particle ID
65 Int_t fNcals; // The number of calorimeter systems
66 TObjArray* fCalorimeters; // Array to hold the pointers to the calorimeter systems
67 Int_t fCalCopy; // Flag to denote creation of private copies in fCalorimeters
69 ClassDef(AliEvent,7) // Creation and investigation of an Alice physics event.