]>
Commit | Line | Data |
---|---|---|
d16062ac | 1 | #ifndef ALIEVENT_H |
2 | #define ALIEVENT_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
5f25234b | 6 | // $Id: AliEvent.h,v 1.12 2003/11/21 14:20:10 nick Exp $ |
d16062ac | 7 | |
d16062ac | 8 | #include <math.h> |
9 | ||
10 | #include "TObject.h" | |
11 | #include "TObjArray.h" | |
12 | #include "TDatime.h" | |
387a745b | 13 | #include "TTimeStamp.h" |
d16062ac | 14 | |
15 | #include "AliVertex.h" | |
16 | ||
17 | class AliEvent : public AliVertex | |
18 | { | |
19 | public: | |
20 | AliEvent(); // Default constructor | |
21 | AliEvent(Int_t n); // Create an event to hold initially n tracks | |
c72198f1 | 22 | virtual ~AliEvent(); // Default destructor |
23 | AliEvent(AliEvent& evt); // Copy constructor | |
5f25234b | 24 | virtual TObject* Clone(char* name=""); // Make a deep copy and provide its pointer |
8e8e6c7f | 25 | virtual void SetOwner(Bool_t own=kTRUE);// Set ownership of all added objects |
387a745b | 26 | void SetDayTime(TTimeStamp& stamp); // Set the date and time stamp exactly as specified (1 ns accuracy) |
27 | void SetDayTime(TDatime& stamp); // Set date and time stamp interpreted as local time (1 s accuracy) | |
d16062ac | 28 | void SetRunNumber(Int_t run); // Set the run number |
29 | void SetEventNumber(Int_t evt); // Set the event number | |
da17f667 | 30 | void SetProjectile(Int_t a,Int_t z,Double_t pnuc,Int_t id=0); // Set projectile A, Z, p per nucleon and id |
4575fcea | 31 | Int_t GetProjectileA(); // Provide A value of the projectile |
32 | Int_t GetProjectileZ(); // Provide Z value of the projectile | |
33 | Double_t GetProjectilePnuc(); // Provide the projectile momentum value per nucleon | |
da17f667 | 34 | Int_t GetProjectileId(); // Provide the user defined particle ID of the projectile |
35 | void SetTarget(Int_t a,Int_t z,Double_t pnuc,Int_t id=0); // Set target A, Z, p per nucleon and id | |
4575fcea | 36 | Int_t GetTargetA(); // Provide A value of the target |
37 | Int_t GetTargetZ(); // Provide Z value of the target | |
38 | Double_t GetTargetPnuc(); // Provide the target momentum value per nucleon | |
da17f667 | 39 | Int_t GetTargetId(); // Provide the user defined particle ID of the target |
d16062ac | 40 | void Reset(); // Reset all values |
387a745b | 41 | TTimeStamp GetDayTime(); // Provide the date and time stamp |
d16062ac | 42 | Int_t GetRunNumber(); // Provide the run number |
43 | Int_t GetEventNumber(); // Provide the event number | |
1c01b4f8 | 44 | virtual void HeaderData(); // Print the event header information |
45 | virtual void Data(TString f="car"); // Print the event info within coordinate frame f | |
46 | void SetDevCopy(Int_t j); // (De)activate creation of private copies of the devices | |
47 | Int_t GetDevCopy(); // Provide DevCopy flag value | |
48 | void AddDevice(TObject& d); // Add a device to the event | |
49 | void AddDevice(TObject* d) { AddDevice(*d); } | |
50 | Int_t GetNdevices(); // Provide the number of devices | |
51 | void ShowDevices(); // Provide on overview of the available devices | |
52 | TObject* GetDevice(Int_t i); // Provide i-th device of the event | |
53 | TObject* GetDevice(TString name); // Provide device with name "name" | |
d16062ac | 54 | |
55 | protected: | |
387a745b | 56 | TTimeStamp fDaytime; // The date and time stamp |
7849a8ab | 57 | Int_t fRun; // The run number |
58 | Int_t fEvent; // The event number | |
4575fcea | 59 | Int_t fAproj; // The projectile A value |
60 | Int_t fZproj; // The projectile Z value | |
61 | Double_t fPnucProj; // The projectile momentum per nucleon | |
da17f667 | 62 | Int_t fIdProj; // User defined projectile particle ID |
4575fcea | 63 | Int_t fAtarg; // The target A value |
64 | Int_t fZtarg; // The target Z value | |
65 | Double_t fPnucTarg; // The target momentum per nucleon | |
da17f667 | 66 | Int_t fIdTarg; // User defined target particle ID |
1c01b4f8 | 67 | TObjArray* fDevices; // Array to hold the pointers to the various devices |
68 | Int_t fDevCopy; // Flag to denote creation of private copies of the devices | |
d16062ac | 69 | |
5f25234b | 70 | ClassDef(AliEvent,11) // Creation and investigation of an Alice physics event. |
d16062ac | 71 | }; |
72 | #endif |