2 #ifdef DEBUG_ACOUSTICDATAFILTER 
    5 #include <boost/date_time/posix_time/posix_time.hpp> 
    7 #define DEBUG_MSG(str,lev) do { if (((uint8_t)lev)>=AcousticDataFilter::DEBUG_LEVEL) { DBG_MSG << boost::posix_time::microsec_clock::local_time() << " ACOUSTICDATAFILTER(" << (void*)this << "): "<< str << '\n'; } }while( false ) 
    9 #define DEBUG_MSG(str,lev) do { } while ( false ) 
   21         std::istringstream iss(d);
 
   27             size_t pos   = token.find(
'=');
 
   28                         std::string key=token.substr(0, pos);
 
   29                         std::string value=token.substr(pos+1);
 
   40         i = 
mmap.equal_range(tag);
 
   43           r.push_back(it->second);
 
   49   std::string 
Find(std::string tag, 
size_t index, std::string value = 
"")
 
   64                                                                                 const std::string& port,\
 
   65                                                                                 const std::string& name,\
 
   66                                                                     const std::string& server,\
 
   67                                                                                 const std::string& wisdom,\
 
   68                                                                                 const std::string& output,\
 
   69                                                                                 const std::string& raw,\
 
   71                                                                     const int          level):  
KM3NETDAQ::JDAQClient(name,server,logger,level),\
 
   72                                                                                                                                         strand_(trigger_io_service_),\
 
   73                                                                                                                                         server_acceptor_(server_io_service_)
 
  102         boost::asio::ip::tcp::resolver::query l_query(
address_,
port_);
 
  103         boost::asio::ip::tcp::endpoint l_endpoint = *l_resolver.resolve(l_query);
 
  105         server_acceptor_.set_option(boost::asio::ip::tcp::acceptor::reuse_address(
true));
 
  121         for (i=
links_.begin(); i!=
links_.end(); ++i){ (*i)->Disconnect(); }
 
  152                 link->Start_reading();
 
  164                 if (fftwf_import_wisdom_from_file(pfile)==1)
 
  180                 fftwf_export_wisdom_to_file(pfile);
 
  188         Parser dummy(std::string(buffer, length),
';');
 
  191         std::string l_debug_file_path;
 
  192         std::string l_window;
 
  193         std::string l_overlap;
 
  199         l_window            = dummy.
Find(
"ADF_analysis_window_size", 0);
 
  200         l_overlap           = dummy.
Find(
"ADF_analysis_window_overlap", 0);
 
  201         l_probes            = dummy.
Find(
"ADF_waveform");
 
  202         l_dom_configuration = dummy.
Find(
"ADF_DOM_configuration");
 
  204         l_toa_path=dummy.
Find(
"ADF_TOA_path");
 
  206         l_dbg_path=dummy.
Find(
"ADF_DBG_path");
 
  209         DEBUG_MSG(
"SM:Configure. win="<<l_window,2);
 
  210         DEBUG_MSG(
"SM:Configure. ovr="<<l_overlap,2);
 
  214         DEBUG_MSG(
"SM:Configure. n dom="<<l_dom_configuration.size(),2);
 
  215         DEBUG_MSG(
"SM:Configure. n pro="<<l_probes.size(),2);
 
  235         for(
int t=0;t<probes.size();++t)
 
  237                 std::istringstream l_iss(probes.at(t));
 
  244                 l_id=atoi(l_line.c_str());
 
  247                 l_samples=atoi(l_line.c_str());
 
  249                 l_buffer=(real_type*)malloc(l_samples*
sizeof(real_type));
 
  250                 for (uint32_t i=0; i<l_samples; ++i)
 
  253                         real_type l_dummy=atof(l_line.c_str());
 
  258                 pProbe l_probe = boost::make_shared<KM3::TOALIB::CTOAFinder::probeSignalT>(*(
new KM3::TOALIB::CTOAFinder::probeSignalT(window)));
 
  260                 l_probe->copyFromBuffer(l_buffer,l_samples);
 
  271         for(
int t=0;t<dom_configuration.size();++t)
 
  273                 std::istringstream l_iss(dom_configuration.at(t));
 
  277                 uint32_t l_threshold;
 
  278                 uint32_t l_waveforms;
 
  282                 l_dom_id=atoi(l_line.c_str());
 
  291                 l_waveforms=atoi(l_line.c_str());
 
  292                 DEBUG_MSG(
"n waveforms="<<l_waveforms,1);
 
  293                 for (uint32_t i=0; i<l_waveforms; ++i)
 
  296                         l_probe_id=atoi(l_line.c_str());
 
  298                         l_threshold=atoi(l_line.c_str());
 
  299                         DEBUG_MSG(
"adding probe "<<l_probe_id<<
" with threshold "<<l_threshold<<
" to DOM "<<l_dom_id,1);
 
  300                         l_dom->Add_probe(
probes_.find(l_probe_id)->second,l_probe_id,l_threshold);
 
  303         l_test=atoi(l_line.c_str());
 
  305                 l_dom->Set_test(l_test);
 
  332         std::time_t seconds = std::time(0);
 
  333         l_file+=
"TOA_"+
std::to_string((
long long unsigned int)seconds)+
".bin";
 
  334         toa_file_.open(l_file.c_str(),std::ofstream::binary);
 
  335     DEBUG_MSG(
"Toa file opened at "<<seconds,1);