3#ifdef DEBUG_KM3NET_ACOUSTIC_LINK 
    6#include <boost/date_time/posix_time/posix_time.hpp> 
    8#define DEBUG_MSG(str,lev) do { if (((uint8_t)lev)>=KM3NeT_Acoustic_Link::DEBUG_LEVEL) { DBG_MSG << boost::posix_time::microsec_clock::local_time() << " ACOUSTIC_LINK(" << (void*)this << "): "<< str << '\n'; } }while( false ) 
   10#define DEBUG_MSG(str,lev) do { } while ( false ) 
   20                                                                                        ):      strand_(io_service),\
 
 
   43                boost::system::error_code l_ignore;
 
   44                socket_.shutdown(boost::asio::ip::tcp::socket::shutdown_both, l_ignore);
 
 
   67        DEBUG_MSG(
"Read completed " << transferred << 
" bytes ",1);
 
   78                if (i!=
dom_map_.end())  i->second->Check_time_async(*l_pheader);
 
   85                        uint8_t* tmp_buffer=(uint8_t*)malloc(transferred);
 
   86            memcpy(tmp_buffer,
buffer_,transferred);
 
   87                        i->second->Handle_samples_async(tmp_buffer,transferred);
 
   96          DEBUG_MSG(
"Read completed err " << error <<
" "<< transferred << 
" bytes",3);
 
 
#define DEBUG_MSG(str, lev)
#define AUDIO_PACKET_FIXED_SIZE
void Read_completed(const boost::system::error_code &error, std::size_t transferred)
virtual ~KM3NeT_Acoustic_Link()
boost::asio::io_service::strand strand_
KM3NeT_Acoustic_Link(boost::asio::io_service &io_service, std::map< std::size_t, pDOM > &doms, uint32_t buffer_size=STD_DIM_BUFFER)
void Disconnect(bool Soft=true)
std::map< std::size_t, pDOM > & dom_map_
boost::asio::ip::tcp::socket socket_
static const size_t buffer_size