modem_sim_node module#
- class modem_sim_node.ActivePacket(sim_packet, arrival_time, finish_time, receive_level_db)#
Bases:
tuple
- arrival_time#
Alias for field number 1
- finish_time#
Alias for field number 2
- receive_level_db#
Alias for field number 3
- sim_packet#
Alias for field number 0
- class modem_sim_node.ModemSimNode#
Bases:
Ros1Node
- call_sim_packet_performance(sim_packet_performance_req)#
- call_sim_transmission_loss(sim_transmission_loss_req)#
- check_if_packet_is_active(current_time: Time, sim_packet: SimPacket, rcv_platform_location: Position) ActivePacket | None #
- create_ping_reply_msg(dest, sim_packet=None, owtt: float = 0.0)#
- create_ping_transaction(sim_packet)#
- create_rx_packet(finished_packet: ActivePacket, total_noise: float) ReceivedPacket #
- create_tx_packet(transmitted_packet: TransmittedPacket) TransmittedPacket #
- format_ping_for_tx_queue(dest, queue=3, packet_type=3)#
- get_actual_src_level_db(src_level_requested)#
- get_packet_time(sim_packet)#
- get_truncated_frames(frame_success_mask: list, frame_bytes, hit_first_bad_frame=False)#
- handle_partial_packet(packet_performance: SimPacketPerformanceResponse, sim_packet: SimPacket)#
- handle_ping_modem(request)#
Send PingReply REQUEST to outgoing queue (handle_queue_tx_packet) Equivalent with a real modem would be sending $CCCMD,PNG,…
- handle_ping_rx(sim_packet: SimPacket, arrival_time: Time)#
- handle_query_modem_src(query: QueryModemSrcRequest) QueryModemSrcResponse #
- handle_queue_tx_packet(queue_tx_packet_req, ping=None)#
- on_acoustic_channel_sim_packet(sim_packet)#
- on_ambient_noise(msg: Float32)#
- on_modem_location(msg)#
- on_sim_tick(msg)#
- packet_in_band(sim_packet)#
- process_inwater_packets(current_time) None #
- process_outgoing_queue()#
- process_rx_queue()#
- publish_received_packet(received_packet: ReceivedPacket)#
- publish_sim(sim_packet)#
- publish_transmitted_packet(transmitted_packet)#
- send_fdp_ping_sim(dest, rate=1, cdr=0, hexdata=None)#
- sst_sim_loop()#
- class modem_sim_node.PingReplyTransaction(transaction_start_t, event: Event)#
Bases:
object
- PING_TYPE_NONE = 0#
- PING_TYPE_REPLY = 2#
Constants in SimPacket.msg rel to ping no-ping -> PING_TYPE_NONE —– no action (normal sim_packet) start —> PING_TYPE_REQUEST – when we are requesting a PingReply from another node finish –> PING_TYPE_REPLY —- when the PingReply is a response to a prior ping request
- PING_TYPE_REQUEST = 1#
- property cancel_request_active#
- cancel_transaction()#
- complete_transaction(sim_packet_reply)#
- timed_out()#
- wait(timeout=None)#
- class modem_sim_node.Position(latitude, longitude, depth)#
Bases:
tuple
- depth#
Alias for field number 2
- latitude#
Alias for field number 0
- longitude#
Alias for field number 1
- modem_sim_node.sum_incoherent_db(levels_in_db)#