]>
Commit | Line | Data |
---|---|---|
d88f97cc | 1 | #ifndef ALIJET_H |
2 | #define ALIJET_H | |
3da30618 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
f531a546 | 6 | // $Id$ |
d88f97cc | 7 | |
d88f97cc | 8 | #include <math.h> |
9 | ||
10 | #include "TObject.h" | |
11 | #include "TObjArray.h" | |
12 | ||
13 | #include "Ali4Vector.h" | |
14 | #include "AliTrack.h" | |
15 | ||
16 | class AliJet : public TObject,public Ali4Vector | |
17 | { | |
18 | public: | |
1c01b4f8 | 19 | AliJet(); // Default constructor |
20 | AliJet(Int_t n); // Create a Jet to hold initially n Tracks | |
21 | virtual ~AliJet(); // Default destructor | |
22 | AliJet(AliJet& j); // Copy constructor | |
23 | virtual void SetOwner(Bool_t own=kTRUE); // Set ownership of all added objects | |
24 | virtual void Reset(); // Reset all values | |
25 | void AddTrack(AliTrack& t); // Add a track to the jet | |
1fbffa23 | 26 | void AddTrack(AliTrack* t) { AddTrack(*t); } |
1c01b4f8 | 27 | virtual void Data(TString f="car"); // Print jet information in coordinate frame f |
28 | virtual void List(TString f="car"); // Print jet prim. track information for coord. frame f | |
29 | virtual void ListAll(TString f="car"); // Print jet prim. and decay track information for coord. frame f | |
30 | Double_t GetEnergy(); // Provide the total jet energy | |
31 | Double_t GetMomentum(); // Provide the value of the total jet 3-momentum | |
32 | Ali3Vector Get3Momentum(); // Provide the total jet 3-momentum | |
33 | Double_t GetInvmass(); // Provide the invariant mass | |
34 | Float_t GetCharge(); // Provide the total charge of the jet | |
35 | Int_t GetNtracks(); // Return the number of tracks in the jet | |
36 | AliTrack* GetTrack(Int_t i); // Provide i-th track of the jet (1=first track) | |
37 | AliTrack* GetIdTrack(Int_t id); // Provide the track with user identifier "id" | |
38 | Double_t GetPt(); // Provide trans. momentum w.r.t. z-axis | |
39 | Double_t GetPl(); // Provide long. momentum w.r.t. z-axis | |
40 | Double_t GetEt(); // Provide trans. energy w.r.t. z-axis | |
41 | Double_t GetEl(); // Provide long. energy w.r.t. z-axis | |
42 | Double_t GetMt(); // Provide trans. mass w.r.t. z-axis | |
43 | Double_t GetRapidity(); // Provide rapidity value w.r.t. z-axis | |
44 | void SetTrackCopy(Int_t j); // (De)activate creation of private copies in fTracks | |
45 | Int_t GetTrackCopy(); // Provide TrackCopy flag value | |
46 | void SetId(Int_t id); // Set the user defined identifier | |
47 | Int_t GetId(); // Provide the user defined identifier | |
d88f97cc | 48 | |
49 | protected: | |
1fbffa23 | 50 | void Init(); // Initialisation of pointers etc... |
51 | void SetNtinit(Int_t n=2); // Set the initial max. number of tracks for this Jet | |
52 | void AddTrack(AliTrack& t,Int_t copy); // Internal memberfunction to add a track to the jet | |
53 | void AddTrack(AliTrack* t,Int_t copy) { AddTrack(*t,copy); } | |
54 | Int_t fNtinit; // The initial max. number of tracks for this jet | |
55 | Int_t fNtmax; // The maximum number of tracks for this Jet | |
56 | Float_t fQ; // The total charge of the jet | |
57 | Int_t fNtrk; // The number of tracks in the jet | |
58 | TObjArray* fTracks; // Array to hold the pointers to the tracks of the jet | |
59 | Int_t fTrackCopy; // Flag to denote creation of private copies in fTracks | |
60 | Int_t fUserId; // The user defined identifier | |
d88f97cc | 61 | |
1c01b4f8 | 62 | ClassDef(AliJet,5) // Creation and investigation of a jet of particle tracks. |
d88f97cc | 63 | }; |
64 | #endif |