1 #ifndef __READOPTIONS__ 
    2 #define __READOPTIONS__ 
   21 using namespace JLANG;   
 
   43   string detector_file ;
 
   96     if (zap.
read(argc, argv) != 0)
 
  102   catch(
const exception &error) {
 
  104     ERROR(error.what() << endl);
 
  125   TFile* f = 
new TFile(filename.c_str() , 
"recreate");
 
  135   for (
auto & run : Runs){
 
  137     sprintf(name , 
"RUN_%d_%2.1fV" , run->getRunNumber() , run->getVoltage()) ;
 
  143     summary_refs[i]->Write() ;
 
  145     for(
auto & sm : run->getSuperModules()){
 
  147       sprintf(name , 
"RUN_%d_%2.1fV/NB_%d" , run->getRunNumber() , run->getVoltage() , sm->getFloor()) ;
 
  153       for(
auto & spm : sm->get_ref_pmts()){
 
  155         spm->getNBPulse()->gettime_vs_tot()->Write() ;
 
  157         spm->getNBPulse()->gettime_peak()->Write() ;
 
  159         spm->getNBPulse()->gettot_peak()->Write() ;
 
  187   txtfile.open (filename);
 
  189   txtfile << 
"# Table of optimal voltages: column 1 = floor , column 2 = voltage" << endl;
 
  193   for (
auto & op : optimal_voltages){
 
  195     txtfile << i+1 << 
"\t" << op.first << endl;
 
  217   TFile* out_file = 
new TFile(filename.c_str() , 
"recreate") ;
 
  225   Run.Write(
"Run_Info") ;
 
  227   int Ndoms = nFloors ;
 
  231   for( 
int i = 0 ; i < Ndoms ; ++i ) {
 
  233     sprintf(dirname, 
"S%iF%i", string_number, i + 1 ) ;
 
  235     out_file->mkdir(dirname)->cd() ;
 
  243   for (
auto & volt :optimal_voltages){
 
  245     NBRun* 
r = Runs[volt.second] ;
 
  249     for (
auto & tgt : targets){
 
  251       int floor = tgt.first->getFloor() ;
 
  253       sprintf( dirname , 
"S%iF%i", string_number , floor ) ;
 
  255       out_file->cd(dirname) ;
 
  257       for (
auto & spm : tgt.second){
 
  259         spm->getNBPulse()->gettime_vs_tot()->Write() ;
 
  265     sprintf(dirname , 
"S%iF%i", string_number ,  
r->getSuperModules()[nb_index]->getFloor()) ;
 
  267     out_file->cd(dirname) ;
 
  269     for (
auto & spm : 
r->getSuperModules()[nb_index]->get_ref_pmts()){
 
  271       spm->getNBPulse()->gettime_vs_tot()->Write() ;