A structure to configure the address filtering functionality in RAIL.

Public Attributes#

uint8_t

A list of the start offsets for each field.

uint8_t

A list of the address field sizes.

uint32_t

The truth table to determine how the two fields combine to create a match.

Public Attribute Documentation#

offsets#

uint8_t RAIL_AddrConfig_t::offsets[(2)]

A list of the start offsets for each field.

These offsets are specified relative to the previous field's end. For the first field, it is relative to either the beginning of the packet or the end of the frame type byte if frame type decoding is enabled. If a field is unused, it's offset should be set to 0.


Definition at line 3049 of file common/rail_types.h

sizes#

uint8_t RAIL_AddrConfig_t::sizes[(2)]

A list of the address field sizes.

These sizes are specified in bytes from 0 to 8. If you choose a size of 0, this field is effectively disabled.


Definition at line 3057 of file common/rail_types.h

matchTable#

uint32_t RAIL_AddrConfig_t::matchTable

The truth table to determine how the two fields combine to create a match.

For detailed information about how this truth table is formed, see the detailed description of Address Filtering.

For simple predefined configurations use the following defines.

  • ADDRCONFIG_MATCH_TABLE_SINGLE_FIELD

    • For filtering that only uses a single address field.

  • ADDRCONFIG_MATCH_TABLE_DOUBLE_FIELD for two field filtering where you

    • For filtering that uses two address fields in a configurations where you want the following logic ((Field0, Index0) && (Field1, Index0)) || ((Field0, Index1) && (Field1, Index1)) || ...


Definition at line 3073 of file common/rail_types.h