24 |
printf(" -v | --verbose be verbose [default]\n"); |
printf(" -v | --verbose be verbose [default]\n"); |
25 |
printf(" -s | --silent print nothing on STDOUT\n"); |
printf(" -s | --silent print nothing on STDOUT\n"); |
26 |
printf(" -g | --debug be very verbose [default: no]\n"); |
printf(" -g | --debug be very verbose [default: no]\n"); |
27 |
printf(" -p | --pedantic be strict in checks, exit with error if any problem is found [default: no]\n"); |
printf(" -p | --pedantic be strict in checks, exit with error if any problem is found [default: yes]\n"); |
28 |
|
printf(" -r | --relaxed do not perfrom some important checks, use it only if you know what you are doing [default: NO]\n"); |
29 |
|
printf(" -np | --no-pedantic do NOT be strict in checks, try to continue if any problem is found [default: no]\n"); |
30 |
|
printf(" -tag char set the run tagging in _RUNID_GEN to \"char\" (four letters)[default = 'NONE']\n"); |
31 |
printf(" -boot number CPU boot number [default = taken from VarDump]\n"); |
printf(" -boot number CPU boot number [default = taken from VarDump]\n"); |
32 |
printf(" -autoboot if no VarDump found try to determine the BOOT number\n"); |
printf(" -autoboot if no VarDump found try to determine the BOOT number\n"); |
33 |
printf(" looking at timesync [default]\n"); |
printf(" looking at timesync [default]\n"); |
36 |
printf(" -obt0 number obt at timesync (ms) [default = taken from data]\n"); |
printf(" -obt0 number obt at timesync (ms) [default = taken from data]\n"); |
37 |
printf(" -dworbit number number is the downlink orbit number (to be used with non-standard names)\n"); |
printf(" -dworbit number number is the downlink orbit number (to be used with non-standard names)\n"); |
38 |
printf(" -static use static path inside the DB instead of symbolic names\n"); |
printf(" -static use static path inside the DB instead of symbolic names\n"); |
39 |
|
// printf(" -keepenv use environmental variables in the filenames\n"); |
40 |
|
printf(" -k | --keepenv use environmental variables in the filenames [default]\n"); |
41 |
|
printf(" -nk | --no-keepenv use PAM_L0 or standard filenames\n"); |
42 |
// printf(" -gpamela shortcut to \"-clean 0 -obt0 1 -tsync 1 -no-autoboot -boot 1 -dworbit 1 -static\"\n"); |
// printf(" -gpamela shortcut to \"-clean 0 -obt0 1 -tsync 1 -no-autoboot -boot 1 -dworbit 1 -static\"\n"); |
43 |
printf(" -gpamela shortcut to \"-clean 0 -obt0 1 -no-autoboot -dworbit 1 -static\"\n"); |
printf(" -gpamela shortcut to \"-clean 0 -obt0 1 -no-autoboot -dworbit 1 -static\"\n"); |
44 |
printf(" -clean number number in seconds after which the fragment table\n"); |
printf(" -clean number number in seconds after which the fragment table\n"); |
87 |
Bool_t runpieces = false; |
Bool_t runpieces = false; |
88 |
// |
// |
89 |
// |
// |
90 |
|
TString tag = "NONE"; |
91 |
TString filerawname = ""; |
TString filerawname = ""; |
92 |
TString filerootname = ""; |
TString filerootname = ""; |
93 |
// |
// |
110 |
// |
// |
111 |
Bool_t chewbacca = false; |
Bool_t chewbacca = false; |
112 |
Bool_t staticp = false; |
Bool_t staticp = false; |
113 |
|
Bool_t keepenv = true; |
114 |
Bool_t beverbose = true; |
Bool_t beverbose = true; |
115 |
Bool_t debug = false; |
Bool_t debug = false; |
116 |
Bool_t autoboot = true; |
Bool_t autoboot = true; |
131 |
// |
// |
132 |
Bool_t check = false; |
Bool_t check = false; |
133 |
// |
// |
134 |
Bool_t pedantic = false; |
Bool_t pedantic = true; |
135 |
|
// |
136 |
|
Bool_t relaxed = false; |
137 |
// |
// |
138 |
Int_t i = 0; |
Int_t i = 0; |
139 |
// |
// |
155 |
}; |
}; |
156 |
filerawname = (TString)inps[i+1]; |
filerawname = (TString)inps[i+1]; |
157 |
}; |
}; |
158 |
if ( !strcmp(inps[i],"-yodaFile") ) { |
if ( !strcmp(inps[i],"-yodaFile") || !strcmp(inps[i],"-L0File") ) { |
159 |
if ( numinp-1 < i+1 ){ |
if ( numinp-1 < i+1 ){ |
160 |
usage(); |
usage(); |
161 |
exit(1); |
exit(1); |
182 |
fcleanfile = (TString)inps[i+1]; |
fcleanfile = (TString)inps[i+1]; |
183 |
forceclean = true; |
forceclean = true; |
184 |
}; |
}; |
185 |
|
if ( !strcmp(inps[i],"-tag") ) { |
186 |
|
if ( numinp-1 < i+1 ){ |
187 |
|
usage(); |
188 |
|
exit(1); |
189 |
|
}; |
190 |
|
tag = (TString)inps[i+1]; |
191 |
|
}; |
192 |
if ( !strcmp(inps[i],"-validate") ) { |
if ( !strcmp(inps[i],"-validate") ) { |
193 |
if ( numinp-1 < i+1 ){ |
if ( numinp-1 < i+1 ){ |
194 |
usage(); |
usage(); |
206 |
if ( !strcmp(inps[i],"-static") ) { |
if ( !strcmp(inps[i],"-static") ) { |
207 |
staticp = true; |
staticp = true; |
208 |
}; |
}; |
209 |
|
if ( !strcmp(inps[i],"-k") || !strcmp(inps[i],"--keepenv") ) { |
210 |
|
keepenv = true; |
211 |
|
}; |
212 |
|
if ( !strcmp(inps[i],"-nk") || !strcmp(inps[i],"--no-keepenv") ) { |
213 |
|
keepenv = false; |
214 |
|
}; |
215 |
if ( !strcmp(inps[i],"-autoboot") ) { |
if ( !strcmp(inps[i],"-autoboot") ) { |
216 |
autoboot = true; |
autoboot = true; |
217 |
}; |
}; |
308 |
// |
// |
309 |
if ( !strcmp(inps[i],"-p") || !strcmp(inps[i],"--pedantic") ) pedantic = true; |
if ( !strcmp(inps[i],"-p") || !strcmp(inps[i],"--pedantic") ) pedantic = true; |
310 |
// |
// |
311 |
|
if ( !strcmp(inps[i],"-r") || !strcmp(inps[i],"--relaxed") ) relaxed = true; |
312 |
|
// |
313 |
|
if ( !strcmp(inps[i],"-np") || !strcmp(inps[i],"--no-pedantic") ) pedantic = false; |
314 |
|
// |
315 |
if ( !strcmp(inps[i],"-nofrag") ) nofrag = true; |
if ( !strcmp(inps[i],"-nofrag") ) nofrag = true; |
316 |
// |
// |
317 |
if ( !strcmp(inps[i],"-check") ) check = true; |
if ( !strcmp(inps[i],"-check") ) check = true; |
414 |
// Create pamDB object and open SQL connection |
// Create pamDB object and open SQL connection |
415 |
//------------------------------------------------------------------------------------------- |
//------------------------------------------------------------------------------------------- |
416 |
if ( beverbose ) printf(" 1 => Initialize and open SQL connection \n"); |
if ( beverbose ) printf(" 1 => Initialize and open SQL connection \n"); |
417 |
pamDB = new PamelaDBOperations(host,user,password,filerawname,filerootname,boot,tsync,obt0,debug,tlefilename,dwinput,staticp,gpamela); |
pamDB = new PamelaDBOperations(host,user,password,filerawname,filerootname,boot,tsync,obt0,debug,tlefilename,dwinput,staticp,gpamela,keepenv); |
418 |
pamDB->CheckConnection(); |
pamDB->CheckConnection(); |
419 |
pamDB->LockTables(); |
pamDB->LockTables(); |
420 |
pamDB->OpenL0File(filerootname); |
if ( filerootname != "" ) pamDB->OpenL0File(filerootname); |
421 |
|
pamDB->SetTag(tag); |
422 |
//------------------------------------------------------------------------------------------- |
//------------------------------------------------------------------------------------------- |
423 |
// |
// |
424 |
// |
// |
425 |
pamDB->SetNoFrag(nofrag); |
pamDB->SetNoFrag(nofrag); |
426 |
pamDB->SetAutoBoot(autoboot); |
pamDB->SetAutoBoot(autoboot); |
427 |
pamDB->SetPedantic(pedantic); |
pamDB->SetPedantic(pedantic); |
428 |
|
pamDB->SetRelaxed(relaxed); |
429 |
// |
// |
430 |
if ( remove ){ |
if ( remove ){ |
431 |
//------------------------------------------------------------------------------------------- |
//------------------------------------------------------------------------------------------- |
544 |
//Validate runs |
//Validate runs |
545 |
//------------------------------------------------------------------------------------------- |
//------------------------------------------------------------------------------------------- |
546 |
if ( beverbose ) printf(" 11 => Validate runs (earlier than %s)\n",pamDB->GetCleanTime()); |
if ( beverbose ) printf(" 11 => Validate runs (earlier than %s)\n",pamDB->GetCleanTime()); |
547 |
WAR[9] = pamDB->ValidateRuns(); |
WAR[9] = pamDB->ValidateRuns(); |
548 |
//------------------------------------------------------------------------------------------- |
//------------------------------------------------------------------------------------------- |
549 |
}; |
}; |
550 |
|
|
628 |
case -87: message += " PEDANTIC: THE RUN SHOULD HAVE ALREADY BEEN TREATED BY HANDLERUN()!"; break; |
case -87: message += " PEDANTIC: THE RUN SHOULD HAVE ALREADY BEEN TREATED BY HANDLERUN()!"; break; |
629 |
case -88: message += " PEDANTIC: INCONSISTENT PKT/OBT SEQUENCE"; break; |
case -88: message += " PEDANTIC: INCONSISTENT PKT/OBT SEQUENCE"; break; |
630 |
case -89: message += " PEDANTIC: CANNOT FIND PKT/OBT SEQUENCE IN THE POINTED FILE"; break; |
case -89: message += " PEDANTIC: CANNOT FIND PKT/OBT SEQUENCE IN THE POINTED FILE"; break; |
631 |
|
case -90: message += " No PhysEndRun tree in the file"; break; |
632 |
|
case -91: message += " PEDANTIC: Repetition of PhysEndRun data"; break; |
633 |
|
case -92: message += " CHEWBACCA: cannot find Resurs time zero used by chewbacca in the GL_RESURS_OFFSET table"; break; |
634 |
|
case -100: message += " Cannot open calibration files to check repeated calibration"; break; |
635 |
default: message += " Unidentified error"; break; |
default: message += " Unidentified error"; break; |
636 |
}; |
}; |
637 |
printf("\n"); |
printf("\n"); |