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

///////////////////////////////////////////////////////////////////////////////
//                                                                           //
// Steering Class for reconstruction parameters                              //
// Revision: cvetan.cheshkov@cern.ch 12/06/2008                              //
// Its structure has been revised and it is interfaced to AliRunInfo and     //
// AliEventInfo.                                                             //
//                                                                           //
///////////////////////////////////////////////////////////////////////////////


#include "TObject.h"

class AliDetectorRecoParam;
class AliRunInfo;
class AliEventInfo;
class THashTable;

class AliRecoParam : public TObject
{

 public: 
  AliRecoParam();
  virtual ~AliRecoParam();  
  //
  enum {
    kNSpecies = 5,   // number of event species
    kNDetectors = 19 // number of detectors from AliReconstruction + 1 for GRP
  };
  enum EventSpecie_t {kDefault = 1,
		      kLowMult = 2,
		      kHighMult = 4,
		      kCosmic = 8,
		      kCalib = 16};

  static Int_t                  AConvert(EventSpecie_t es) ; 
  static EventSpecie_t          Convert(Int_t ies) ; 
  static EventSpecie_t          ConvertIndex(Int_t index) ;

  virtual void                  Print(Option_t *option="") const;
  const TObjArray              *GetDetRecoParamArray(Int_t iDet) const { return fDetRecoParams[iDet]; }
  void                          SetEventSpecie(const AliRunInfo*runInfo, const AliEventInfo &evInfo,
					       const THashTable*cosmicTriggersList);
  EventSpecie_t                 GetEventSpecie() const { return fEventSpecie; }
  static const char*            GetEventSpecieName(EventSpecie_t es);
  static const char*            GetEventSpecieName(Int_t esIndex);
  const char*                   PrintEventSpecie() const;
  const AliDetectorRecoParam   *GetDetRecoParam(Int_t iDet) const;
  void                          AddDetRecoParam(Int_t iDet, AliDetectorRecoParam* param);
  Bool_t                        AddDetRecoParamArray(Int_t iDet, TObjArray* parArray);

  AliRecoParam(const AliRecoParam&);
  AliRecoParam& operator=(const AliRecoParam&);


private:

  Int_t      fDetRecoParamsIndex[kNSpecies][kNDetectors]; // index to fDetRecoParams arrays
  TObjArray *fDetRecoParams[kNDetectors];   // array with reconstruction-parameter objects for all detectors
  EventSpecie_t fEventSpecie;               // current event specie
  static TString fkgEventSpecieName[] ; // the names of the event species
  ClassDef(AliRecoParam, 6)
};


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