Source code for pcapkit.vendor.radiotap.he_data2_known

# -*- coding: utf-8 -*-
"""Radiotap HE Data2 Known Flags
===================================

.. module:: pcapkit.vendor.radiotap.he_data2_known

This module contains the vendor crawler for **Radiotap HE Data2 Known Flags**,
which is automatically generating :class:`pcapkit.const.radiotap.he_data2_known.HEData2Known`.

The registry is the bits of the HE field's ``data2`` besides its value subfields, as radiotap.org
tables them; see :mod:`pcapkit.vendor.radiotap.flags` for how a row becomes a
member, and where its name comes from.

"""

import sys

from pcapkit.vendor.radiotap.flags import Flags

__all__ = ['HEData2Known']


[docs] class HEData2Known(Flags): """Radiotap HE Data2 Known Flags""" #: Value limit checker. FLAG = 'isinstance(value, int) and 0 <= value <= 0xFFFF' #: Link to registry. LINK = 'https://www.radiotap.org/fields/HE.html' #: Subfield whose table is scraped. SUBFIELD = 'data2' #: Masks of the value subfields, which the schema splits off. VALUES = (0x3F00, 0x8000,) # type: tuple[int, ...] #: The source macro of each bit, keyed by mask, which is Linux's. NAMES = { 0x0001: 'IEEE80211_RADIOTAP_HE_DATA2_PRISEC_80_KNOWN', 0x0002: 'IEEE80211_RADIOTAP_HE_DATA2_GI_KNOWN', 0x0004: 'IEEE80211_RADIOTAP_HE_DATA2_NUM_LTF_SYMS_KNOWN', 0x0008: 'IEEE80211_RADIOTAP_HE_DATA2_PRE_FEC_PAD_KNOWN', 0x0010: 'IEEE80211_RADIOTAP_HE_DATA2_TXBF_KNOWN', 0x0020: 'IEEE80211_RADIOTAP_HE_DATA2_PE_DISAMBIG_KNOWN', 0x0040: 'IEEE80211_RADIOTAP_HE_DATA2_TXOP_KNOWN', 0x0080: 'IEEE80211_RADIOTAP_HE_DATA2_MIDAMBLE_KNOWN', 0x4000: 'IEEE80211_RADIOTAP_HE_DATA2_RU_OFFSET_KNOWN', } # type: dict[int, str]
if __name__ == '__main__': sys.exit(HEData2Known()) # type: ignore[arg-type]