]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
CDB Entry for TOF Reconstruction Parameters
authorarcelli <arcelli@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 23 Mar 2007 11:31:16 +0000 (11:31 +0000)
committerarcelli <arcelli@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 23 Mar 2007 11:31:16 +0000 (11:31 +0000)
TOF/AliTOFcalib.cxx
TOF/AliTOFcalib.h

index 5bd47102abef89e785e72054310efc0f258e5298..3e5fb0d9310aecee0e36f3a64603deb7736c8193 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
 $Log$
+Revision 1.11  2007/02/28 18:08:26  arcelli
+Add protection against failed retrieval of the CDB cal object
+
 Revision 1.10  2006/08/22 13:30:49  arcelli
 removal of effective c++ warnings (C.Zampolli)
 
@@ -76,6 +79,7 @@ author: Chiara Zampolli, zampolli@bo.infn.it
 #include "AliTOFChannel.h"
 #include "AliTOFGeometryV5.h"
 #include "AliTOFGeometry.h"
+#include "AliTOFRecoParam.h"
 
 extern TROOT *gROOT;
 extern TStyle *gStyle;
@@ -890,6 +894,36 @@ void AliTOFcalib::ReadSimParFromCDB(Char_t *sel, Int_t nrun)
 }
 //_____________________________________________________________________________
 
+//_____________________________________________________________________________
+void AliTOFcalib::WriteRecParOnCDB(Char_t *sel, Int_t minrun, Int_t maxrun, AliTOFRecoParam *param){
+  //Write reconstruction parameters to the CDB
+
+  AliCDBManager *man = AliCDBManager::Instance();
+  if(!man->IsDefaultStorageSet())man->SetDefaultStorage("local://$ALICE_ROOT");
+  AliCDBMetaData *md = new AliCDBMetaData();
+  md->SetResponsible("Silvia Arcelli");
+  Char_t *sel1 = "RecPar" ;
+  Char_t  out[100];
+  sprintf(out,"%s/%s",sel,sel1); 
+  AliCDBId id(out,minrun,maxrun);
+  man->Put(param,id,md);
+  delete md;
+}
+//_____________________________________________________________________________
+AliTOFRecoParam * AliTOFcalib::ReadRecParFromCDB(Char_t *sel, Int_t nrun)
+{
+  //Read reconstruction parameters from the CDB
+  AliCDBManager *man = AliCDBManager::Instance();
+  if(!man->IsDefaultStorageSet())man->SetDefaultStorage("local://$ALICE_ROOT");
+  Char_t *sel1 = "RecPar" ;
+  Char_t  out[100];
+  sprintf(out,"%s/%s",sel,sel1); 
+  AliCDBEntry *entry = man->Get(out,nrun);
+  AliTOFRecoParam *param=(AliTOFRecoParam*)entry->GetObject();
+  return param;
+}
+//_____________________________________________________________________________
+
 Int_t AliTOFcalib::GetIndex(Int_t *detId)
 {
   //Retrieve calibration channel index 
index a2ab38e46db530dd18f00a117c89f215a9ef8d3c..fbc620ea6d6a3879b10405187f5c85b00d2ec851 100644 (file)
@@ -19,6 +19,7 @@ class AliESD;
 
 class AliTOFCal;
 class AliTOFGeometry;
+class AliTOFRecoParam;
 
 class AliTOFcalib:public TTask{
 public:
@@ -53,6 +54,8 @@ public:
   void WriteParOnCDB(Char_t *sel, Int_t minrun, Int_t maxrun);
   Bool_t ReadParFromCDB(Char_t *sel, Int_t nrun);
   Int_t GetIndex(Int_t *detId); // Get channel index for Calibration 
+  void WriteRecParOnCDB(Char_t *sel, Int_t minrun, Int_t maxrun, AliTOFRecoParam *param);
+  AliTOFRecoParam * ReadRecParFromCDB(Char_t *sel, Int_t nrun);
 
  public: 
   class AliTOFArray : public TObject {