#include "AliVCaloTrigger.h"
#include "TRefArray.h"
#include "AliTOFHeader.h"
+#include "AliVTrdTrack.h"
+
+class AliVfriendEvent;
class AliCentrality;
class AliEventplane;
class AliVVZERO;
class AliVZDC;
class AliVMFT; // AU
+class AliESDkink;
+class AliESDv0;
+class AliESDVertex;
+class AliVTrack;
class AliVEvent : public TObject {
+ private:
+ // disable some methods from AliVEvent interface
+
+ ULong64_t GetTriggerMaskNext50() const { return 0; }
public:
+ enum EDataLayoutType { kESD, kMC, kAOD, kMixed, kFlat };
enum EOfflineTriggerTypes {
kMB = BIT(0), // Minimum bias trigger, i.e. interaction trigger, offline SPD or V0 selection
kINT7 = BIT(1), // V0AND trigger, offline V0 selection
// Header
virtual AliVHeader* GetHeader() const = 0;
+ //
+ // field initialization
+ virtual Bool_t InitMagneticField() const {return kFALSE;}
// Delegated methods for fESDRun or AODHeader
// Tracks
virtual AliVParticle *GetTrack(Int_t i) const = 0;
+ virtual AliVTrack *GetVTrack(Int_t /*i*/) const {return NULL;}
//virtual Int_t AddTrack(const AliVParticle *t) = 0;
virtual Int_t GetNumberOfTracks() const = 0;
virtual Int_t GetNumberOfV0s() const = 0;
const TGeoHMatrix* GetEMCALMatrix(Int_t /*i*/) const {return NULL;}
virtual AliVCaloTrigger *GetCaloTrigger(TString /*calo*/) const {return NULL;}
-
- // Primary vertex
- virtual const AliVVertex *GetPrimaryVertex() const {return 0x0;}
virtual Bool_t IsPileupFromSPD(Int_t /*minContributors*/,
Double_t /*minZdist*/,
Double_t /*nSigmaZdist*/,
virtual void SetVZEROEqFactors(Float_t /* factors */[64]) const {return;}
virtual AliVZDC *GetZDCData() const = 0;
- ClassDef(AliVEvent,2) // base class for AliEvent data
+ virtual Int_t GetNumberOfTrdTracks() const { return 0; }
+ virtual AliVTrdTrack* GetTrdTrack(Int_t /* iTrack */) const { return 0x0; }
+
+ virtual Int_t GetNumberOfESDTracks() const { return 0; }
+ virtual Int_t GetEventNumberInFile() const {return 0;}
+
+ //used in calibration:
+ virtual Int_t GetV0(AliESDv0&, Int_t /*iv0*/) const {return 0;}
+ virtual UInt_t GetTimeStamp() const { return 0; }
+ virtual AliVfriendEvent* FindFriend() const { return 0; }
+ virtual UInt_t GetEventSpecie() const { return 0; }
+ virtual AliESDkink* GetKink(Int_t /*i*/) const { return NULL; }
+ virtual Int_t GetNumberOfKinks() const { return 0; }
+
+ // Primary vertex
+ virtual const AliVVertex *GetPrimaryVertex() const {return 0x0;}
+ //virtual const AliVVertex *GetPrimaryVertexSPD() const {return 0x0;}
+ //virtual const AliVVertex *GetPrimaryVertexTPC() const {return 0x0;}
+ //virtual const AliVVertex *GetPrimaryVertexTracks() const {return 0x0;}
+
+ virtual Int_t GetPrimaryVertex( AliESDVertex & ) const {return 0;}
+ virtual Int_t GetPrimaryVertexTPC( AliESDVertex & ) const {return 0;}
+ virtual Int_t GetPrimaryVertexSPD( AliESDVertex & ) const {return 0;}
+ virtual Int_t GetPrimaryVertexTracks( AliESDVertex & ) const {return 0;}
+
+ virtual void ConnectTracks() {}
+ virtual EDataLayoutType GetDataLayoutType() const = 0;
+ const char* Whoami();
+
+ ClassDef(AliVEvent, 3) // base class for AliEvent data
};
#endif