3 FMD DA for online calibration of conditions
6 Link: fmd.nbi.dk/fmd/offline
9 Number of events needed: 1000
11 Output Files: peds.csv
12 Trigger types used: PEDESTAL
17 #include <AliFMDParameters.h>
18 #include <AliRawReader.h>
19 #include <TStopwatch.h>
20 #include <AliFMDPedestalDA.h>
21 #include <AliRawReaderDate.h>
22 #include <AliRawReaderRoot.h>
25 #include "TPluginManager.h"
29 int main(int argc, char **argv)
31 /* magic line from Rene - for future reference! */
32 gROOT->GetPluginManager()->AddHandler("TVirtualStreamerInfo",
39 Bool_t diagnostics = kFALSE;
40 Char_t* fileName = argv[1];
41 TString secondArgument(argv[2]);
43 if(secondArgument.Contains("--diagnostics=true"))
45 if(secondArgument.Contains("--help")) {
46 std::cout<<"Usage: filename --diagnostics=true/false . --help this help"<<std::endl;
50 if(!secondArgument.IsWhitespace() && !secondArgument.Contains("--help")
51 && !secondArgument.Contains("--diagnostics=true")) {
52 std::cout<<"Second argument wrong. Use --help"<<std::endl;
57 AliLog::EnableDebug(kFALSE);
58 AliFMDParameters::Instance()->Init(kFALSE,0);
59 AliFMDParameters::Instance()->UseCompleteHeader(old);
61 AliRawReader *reader = 0;
62 TString fileNam(fileName);
63 if (fileNam.EndsWith(".root")) reader = new AliRawReaderRoot(fileName);
64 else reader = new AliRawReaderDate(fileName);
66 std::cerr << "Don't know how to make reader for " << fileNam
72 AliFMDPedestalDA pedDA;
73 pedDA.SetSaveDiagnostics(diagnostics);
79 Int_t retvalConditions = daqDA_FES_storeFile("conditions.csv", AliFMDParameters::Instance()->GetConditionsShuttleID());
80 Int_t retvalPeds = daqDA_FES_storeFile("peds.csv", AliFMDParameters::Instance()->GetPedestalShuttleID());
82 if(retvalConditions!=0 || retvalPeds!=0)
83 std::cerr << "Pedestal DA failed" << std::endl;
85 if(retvalPeds != 0) return retvalPeds;
86 else return retvalConditions;