// ReadDCSAliasMap() reads from a file
// CreateInputFilesMap() creates a list of local files, that can be accessed by the shuttle
-void TestZDCPreprocessor()
+void TestZDCPreprocessor(Int_t obj=0)
{
// load library
gSystem->Load("libTestShuttle.so");
// create AliTestShuttle instance
// The parameters are run, startTime, endTime
- AliTestShuttle* shuttle = new AliTestShuttle(7, 0, 1);
-
-
- printf("Test Shuttle temp dir: %s\n", AliShuttleInterface::GetShuttleTempDir());
+ AliTestShuttle* shuttle = new AliTestShuttle(0, 0, 1);
// TODO if needed, change location of OCDB and Reference test folders
// by default they are set to $ALICE_ROOT/SHUTTLE/TestShuttle/TestCDB and TestReference
// Three files originating from different LDCs but with the same id are also added
// Note that the test preprocessor name is TPC. The name of the detector's preprocessor must follow
// the "online" naming convention ALICE-INT-2003-039.
+ //
shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "PEDESTALS", "LDC0", "ZDCPedestal.dat");
+ shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "PEDESTALS", "LDC0", "ZDCChMapping.dat");
+ //
+ shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "LASER", "LDC0", "ZDCLaserCalib.dat");
+ shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "LASER", "LDC0", "ZDCChMapping.dat");
+ //
shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "EMDCALIB", "LDC0", "ZDCEMDCalib.dat");
+ shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "EMDCALIB", "LDC0", "ZDCChMapping.dat");
+ //
+ shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "PHYSICS", "LDC0", "ZDCChMapping.dat");
+ shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "COSMICS", "LDC0", "ZDCChMapping.dat");
+ //
+ shuttle->AddInputFile(AliTestShuttle::kDAQ, "ZDC", "BC", "LDC0", "ZDCChMapping.dat");
// TODO(3)
//
// The shuttle can read run type stored in the DAQ logbook.
// To test it, we must provide the run type manually. They will be retrieved in the preprocessor
// using GetRunType function.
- shuttle->SetInputRunType("PEDESTALS");
+ if(obj==1) shuttle->SetInputRunType("STANDALONE_PEDESTAL");
+ else if(obj==2) shuttle->SetInputRunType("STANDALONE_LASER");
+ else if(obj==3) shuttle->SetInputRunType("STANDALONE_EMD");
+ else if(obj==4) shuttle->SetInputRunType("STANDALONE_COSMIC");
+ else if(obj==5) shuttle->SetInputRunType("STANDALONE_BC");
+ else if(obj==6) shuttle->SetInputRunType("PHYSICS");
// TODO(4)
//
// To test it, we must provide the run parameters manually. They will be retrieved in the preprocessor
// using GetRunParameter function.
// In real life the parameters will be retrieved automatically from the run logbook;
+ //shuttle->AddInputRunParameter("beamType", "Pb-Pb");
+ shuttle->AddInputRunParameter("beamType", "p-p");
shuttle->AddInputRunParameter("totalEvents", "1000");
shuttle->AddInputRunParameter("NumberOfGDCs", "1");
- // TODO(5)
+ // TODO(5) NEW!
+ //
+ // This is for preprocessor that require data from HLT.
+ // Since HLT may be switched off, the preprocessor should first query the Run logbook where
+ // the HLT status is stored. SHUTTLE implements a shortcut function (GetHLTStatus) that returns
+ // a bool directly. 1 = HLT ON, 0 = HLT OFF
+ //
+ Bool_t hltStatus=kFALSE;
+ shuttle->SetInputHLTStatus(hltStatus);
+
+ // TODO(6)
//
// The shuttle can query condition parameters valid from the current run from the OCDB
// To test it, we must first store the object into the OCDB. It will be retrieved in the preprocessor
// using GetFromOCDB function.
- TObjString obj("This is a condition parameter stored in OCDB");
+ /*TObjString obj("This is a condition parameter stored in OCDB");
AliCDBId id("ZDC/Calib/Data", 0, AliCDBRunRange::Infinity());
AliCDBMetaData md;
AliCDBEntry entry(&obj, id, &md);
shuttle->AddInputCDBEntry(&entry);
-
+ */
+
// TODO(6)
// Create the preprocessor that should be tested, it registers itself automatically to the shuttle
- AliPreprocessor* test = new AliZDCPreprocessor("ZDC",shuttle);
+ AliPreprocessor* test = new AliZDCPreprocessor(shuttle);
// Test the preprocessor
shuttle->Process();
// $ALICE_ROOT/SHUTTLE/TestShuttle/TestCDB/<detector>/SHUTTLE/Data
//
// Check the file which should have been created
- AliCDBEntry* chkEntry = AliCDBManager::Instance()->GetStorage(AliShuttleInterface::GetMainRefStorage())
- ->Get("ZDC/DCS/Data", 7);
- if (!chkEntry)
- {
- printf("The file is not there. Something went wrong.\n");
+ AliCDBEntry* chkEntry0 = AliCDBManager::Instance()->GetStorage(AliShuttleInterface::GetMainCDB())
+ ->Get("ZDC/Calib/ChMap", 0);
+ AliCDBEntry* chkEntry1;
+ if(obj==1) chkEntry1 = AliCDBManager::Instance()->GetStorage(AliShuttleInterface::GetMainCDB())
+ ->Get("ZDC/Calib/Pedestals", 0);
+ else if(obj==2) chkEntry1 = AliCDBManager::Instance()->GetStorage(AliShuttleInterface::GetMainCDB())
+ ->Get("ZDC/Calib/LaserCalib", 0);
+ else if(obj==3) chkEntry1 = AliCDBManager::Instance()->GetStorage(AliShuttleInterface::GetMainCDB())
+ ->Get("ZDC/Calib/EMDCalib", 0);
+
+
+ if(!chkEntry0){
+ printf("No file in \n ZDC/Calib/ChMap\n");
return;
}
+ if(!chkEntry1){
+ if(obj==1) printf("No file in \n ZDC/Calib/Pedestal\n");
+ else if(obj==2) printf("No file in \n ZDC/Calib/LaserCalib\n");
+ else if(obj==3) printf("No file in \n ZDC/Calib/EMDCalib\n");
+ return;
+ }
+
- AliTestDataDCS* output = dynamic_cast<AliTestDataDCS*> (chkEntry->GetObject());
+ /*AliTestDataDCS* output = dynamic_cast<AliTestDataDCS*> (chkEntry1->GetObject());
// If everything went fine, draw the result
if (output)
- output->Draw();
+ output->Draw();*/
}
TMap* CreateDCSAliasMap()
aliasMap->SetOwner(1);
TRandom random;
- TString aliasNames[26];
+ TString aliasNames[28];
// ******************************** alignment values
aliasNames[0] = "ZDC_ZNA_POS.actual.position";
aliasMap->Add(new TObjString(aliasName), valueSet);
}
// ******************************** HV values
- /*TString ZNAAlias = "ZNA_HV.actual.vMon";
- TString ZPAAlias = "ZPA_HV.actual.vMon";
- TString ZNCAlias = "ZNC_HV.actual.vMon";
- TString ZPCAlias = "ZPC_HV.actual.vMon";
- TString idat[5];
- for(int i=0;i<5;i++)
- {
- idat[i] = i;
- aliasNames[i+3] = ZNAAlias.Insert(6,idat[i]);
- aliasNames[i+7] = ZPAAlias.Insert(6,idat[i]);
- aliasNames[i+11] = ZNCAlias.Insert(6,idat[i]);
- aliasNames[i+15] = ZPCAlias.Insert(6,idat[i]);
- }*/
aliasNames[4] = "ZDC_ZNA_HV0.actual.vMon";
aliasNames[5] = "ZDC_ZNA_HV1.actual.vMon";
aliasNames[6] = "ZDC_ZNA_HV2.actual.vMon";
aliasNames[22] = "ZDC_ZPC_HV3.actual.vMon";
aliasNames[23] = "ZDC_ZPC_HV4.actual.vMon";
//
- aliasNames[24] = "ZDC_ZEM1_HV0.actual.vMon";
- aliasNames[25] = "ZDC_ZEM2_HV1.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";
//
- for(int nAlias=4;nAlias<26;nAlias++)
+ for(int nAlias=4;nAlias<28;nAlias++)
{
TObjArray* valueSet = new TObjArray;
valueSet->SetOwner(1);
AliCDBMetaData metaData;
metaData.SetBeamPeriod(0);
- metaData.SetResponsible("Responsible person");
- metaData.SetComment("Test object for TestPreprocessor.C");
+ metaData.SetResponsible("Chiara Oppedisano");
+ metaData.SetComment("Test object for TestZDCPreprocessor.C");
AliCDBId id("ZDC/DCS/Data", 0, 0);