SatCat5
satcat5::eth::SwitchLogWriter Class Reference

Detailed Description

Record rate-limited packet-logs for a switch or router.

This SwitchLogHandler writes packet descriptors to a byte-stream. The resulting byte-stream can be parsed by eth::SwitchLogReader.

Definition at line 214 of file eth_sw_log.h.

#include <eth_sw_log.h>

Inheritance diagram for satcat5::eth::SwitchLogWriter:
[legend]
Collaboration diagram for satcat5::eth::SwitchLogWriter:
[legend]

Public Member Functions

 SwitchLogWriter (satcat5::io::Writeable *dst)
 Link this object to a Writeable destination.
 
void log_packet (const satcat5::eth::SwitchLogMessage &msg) override
 Process each packet event.
 

Protected Member Functions

void timer_event () override
 Child class MUST override this method.
 
void timer_once (unsigned msec)
 Configure a one-time notification after X milliseconds.
 
void timer_every (unsigned msec)
 Configure a repeating notification every X milliseconds.
 
void timer_stop ()
 Stop all future notifications.
 
unsigned timer_interval () const
 Accessor for recurring timer interval, if one is set.
 
unsigned timer_remaining () const
 Accessor for time to next event, if one is set.
 

Static Protected Member Functions

static unsigned count_timer ()
 Count all objects of this type, including idle timers.
 

Protected Attributes

satcat5::io::Writeable *const m_dst
 
u16 m_skip_drop
 
u16 m_skip_keep
 

Private Member Functions

void query (unsigned elapsed_msec)
 

Private Attributes

satcat5::eth::SwitchLogHandlerm_next
 
unsigned m_trem
 
unsigned m_tnext
 

The documentation for this class was generated from the following files: