2 #ifndef ALIMIXEDEVENT_H
3 #define ALIMIXEDEVENT_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 //-------------------------------------------------------------------------
11 // Class AliMixedEvent
12 // VEvent which is the container of several VEvents
13 // Use Case: Event Mixing
14 // Origin: Andreas Morsch, CERN, Andreas.Morsch@cern.ch
15 //-------------------------------------------------------------------------
17 #include "AliVEvent.h"
20 class AliMixedEvent : public AliVEvent {
25 virtual ~AliMixedEvent() {Reset();}
26 AliMixedEvent(const AliMixedEvent& vEvnt);
27 AliMixedEvent& operator=(const AliMixedEvent& vEvnt);
29 // Services from VEvent
30 virtual void AddObject(TObject* /*obj*/) {;}
31 virtual TObject* FindListObject(const char* /*name*/) {return 0;}
32 virtual TList* GetList() const {return 0;}
33 virtual void CreateStdContent() {;}
34 virtual void GetStdContent() {;}
35 virtual void ReadFromTree(TTree* /*tree*/, Option_t* /*opt*/) {;}
36 virtual void WriteToTree(TTree* /*tree*/) const {;}
37 virtual void SetStdNames() {;}
38 virtual void Print(Option_t * /*option*/) const {;}
40 virtual void AddEvent(AliVEvent* evt);
45 virtual AliVHeader* GetHeader() const {return 0;}
47 // Delegated methods for fESDRun or AODHeader
49 virtual void SetRunNumber(Int_t /*n*/) {;}
50 virtual void SetPeriodNumber(UInt_t /*n*/) {;}
51 virtual void SetMagneticField(Double_t /*mf*/) {;}
53 virtual Int_t GetRunNumber() const {return -999 ;}
54 virtual UInt_t GetPeriodNumber() const {return 0 ;}
55 virtual Double_t GetMagneticField() const {return -999.;}
57 virtual Double_t GetDiamondX() const {return -999.;}
58 virtual Double_t GetDiamondY() const {return -999.;}
59 virtual void GetDiamondCovXY(Float_t cov[3]) const
60 {cov[0]=-999.; return;}
62 // Delegated methods for fHeader
63 virtual void SetOrbitNumber(UInt_t /*n*/) {;}
64 virtual void SetBunchCrossNumber(UShort_t /*n*/) {;}
65 virtual void SetEventType(UInt_t /*eventType*/) {;}
66 virtual void SetTriggerMask(ULong64_t /*n*/) {;}
67 virtual void SetTriggerCluster(UChar_t /*n*/) {;}
69 virtual UInt_t GetOrbitNumber() const {return 0;}
70 virtual UShort_t GetBunchCrossNumber() const {return 0;}
71 virtual UInt_t GetEventType() const {return 0;}
72 virtual ULong64_t GetTriggerMask() const {return 0;}
73 virtual UChar_t GetTriggerCluster() const {return 0;}
75 virtual Double_t GetZDCN1Energy() const {return -999.;}
76 virtual Double_t GetZDCP1Energy() const {return -999.;}
77 virtual Double_t GetZDCN2Energy() const {return -999.;}
78 virtual Double_t GetZDCP2Energy() const {return -999.;}
79 virtual Double_t GetZDCEMEnergy(Int_t /*i*/) const {return -999.;}
82 virtual AliVParticle *GetTrack(Int_t i) const;
83 virtual Int_t GetNumberOfTracks() const {return fNumberOfTracks;}
84 virtual Int_t GetNumberOfV0s() const {return -999;}
85 virtual Int_t EventIndex(Int_t itrack);
88 virtual const AliVVertex *GetPrimaryVertex() const {return 0;}
90 TList fEventList; //! List of Events
91 Int_t fNEvents; //! Number of Events
92 Int_t fNumberOfTracks; //! Total number of tracks
93 Int_t* fNTracksCumul; //! Cumulant
95 ClassDef(AliMixedEvent, 0) // Container for mixed events