]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSCalibData.h
add setters
[u/mrichter/AliRoot.git] / PHOS / AliPHOSCalibData.h
index 5844012edb360695df8d8d3a5c2d06896666a503..cd79689c99221b1ff8b72943770d161a380938aa 100644 (file)
 
 #include "TNamed.h"
 #include "TString.h"
-#include "AliPHOSEmcCalibData.h"
-#include "AliPHOSCpvCalibData.h"
-#include "AliCDBMetaData.h"
+
+class AliPHOSEmcCalibData;
+class AliPHOSCpvCalibData;
+class AliPHOSEmcBadChannelsMap;
+class AliCDBMetaData;
 
 class AliPHOSCalibData: public TNamed {
 
  public:
   AliPHOSCalibData();
   AliPHOSCalibData(Int_t runNumber);
+  AliPHOSCalibData(AliPHOSCalibData & phosCDB);
   virtual ~AliPHOSCalibData();
+
+  AliPHOSCalibData & operator = (const AliPHOSCalibData & rhs);
+
   void Reset();
   virtual void Print(Option_t *option = "") const; 
+
+  AliPHOSEmcCalibData *GetCalibDataEmc() const {return fCalibDataEmc;}
+  AliPHOSCpvCalibData *GetCalibDataCpv() const {return fCalibDataCpv;}
   
   void CreateNew();
-  void RandomEmc();
-  void RandomCpv();
+  void RandomEmc(Float_t ccMin=0.5   , Float_t ccMax=1.5);
+  void RandomCpv(Float_t ccMin=0.0009, Float_t ccMax=0.0015);
 
+  //----First EMC parameters---------
   Float_t GetADCchannelEmc(Int_t module, Int_t column, Int_t row) const;
+  void    SetADCchannelEmc(Int_t module, Int_t column, Int_t row, Float_t value);
+
   Float_t GetADCpedestalEmc(Int_t module, Int_t column, Int_t row) const;
+  void    SetADCpedestalEmc(Int_t module, Int_t column, Int_t row, Float_t value);
+
+  Float_t GetHighLowRatioEmc(Int_t module, Int_t column, Int_t row) const ;
+  void    SetHighLowRatioEmc(Int_t module, Int_t column, Int_t row, Float_t value) ;
   
-  void SetADCchannelEmc(Int_t module, Int_t column, Int_t row, Float_t value);
-  void SetADCpedestalEmc(Int_t module, Int_t column, Int_t row, Float_t value);
+  Float_t GetTimeShiftEmc(Int_t module, Int_t column, Int_t row) const;
+  void    SetTimeShiftEmc(Int_t module, Int_t column, Int_t row, Float_t value) ;
 
+  Int_t  GetAltroOffsetEmc(Int_t module, Int_t column, Int_t row) const;
+  void   SetAltroOffsetEmc(Int_t module, Int_t column, Int_t row, Int_t value) ;
+
+  Float_t GetSampleTimeStep() const ;
+  void    SetSampleTimeStep(Float_t step) ;
+
+  //----Now CPV parameters-----------
   Float_t GetADCchannelCpv(Int_t module, Int_t column, Int_t row) const;
+  void    SetADCchannelCpv(Int_t module, Int_t column, Int_t row, Float_t value);
+
   Float_t GetADCpedestalCpv(Int_t module, Int_t column, Int_t row) const;
-  
-  void SetADCchannelCpv(Int_t module, Int_t column, Int_t row, Float_t value);
-  void SetADCpedestalCpv(Int_t module, Int_t column, Int_t row, Float_t value);
+  void    SetADCpedestalCpv(Int_t module, Int_t column, Int_t row, Float_t value);
+
+  //----Bad channels map-------------
+  Int_t  GetNumOfEmcBadChannels() const;
+  Bool_t IsBadChannelEmc(Int_t module, Int_t col, Int_t row) const; 
+  void   EmcBadChannelIds(Int_t *badIds=0); 
 
-  void SetDB(const char* db) {fDB=db;}
   void SetEmcDataPath(const char* emcPath) {fEmcDataPath=emcPath;}
   void SetCpvDataPath(const char* cpvPath) {fCpvDataPath=cpvPath;}
 
   Bool_t WriteEmc(Int_t firstRun, Int_t lastRun, AliCDBMetaData *md);
   Bool_t WriteCpv(Int_t firstRun, Int_t lastRun, AliCDBMetaData *md);
+  Bool_t WriteEmcBadChannelsMap(Int_t firstRun, Int_t lastRun, AliCDBMetaData *md);
 
+  //----Decalibration factors for simulation-------------
+  Float_t GetADCchannelEmcDecalib(Int_t module, Int_t column, Int_t row) const;
+  void    SetADCchannelEmcDecalib(Int_t module, Int_t column, Int_t row, Float_t value);  
+  
  private:
 
   AliPHOSEmcCalibData* fCalibDataEmc; // EMC calibration data
   AliPHOSCpvCalibData* fCalibDataCpv; // CPV calibration data
+  AliPHOSEmcBadChannelsMap* fEmcBadChannelsMap; // EMC bad channels map
   
-  TString fDB;
   TString fEmcDataPath; // path to EMC calibration data
   TString fCpvDataPath; // path to CPV calibration data
+  TString fEmcBadChannelsMapPath; // path to bad channels map
 
-  //
-  ClassDef(AliPHOSCalibData,1)    // PHOS Calibration data
+  ClassDef(AliPHOSCalibData,6)    // PHOS Calibration data
 };
 
 #endif