# EventHeader

class description - source file - inheritance tree

## class EventHeader

        public:

                          EventHeader()
                          EventHeader(const EventHeader&)
                  virtual ~EventHeader()
           static TClass* Class()
                    Int_t GetDate() const
                    Int_t GetEvtNum() const
                    Int_t GetRun() const
          virtual TClass* IsA() const
                     void Set(Int_t i, Int_t r, Int_t d)
             virtual void ShowMembers(TMemberInspector& insp, char* parent)
             virtual void Streamer(TBuffer& b)
                     void StreamerNVirtual(TBuffer& b)

### Data Members

        private:

          Int_t fEvtNum
          Int_t fRun
          Int_t fDate

## Class Description

                           Event and Track classes
                           =======================

      The Event class is a naive/simple example of an event structure.
         public:
            char           fType[20];
            Int_t          fNtrack;
            Int_t          fNseg;
            Int_t          fNvertex;
            UInt_t         fFlag;
            Float_t        fTemperature;
            Int_t          fMeasures[10];
            Float_t        fMatrix[4][4];
            Float_t       *fClosestDistance; //[fNvertex] indexed array!
            EventHeader    fEvtHdr;
            TClonesArray  *fTracks;
            TRefArray     *fHighPt;            //array of High Pt tracks only
            TRefArray     *fMuons;             //array of Muon tracks only
            TRef           fLastTrack;         //pointer to last track
            TRef           fHistoWeb;          //EXEC:GetHistoWeb reference to an histogram in a TWebFile
            TH1F          *fH;

       The EventHeader class has 3 data members (integers):
         public:
            Int_t          fEvtNum;
            Int_t          fRun;
            Int_t          fDate;

       The Event data member fTracks is a pointer to a TClonesArray.
       It is an array of a variable number of tracks per event.
       Each element of the array is an object of class Track with the members:
         private:
            Float_t      fPx;           //X component of the momentum
            Float_t      fPy;           //Y component of the momentum
            Float_t      fPz;           //Z component of the momentum
            Float_t      fRandom;       //A random track quantity
            Float_t      fMass2;        //The mass square of this particle
            Float_t      fBx;           //X intercept at the vertex
            Float_t      fBy;           //Y intercept at the vertex
            Float_t      fMeanCharge;   //Mean charge deposition of all hits of this track
            Float_t      fXfirst;       //X coordinate of the first point
            Float_t      fXlast;        //X coordinate of the last point
            Float_t      fYfirst;       //Y coordinate of the first point
            Float_t      fYlast;        //Y coordinate of the last point
            Float_t      fZfirst;       //Z coordinate of the first point
            Float_t      fZlast;        //Z coordinate of the last point
            Float_t      fCharge;       //Charge of this track
            Float_t      fVertex[3];    //Track vertex position
            Int_t        fNpoint;       //Number of points for this track
            Short_t      fValid;        //Validity criterion

       An example of a batch program to use the Event/Track classes is given
       in this directory: MainEvent.
       Look also in the same directory at the following macros:
         - eventa.C  an example how to read the tree
         - eventb.C  how to read events conditionally

       During the processing of the event (optionally) also a large number
       of histograms can be filled. The creation and handling of the
       histograms is taken care of by the HistogramManager class.

### Inline Functions

            EventHeader EventHeader()
                   void Set(Int_t i, Int_t r, Int_t d)
                  Int_t GetEvtNum() const
                  Int_t GetRun() const
                  Int_t GetDate() const
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)
            EventHeader EventHeader(const EventHeader&)
                   void ~EventHeader()

Author: Rene Brun 19/08/96
Last update: root/test:$Name: $:$Id: Event.cxx,v 1.22 2003/08/23 00:08:13 rdm Exp $