Macro added
authorcoppedis <coppedis@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 26 Mar 2010 11:19:49 +0000 (11:19 +0000)
committercoppedis <coppedis@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 26 Mar 2010 11:19:49 +0000 (11:19 +0000)
ZDC/CheckZDCDCSMap.C [new file with mode: 0644]

diff --git a/ZDC/CheckZDCDCSMap.C b/ZDC/CheckZDCDCSMap.C
new file mode 100644 (file)
index 0000000..36c5e4e
--- /dev/null
@@ -0,0 +1,97 @@
+#if !defined(__CINT__) || defined(__MAKECINT__)
+
+#include <Riostream.h>
+#include <TSystem.h>
+#include <TMap.h>
+#include <TString.h>
+#include <TObjArray.h>
+#include <TFile.h>
+#include <TGrid.h>
+#include "STEER/AliDCSValue.h"
+#include "STEER/AliCDBEntry.h"
+#include "ZDC/AliZDCDataDCS.h"
+
+#endif
+
+void CheckZDCDCSMap(Int_t nRun=0)
+{
+   if(nRun==0){
+     printf("\n\n YOU MUST PROVIDE A RUN NUMBER != 0!!! \n\n");
+     return;
+   }
+  
+   TGrid::Connect("alien:",0,0,"t");
+  
+   char fName[150];
+   sprintf(fName,"alien:///alice/data/2010/Reference/ZDC/DCS/Data/Run%d_%d_v1_s0.root",nRun,nRun);
+  
+   TString  aliasNames[28];
+   aliasNames[0]  = "ZDC_ZNA_POS.actual.position";
+   aliasNames[1]  = "ZDC_ZPA_POS.actual.position";
+   aliasNames[2]  = "ZDC_ZNC_POS.actual.position";
+   aliasNames[3]  = "ZDC_ZPC_POS.actual.position";
+   aliasNames[4]  = "ZDC_ZNA_HV0.actual.vMon";
+   aliasNames[5]  = "ZDC_ZNA_HV1.actual.vMon";
+   aliasNames[6]  = "ZDC_ZNA_HV2.actual.vMon";
+   aliasNames[7]  = "ZDC_ZNA_HV3.actual.vMon";
+   aliasNames[8]  = "ZDC_ZNA_HV4.actual.vMon";
+   aliasNames[9]  = "ZDC_ZPA_HV0.actual.vMon";
+   aliasNames[10] = "ZDC_ZPA_HV1.actual.vMon";
+   aliasNames[11] = "ZDC_ZPA_HV2.actual.vMon";
+   aliasNames[12] = "ZDC_ZPA_HV3.actual.vMon";
+   aliasNames[13] = "ZDC_ZPA_HV4.actual.vMon";
+   aliasNames[14] = "ZDC_ZNC_HV0.actual.vMon";
+   aliasNames[15] = "ZDC_ZNC_HV1.actual.vMon";
+   aliasNames[16] = "ZDC_ZNC_HV2.actual.vMon";
+   aliasNames[17] = "ZDC_ZNC_HV3.actual.vMon";
+   aliasNames[18] = "ZDC_ZNC_HV4.actual.vMon";
+   aliasNames[19] = "ZDC_ZPC_HV0.actual.vMon";
+   aliasNames[20] = "ZDC_ZPC_HV1.actual.vMon";
+   aliasNames[21] = "ZDC_ZPC_HV2.actual.vMon";
+   aliasNames[22] = "ZDC_ZPC_HV3.actual.vMon";
+   aliasNames[23] = "ZDC_ZPC_HV4.actual.vMon";
+   aliasNames[24] = "ZDC_ZEM_HV0.actual.vMon";
+   aliasNames[25] = "ZDC_ZEM_HV1.actual.vMon";   
+   aliasNames[26] = "ZDC_REFA_HV.actual.vMon";
+   aliasNames[27] = "ZDC_REFC_HV.actual.vMon";
+
+  TFile *file = TFile::Open(fName);
+  //file->ls();
+  
+  AliCDBEntry *entry = (AliCDBEntry*)file->Get("AliCDBEntry");
+  TMap *dcsAliasMap = dynamic_cast<TMap*> (entry->GetObject());
+  dcsAliasMap->SetOwner(1);          
+  //dcsAliasMap->Print("");
+  TObjArray     *aliasArr;
+  AliDCSValue   *value;  
+   
+  for(int j=0; j<28; j++){
+  
+     aliasArr = (TObjArray*)  (dcsAliasMap->GetValue(aliasNames[j].Data()));
+     if(!aliasArr){
+       printf("Alias %s has no DP value stored!\n", aliasNames[j].Data());
+       continue;
+     }
+     
+     Int_t nentries = aliasArr->GetEntries();
+     printf("************ Alias: %s has  %d DP values collected\n", 
+       aliasNames[j].Data(), nentries);
+
+     TIter iterarray(aliasArr);
+
+     UInt_t  *time = new UInt_t[nentries];
+     Float_t *val  = new Float_t[nentries];
+
+     UInt_t ne=0;
+     while((value = (AliDCSValue*) iterarray.Next())) {
+       time[ne] = value->GetTimeStamp();
+       val[ne] = value->GetFloat();
+       //printf(" %d  - time %d  value %1.4f\n",ne, 
+       //        value->GetTimeStamp(),value->GetFloat());
+       printf(" %s\n", value->ToString());
+       ne++;
+     }
+  }
+  
+                    
+}