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

//////////////////////////////////////////////////////////////////////////////
//                          Class AliRunInfo                                //
//   Container class for all the information related to LHCstate, run type, //
//   active detectors, beam energy etc.                                     //
//   It is used together with the AliEventInfo in order to provide          //
//   the AliRecoParam object with                                           //
//   the necessary information so that it can decide which instance of      //
//   AliDetectorRecoParam objects to use in reconstruction one particular   //
//   event.                                                                 //
//                                                                          //
//   cvetan.cheshkov@cern.ch 12/06/2008                                     //
//////////////////////////////////////////////////////////////////////////////

#include <TObject.h>
#include <TObjString.h>

#include "AliDAQ.h"

class AliRunInfo : public TObject {

 public:
  AliRunInfo();
  AliRunInfo(const char *lhcState,
	     const char *beamType,
	     Float_t beamEnergy,
	     const char *runType,
	     UInt_t activeDetectors);
  virtual ~AliRunInfo() {}

  virtual void Print(Option_t */*option=""*/) const { Dump(); }

  const char *GetLHCState() const { return fLHCState.Data(); }
  const char *GetBeamType() const { return fBeamType.Data(); }
  Float_t     GetBeamEnergy() const { return fBeamEnergy; }
  const char *GetRunType() const { return fRunType.Data(); }
  UInt_t      GetDetectorMask() const { return fActiveDetectors; }
  const char *GetActiveDetectors() const { return AliDAQ::ListOfTriggeredDetectors(fActiveDetectors); }

  AliRunInfo(const AliRunInfo &evInfo);
  AliRunInfo& operator= (const AliRunInfo& evInfo);

 private:

  TString  fLHCState;       // state of the machine as provided by DCS and DAQ log-book (per run)
  TString  fBeamType;       // beam type for Alice
  Float_t  fBeamEnergy;     // beam energy (in GeV)
  TString  fRunType;        // run type accoring to ECS (per run)
  UInt_t   fActiveDetectors;// list of active detectors (per run)

  ClassDef(AliRunInfo,1)     // Run info class
};

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