BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnMetadataCollect.C
Go to the documentation of this file.
1
2
3void BmnMetadataCollect(vector<string> files = {},
4 string input_digi_dir = "",
5 string outfile = "bmn_run9092_meta.root",
6 UInt_t run_id = 9092,
7 UInt_t period = 9)
8{
9 gSystem->ExpandPathName(outfile.data());
10 // ROOT::EnableImplicitMT();
11 FairLogger::GetLogger()->SetLogToScreen(true);
12 FairLogger::GetLogger()->SetLogScreenLevel("info"); // for info write "INFO"
13
14 TStopwatch timer;
15 TStopwatch timer_conv;
16 timer.Start();
17 // Vasiliy: для рана 7830 N_BT х (BTprescale+1) = 25869*(1999 + 1) = 51738000
18 string tar_dir = "/ncx/eos/nica/bmn/exp/digi/run8/24.04.0/0_technichal_info/";
19 // string dig_dir = ".";
20 // string dig_dir = "/mnt/ddc/eos/lpp/nica/bmn/exp/digi/run8/25.09.0/";
21 // string dig_dir = "/home/ilnur/filesbmn/";
22 // string dig_dir = "/ncx/eos/nica/bmn/users/ilnur/spill_test/";
23 // string dig_dir = "/eos/lpp/nica/bmn/exp/digi/run8/25.04.0/;
24 string dig_dir = "/home/ilnur/filesbmn/spill_test/";
25 // string dig_dir = "/data/spill_test/";
26 // string dig_dir = "/mnt/ddc/ceph/bmn/work/ilnur/spill_test9/";
27 // string dig_dir = "/mnt/ddc/eos/lpp/nica/bmn/users/ilnur/spill_test/";
28
29 BmnMetadataDecoder* mdd = new BmnMetadataDecoder(files, outfile, period);
30 BmnSetup stp = kBMNSETUP;
31 mdd->SetRunId(run_id); // 8008
32 TString PeriodSetupExt = Form("%d%s.txt", period, ((stp == kBMNSETUP) ? "" : "_SRC"));
33 // mdd->SetMSCMapping(TString("MSC_map_Run") + PeriodSetupExt);
34 if (files.size() == 0)
35 if (mdd->SetDigiDirectory((input_digi_dir.length() > 0) ? input_digi_dir : dig_dir) == kBMNERROR) {
36 printf("No valid dig files in the directory\n");
37 return;
38 }
39 // mdd->SetRawRootDirPath("/dev/shm/temp_raw/");
40 mdd->SetBmnSetup(stp);
41
42 // Set converter/decoder general parameters
43 mdd->SetDecoderConfigFileName(string(getenv("VMCWORKDIR")) + "/config/bmnconf.json");
44 mdd->SetT0RawStorageFileName("t0all.root");
45 BmnStatus JStatusStatus = mdd->ProcessStatusBlocks();
46 BmnStatus SpillTreeStatus = mdd->ProcessSpillTree();
47 mdd->SaveData();
48 timer.Stop();
49 if ((JStatusStatus == kBMNSUCCESS) && (SpillTreeStatus == kBMNSUCCESS)) {
50 printf("\tMacro finished successfully!\n\n");
51 Double_t rtime = timer.RealTime();
52 Double_t ctime = timer.CpuTime();
53 printf("All steps: Real time %f s, CPU time %f s\n", rtime, ctime);
54 }
55 delete mdd;
56}
unsigned int UInt_t
double Double_t
char * Form(const char *fmt,...)
R__EXTERN TSystem * gSystem
BmnStatus
Define status code.
Definition BmnEnums.h:93
@ kBMNERROR
Error.
Definition BmnEnums.h:95
@ kBMNSUCCESS
Success.
Definition BmnEnums.h:94
BmnSetup
Define experimental setup.
Definition BmnEnums.h:165
@ kBMNSETUP
Definition BmnEnums.h:166
void SetT0RawStorageFileName(string FileName)
BmnStatus SetDigiDirectory(string fDigiDir)
void SetRunId(UInt_t v)
void SetDecoderConfigFileName(string FileName)
void SetBmnSetup(BmnSetup v)
Double_t RealTime()
void Start(Bool_t reset=kTRUE)
Double_t CpuTime()
void Stop()
void BmnMetadataCollect(vector< string > files={}, string input_digi_dir="", string outfile="bmn_run9092_meta.root", UInt_t run_id=9092, UInt_t period=9)