]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliVEvent.h
AODZDC introduced.
[u/mrichter/AliRoot.git] / STEER / AliVEvent.h
index a94db103196249338cc0921f3e22d1f15f8aed31..2e0bfe76440ce8300111c137261afba8d3f84b85 100644 (file)
 #include "AliVCluster.h"
 #include "AliVCaloCells.h"
 #include "TRefArray.h"
+class AliCentrality;
+class AliEventplane;
+class AliVVZERO;
+class AliVZDC;
 
 class AliVEvent : public TObject {
 
@@ -29,8 +33,17 @@ public:
   enum EOfflineTriggerTypes { 
       kMB           = BIT(0), // Minimum bias trigger, i.e. interaction trigger, offline SPD or V0 selection
                               // empty slot
+      kINT7         = BIT(1), // V0AND trigger, offline V0 selection
       kMUON         = BIT(2), // Muon trigger, offline SPD or V0 selection
       kHighMult     = BIT(3), // High-multiplicity trigger (threshold defined online), offline SPD or V0 selection
+      kEMC1         = BIT(4), // EMCAL trigger
+      kCINT5        = BIT(5), // Minimum bias trigger without SPD. i.e. interaction trigger, offline V0 selection
+      kCMUS5        = BIT(6), // Muon trigger, offline V0 selection
+      kMUSH7        = BIT(7), // Muon trigger: high pt, single muon, offline V0 selection, CINT7 suite
+      kMUL7         = BIT(8), // Muon trigger: like sign dimuon, offline V0 selection, CINT7 suite
+      kMUU7         = BIT(9), // Muon trigger, unlike sign dimuon, offline V0 selection, CINT7 suite
+      kEMC7         = BIT(10), // EMCAL trigger, CINT7 suite
+      kFastOnly     = BIT(30), // The fast cluster fired. This bit is set in to addition another trigger bit, e.g. kMB
       kUserDefined  = BIT(31), // Set when custom trigger classes are set in AliPhysicsSelection, offline SPD or V0 selection
       kAny          = 0xffffffff // to accept any trigger
   };
@@ -126,68 +139,15 @@ public:
   virtual Bool_t IsPileupFromSPDInMultBins() const {
     return kFALSE;    
   }
-
-  virtual Int_t        EventIndex(Int_t itrack) const = 0;
-  virtual Int_t        EventIndexForCaloCluster(Int_t iclu) const= 0;
-  virtual Int_t        EventIndexForPHOSCell(Int_t icell) const= 0;
-  virtual Int_t        EventIndexForEMCALCell(Int_t icell) const= 0;  
-
-  //---------- end of new stuff
-
-
-  /*  to be considered to go in here be implemented
-
-  void SetPrimaryVertex(const AliESDVertex *vertex) {
-    *fPrimaryVertex = *vertex;
-    fPrimaryVertex->SetName("PrimaryVertex");// error prone use class wide names?
-  }
-
-  void SetMultiplicity(const AliMultiplicity *mul) {
-    *fSPDMult = *mul;
-    // CKB 
-    //     new (&fSPDMult) AliMultiplicity(*mul);
-  }
-  const AliMultiplicity *GetMultiplicity() const {return fSPDMult;}
-  
-  
-  AliESDMuonTrack *GetMuonTrack(Int_t i) const {
-    return (AliESDMuonTrack *)fMuonTracks->UncheckedAt(i);
-  }
-  void AddMuonTrack(const AliESDMuonTrack *t) {
-    TClonesArray &fmu = *fMuonTracks;
-    new(fmu[fMuonTracks->GetEntriesFast()]) AliESDMuonTrack(*t);
-  }
-
-  AliESDv0 *GetV0(Int_t i) const {
-    return (AliESDv0*)fV0s->UncheckedAt(i);
-  }
-  Int_t AddV0(const AliESDv0 *v);
-
-  AliESDcascade *GetCascade(Int_t i) const {
-    return (AliESDcascade *)fCascades->UncheckedAt(i);
-  }
-  void AddCascade(const AliESDcascade *c) {
-    TClonesArray &fc = *fCascades;
-    new(fc[fCascades->GetEntriesFast()]) AliESDcascade(*c);
-  }
-
-  AliESDkink *GetKink(Int_t i) const {
-    return (AliESDkink *)fKinks->UncheckedAt(i);
-  }
-  Int_t AddKink(const AliESDkink *c);
-
-  AliESDCaloCluster *GetCaloCluster(Int_t i) const {
-    return (AliESDCaloCluster *)fCaloClusters->UncheckedAt(i);
-  }
-  Int_t AddCaloCluster(const AliESDCaloCluster *c);
-
-  Int_t GetNumberOfMuonTracks() const {return fMuonTracks->GetEntriesFast();}
-  Int_t GetNumberOfV0s()      const {return fV0s->GetEntriesFast();}
-  Int_t GetNumberOfCascades() const {return fCascades->GetEntriesFast();}
-  Int_t GetNumberOfKinks() const {return fKinks->GetEntriesFast();}
-  Int_t GetNumberOfCaloClusters() const {return fCaloClusters->GetEntriesFast();}
-
-  */
+  virtual AliCentrality* GetCentrality()                          = 0;
+  virtual AliEventplane* GetEventplane()                          = 0;
+  virtual Int_t        EventIndex(Int_t itrack)             const = 0;
+  virtual Int_t        EventIndexForCaloCluster(Int_t iclu) const = 0;
+  virtual Int_t        EventIndexForPHOSCell(Int_t icell)   const = 0;
+  virtual Int_t        EventIndexForEMCALCell(Int_t icell)  const = 0;  
+
+  virtual AliVVZERO *GetVZEROData() const = 0;   
+  virtual AliVZDC   *GetZDCData() const = 0;
 
   ClassDef(AliVEvent,1)  // base class for AliEvent data
 };