ROOT logo
#ifndef AliVHeader_H
#define AliVHeader_H
/* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id$ */

//-------------------------------------------------------------------------
//     Event header base class
//     Author: Markus Oldenburg, CERN
//-------------------------------------------------------------------------

#include <TNamed.h>
#include <TBits.h>
class TList;
class AliVHeader : public TNamed {

 public :
  AliVHeader(); 
  virtual ~AliVHeader() { };
  AliVHeader(const AliVHeader& evt); 
  AliVHeader& operator=(const AliVHeader& evt);
  
  virtual UShort_t  GetBunchCrossNumber()   const = 0;
  virtual UInt_t    GetOrbitNumber()        const = 0;
  virtual UInt_t    GetPeriodNumber()       const = 0;
  virtual ULong64_t GetTriggerMask()        const = 0;
  virtual UChar_t   GetTriggerCluster()     const = 0;
  virtual UInt_t    GetEventType()          const = 0;
  virtual TList*    GetCocktailHeaders()    {return 0;}
  /*
  virtual void SetBunchCrossNumber(UShort_t nBx)   = 0;
  virtual void SetOrbitNumber(UInt_t nOr)          = 0;
  virtual void SetPeriodNumber(UInt_t nPer)        = 0;
  virtual void SetTriggerMask(ULong64_t trigMsk)   = 0;
  virtual void SetTriggerCluster(UChar_t trigClus) = 0;
  virtual void SetEventType(UInt_t evttype)        = 0;
  */
  virtual UInt_t   GetL0TriggerInputs() const {return 0;}
  virtual UInt_t   GetL1TriggerInputs() const {return 0;}
  virtual UShort_t GetL2TriggerInputs() const {return 0;}
  virtual TBits  GetIRInt2InteractionMap() const { static TBits dummy; return dummy; }
  virtual TBits  GetIRInt1InteractionMap() const { static TBits dummy; return dummy; }

  virtual Int_t  GetIRInt2ClosestInteractionMap()                    const {return 0;}
  virtual Int_t  GetIRInt1ClosestInteractionMap(Int_t =3/*gap = 3*/) const {return 0;}


  virtual void Print(Option_t* option = "") const  = 0;
    
  ClassDef(AliVHeader,1);
};

#endif
 AliVHeader.h:1
 AliVHeader.h:2
 AliVHeader.h:3
 AliVHeader.h:4
 AliVHeader.h:5
 AliVHeader.h:6
 AliVHeader.h:7
 AliVHeader.h:8
 AliVHeader.h:9
 AliVHeader.h:10
 AliVHeader.h:11
 AliVHeader.h:12
 AliVHeader.h:13
 AliVHeader.h:14
 AliVHeader.h:15
 AliVHeader.h:16
 AliVHeader.h:17
 AliVHeader.h:18
 AliVHeader.h:19
 AliVHeader.h:20
 AliVHeader.h:21
 AliVHeader.h:22
 AliVHeader.h:23
 AliVHeader.h:24
 AliVHeader.h:25
 AliVHeader.h:26
 AliVHeader.h:27
 AliVHeader.h:28
 AliVHeader.h:29
 AliVHeader.h:30
 AliVHeader.h:31
 AliVHeader.h:32
 AliVHeader.h:33
 AliVHeader.h:34
 AliVHeader.h:35
 AliVHeader.h:36
 AliVHeader.h:37
 AliVHeader.h:38
 AliVHeader.h:39
 AliVHeader.h:40
 AliVHeader.h:41
 AliVHeader.h:42
 AliVHeader.h:43
 AliVHeader.h:44
 AliVHeader.h:45
 AliVHeader.h:46
 AliVHeader.h:47
 AliVHeader.h:48
 AliVHeader.h:49
 AliVHeader.h:50
 AliVHeader.h:51
 AliVHeader.h:52
 AliVHeader.h:53
 AliVHeader.h:54