8 #ifndef PSYLLID_TF_ROACH_RECEIVER_HH_ 9 #define PSYLLID_TF_ROACH_RECEIVER_HH_ 16 #include "transformer.hh" 17 #include "shared_cancel.hh" 60 class tf_roach_receiver :
public midge::_transformer< midge::type_list< memory_block >, midge::type_list< time_data, freq_data > >
67 mv_accessible( uint64_t, time_length );
68 mv_accessible( uint64_t, freq_length );
69 mv_accessible( uint64_t, udp_buffer_size );
70 mv_accessible(
unsigned, time_sync_tol );
71 mv_accessible(
bool, start_paused );
72 mv_accessible(
bool, force_time_first );
73 mv_accessible(
unsigned, skip_after_stop );
76 void switch_to_freq_only();
77 void switch_to_time_and_freq();
79 virtual void initialize();
80 virtual void execute( midge::diptera* a_midge =
nullptr );
81 virtual void finalize();
116 virtual void do_apply_config(
tf_roach_receiver* a_node,
const scarab::param_node& a_config )
const;
117 virtual void do_dump_config(
const tf_roach_receiver* a_node, scarab::param_node& a_config )
const;
119 virtual bool do_run_command(
tf_roach_receiver* a_node,
const std::string& a_cmd,
const scarab::param_node& )
const;
uint64_t f_time_session_pkt_counter
std::atomic< bool > f_break_exe_func
std::unique_ptr< char[] > f_buffer_ptr
uint64_t f_freq_session_pkt_counter
A transformer to receive raw blocks of memory, parse them, and distribute them as time and frequency ...
std::mutex f_exe_func_mutex
midge::enum_t f_in_command
memory_block * f_memory_block