]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIHEADER_H | |
2 | #define ALIHEADER_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | #include <TObject.h> | |
9 | ||
10 | class AliStack; | |
11 | class AliGenEventHeader; | |
12 | ||
13 | class AliHeader : public TObject { | |
14 | public: | |
15 | AliHeader(); | |
16 | AliHeader(const AliHeader& head); | |
17 | AliHeader(Int_t run, Int_t event); | |
18 | AliHeader(Int_t run, Int_t eventSerialNr, Int_t evNrInRun); | |
19 | virtual ~AliHeader() {} | |
20 | ||
21 | virtual void Reset(Int_t run, Int_t event); | |
22 | virtual void Reset(Int_t run, Int_t eventSerialNr, Int_t evNrInRun); | |
23 | ||
24 | virtual void SetRun(Int_t run) {fRun = run;} | |
25 | virtual Int_t GetRun() const {return fRun;} | |
26 | ||
27 | virtual void SetNprimary(Int_t nprimary) {fNprimary = nprimary;} | |
28 | virtual Int_t GetNprimary() const {return fNprimary;} | |
29 | virtual Int_t GetNsecondary() const {return fNtrack-fNprimary;} | |
30 | ||
31 | virtual void SetNvertex(Int_t vertex) {fNvertex = vertex;} | |
32 | virtual Int_t GetNvertex() const {return fNvertex;} | |
33 | ||
34 | virtual void SetNtrack(Int_t ntrack) {fNtrack = ntrack;} | |
35 | virtual Int_t GetNtrack() const {return fNtrack;} | |
36 | ||
37 | virtual void SetEvent(Int_t event) {fEvent = event;} | |
38 | virtual Int_t GetEvent() const {return fEvent;} | |
39 | ||
40 | virtual void SetEventNrInRun(Int_t event) {fEventNrInRun = event;} | |
41 | virtual Int_t GetEventNrInRun() const {return fEventNrInRun;} | |
42 | ||
43 | virtual AliStack* Stack() const; | |
44 | virtual void SetStack(AliStack* stack); | |
45 | ||
46 | virtual void SetGenEventHeader(AliGenEventHeader* header); | |
47 | virtual AliGenEventHeader* GenEventHeader() const; | |
48 | ||
49 | virtual void Print(const char *opt=0) const; | |
50 | ||
51 | AliHeader& operator=(const AliHeader& head) | |
52 | {head.Copy(*this); return *this;} | |
53 | ||
54 | protected: | |
55 | ||
56 | void Copy(AliHeader& head) const; | |
57 | ||
58 | Int_t fRun; //Run number | |
59 | Int_t fNvertex; //Number of vertices | |
60 | Int_t fNprimary; //Number of primary tracks | |
61 | Int_t fNtrack; //Number of tracks | |
62 | Int_t fEvent; //Event number (serial in the file) | |
63 | Int_t fEventNrInRun; //Unique Event number within the run | |
64 | AliStack *fStack; //Pointer to stack | |
65 | AliGenEventHeader* fGenHeader; //Event Header for Generator | |
66 | ||
67 | ClassDef(AliHeader,2) //Alice event header | |
68 | }; | |
69 | ||
70 | #endif |