SatCat5
satcat5::eth::ProtoConfig Class Referencefinal

Detailed Description

Thin wrapper for access via ethernet frames through eth::Dispatch.

Handler for ConfigBus network commands. This protocol allows a local ConfigBus to be commanded remotely over Ethernet or UDP, depending on how it is instantiated.

This server is equivalent to the ConfigBus host defined in "cfgbus_host_eth.vhd", but this server implemented in software. This can be used to implement mixed local/remote control, provide diagnostics, etc. The local ConfigBus can be shared between local and remote operation.

The driver only supports memory-mapped local ConfigBus (i.e., an instance of the cfg::ConfigBusMmap class). Support for masked writes is optional, and disabled by default. Set SATCAT5_PROTOCFG_SUPPORT_WRMASK = 1 to enable this feature.

Refer to cfgbus_host_eth.vhd for details of the packet format.

Definition at line 56 of file net_cfgbus.h.

#include <net_cfgbus.h>

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

Public Member Functions

 ProtoConfig (satcat5::eth::Dispatch *iface, satcat5::cfg::ConfigBusMmap *cfg, unsigned max_devices=satcat5::cfg::DEVS_PER_CFGBUS)
 

Protected Member Functions

void frame_rcvd (satcat5::io::LimitedRead &src) override
 Event handler to process incoming frames and respond.
 

Protected Attributes

satcat5::cfg::ConfigBusMmap *const m_cfg
 ConfigBus instance.
 
satcat5::net::Dispatch *const m_iface
 Registered iface.
 
satcat5::net::Type const m_acktype
 Type for replies.
 
const unsigned m_max_devices
 Max # of devices.
 
satcat5::net::Type m_filter
 Incoming packet filter.
 

Private Attributes

satcat5::net::Protocolm_next
 Linked list of Protocols.
 

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