]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Access to TRD/Calib/DCS for number of time bins and filter type
authorcblume <cblume@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 11 Nov 2009 08:55:36 +0000 (08:55 +0000)
committercblume <cblume@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 11 Nov 2009 08:55:36 +0000 (08:55 +0000)
TRD/AliTRDcalibDB.cxx
TRD/AliTRDcalibDB.h

index 61080eaca3e82df3c3facd55b22eb820c8ab181e..6f37c7c12f8fbc306d7876b31a9f05c57493e1d8 100644 (file)
@@ -29,6 +29,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 
 #include <TClonesArray.h>
+#include <TObjArray.h>
 
 #include "AliCDBManager.h"
 #include "AliCDBEntry.h"
@@ -39,6 +40,7 @@
 #include "Cal/AliTRDCalROC.h"
 #include "Cal/AliTRDCalPad.h"
 #include "Cal/AliTRDCalDet.h"
+#include "Cal/AliTRDCalDCS.h"
 #include "Cal/AliTRDCalFEE.h"
 #include "Cal/AliTRDCalPID.h"
 #include "Cal/AliTRDCalMonitoring.h"
@@ -246,6 +248,9 @@ const TObject *AliTRDcalibDB::GetCachedCDBObject(Int_t id)
     case kIDFEE : 
       return CacheCDBEntry(kIDFEE               ,"TRD/Calib/FEE"); 
       break;
+    case kIDDCS :
+      return CacheCDBEntry(kIDDCS               ,"TRD/Calib/DCS");
+      break;
     case kIDPIDNN : 
       return CacheCDBEntry(kIDPIDNN             ,"TRD/Calib/PIDNN");
     case kIDPIDLQ : 
@@ -749,6 +754,39 @@ Int_t AliTRDcalibDB::GetNumberOfTimeBins()
 
 }
 
+//_____________________________________________________________________________
+Int_t AliTRDcalibDB::GetNumberOfTimeBinsDCS(){
+  //
+  // Returns Number of time bins from the DCS
+  //
+  const TObjArray *dcsArr = dynamic_cast<const TObjArray *>(GetCachedCDBObject(kIDDCS));
+  if(!dcsArr){
+    return -1;
+  }
+  const AliTRDCalDCS *calDCS = dynamic_cast<const AliTRDCalDCS *>(dcsArr->At(1)); // Take EOR
+  
+  if(!calDCS){
+    return -1;
+  }
+  return calDCS->GetGlobalNumberOfTimeBins();
+}
+
+//_____________________________________________________________________________
+void AliTRDcalibDB::GetFilterType(TString &filterType){
+  const TObjArray *dcsArr = dynamic_cast<const TObjArray *>(GetCachedCDBObject(kIDDCS));
+  if(!dcsArr){
+    filterType = "";
+    return;
+  }
+  const AliTRDCalDCS *calDCS = dynamic_cast<const AliTRDCalDCS *>(dcsArr->At(1)); // Take EOR
+  
+  if(!calDCS){
+    filterType = "";
+    return;
+  } 
+  filterType = calDCS->GetGlobalFilterType();
+}
+
 //_____________________________________________________________________________
 Char_t AliTRDcalibDB::GetPadStatus(Int_t det, Int_t col, Int_t row)
 {
index d8f2d6702ed3b392c410b3766ef17551d463a8f0..f6c5e3c9a06fd3320ab20349a6a51440cc63e9fb 100644 (file)
@@ -27,6 +27,7 @@ class AliTRDCalMonitoring;
 class AliTRDCalROC;
 class AliTRDCalDet;
 class AliTRDCalSingleChamberStatus;
+class TString;
 class AliTRDcalibDB : public TObject {
 
  public:
@@ -70,6 +71,8 @@ class AliTRDcalibDB : public TObject {
   Float_t                             GetPRFhi() const      { return fPRFhi;  };
 
   Int_t                               GetNumberOfTimeBins();
+  Int_t                               GetNumberOfTimeBinsDCS();
+  void                                GetFilterType(TString &filterType);
 
   Char_t                              GetPadStatus(Int_t det, Int_t col, Int_t row);
   AliTRDCalSingleChamberStatus       *GetPadStatusROC(Int_t det);
@@ -106,6 +109,7 @@ class AliTRDcalibDB : public TObject {
        , kIDNoisePad
        , kIDPRFWidth
        , kIDFEE
+       , kIDDCS
        , kIDChamberPos
        , kIDStackPos
        , kIDSuperModulePos