Class Dot11HTCapabilitiesElement

  • All Implemented Interfaces:
    java.io.Serializable

    public final class Dot11HTCapabilitiesElement
    extends Dot11InformationElement
    IEEE802.11 HT Capabilities element
           1            1            2            1            16           2            4            1
     +------------+------------+------------+------------+------------+------------+------------+------------+
     | Element ID |  Length    |     HT     |   A-MPDU   | Supported  |     HT     |  Transmit  |    ASEL    |
     |            |            |Capabilities| Parameters |  MCS Set   |  Extended  |Beamforming |Capabilities|
     |            |            |    Info    |            |            |Capabilities|Capabilities|            |
     +------------+------------+------------+------------+------------+------------+------------+------------+
     Element ID: 45
    
     HT Capabilities Info:
           B0           B1        B2    B3        B4           B5           B6           B7        B8    B9
     +------------+------------+------------+------------+------------+------------+------------+------------+
     |    LDPC    | Supported  |     SM     |     HT-    |Short GI for|Short GI for|     Tx     |     Rx     |
     |   Coding   |  Channel   |    Power   | Greenfield |   20 MHz   |   40 MHz   |    STBC    |    STBC    |
     | Capability | Width Set  |    Save    |            |            |            |            |            |
     +------------+------------+------------+------------+------------+------------+------------+------------+
    
           B10          B11          B12          B13         B14           B15
     +------------+------------+------------+------------+------------+------------+
     | HT-Delayed |  Maximum   |  DSSS/CCK  |  Reserved  | Forty MHz  | L-SIG TXOP |
     | Block Ack  |   A-MSDU   |  Mode in   |            | Intolerant | Protection |
     |            |   Length   |   40 MHz   |            |            |  Support   |
     +------------+------------+------------+------------+------------+------------+
    
     A-MPDU Parameters:
         B0      B1      B2              B4       B5              B7
     +---------------+------------------------+------------------------+
     |Maximum A-MPDU |     Minimum MPDU       |        Reserved        |
     |Length Exponent|     Start Spacing      |                        |
     +---------------+------------------------+------------------------+
    
     Supported MCS Set field:
      B0          B76 B77    B79 B80                          B89 B90    B95
     +---------------+----------+--------------------------------+----------+
     |Rx MCS Bitmask | Reserved | Rx Highest Supported Data Rate | Reserved |
     +---------------+----------+--------------------------------+----------+
    
          B96        B97       B98        B99       B100    B101      B127
     +----------+----------+--------------------+----------+------//------+
     |Tx MCS Set| Tx Rx    | Tx Maximum Number  |Tx Unequal|  Reserved    |
     | Defined  | MCS Set  |  Spatial Streams   |Modulation|              |
     |          |Not Equal |    Supported       |Supported |              |
     +----------+----------+--------------------+----------+------//------+
    
     HT Extended Capabilities:
         B0        B1        B2      B3     B7     B8        B9       B10       B11    B12     B15
     +---------+-------------------+----//-----+-------------------+--------+---------+----//-----+
     |   PCO   |       PCO         | Reserved  |       MCS         | +HTC   |   RD    | Reserved  |
     |         |  Transition Time  |           |     Feedback      |Support |Responder|           |
     |         |                   |           |                   |        |         |           |
     +---------+-------------------+----//-----+-------------------+--------+---------+----//-----+
    
     Transmit Beamforming Capabilities:
           B0           B1           B2           B3           B4           B5           B6           B7           B8
     +------------+------------+------------+------------+------------+------------+-------------------------+------------+
     |  Implicit  |  Receive   |  Transmit  |  Receive   |  Transmit  |  Implicit  |      Calibration        |Explicit CSI|
     |  Transmit  | Staggered  | Staggered  |    NDP     |    NDP     |  Transmit  |                         |  Transmit  |
     |Beamforming |  Sounding  |  Sounding  |  Capable   |  Capable   |Beamforming |                         |Beamforming |
     | Receiving  |  Capable   |  Capable   |            |            |  Capable   |                         |  Capable   |
     |  Capable   |            |            |            |            |            |                         |            |
     +------------+------------+------------+------------+------------+------------+-------------------------+------------+
    
           B9            B10           B11           B12           B13           B14           B15           B16
     +-------------+-------------+---------------------------+---------------------------+---------------------------+
     |  Explicit   |  Explicit   |     Explicit Transmit     |  Explicit Noncompressed   |    Explicit Compressed    |
     |Noncompressed| Compressed  |        Beamforming        |        Beamforming        |        Beamforming        |
     |  Steering   |  Steering   |       CSI Feedback        |     Feedback Capable      |     Feedback Capable      |
     |  Capable    |  Capable    |                           |                           |                           |
     +-------------+-------------+---------------------------+---------------------------+---------------------------+
    
           B17           B18           B19           B20           B21           B22           B23           B24
     +---------------------------+---------------------------+---------------------------+---------------------------+
     |          Minimal          |       CSI Number of       |  Noncompressed Steering   |   Compressed Steering     |
     |          Grouping         |        Beamformer         |   Number of Beamformer    |   Number of Beamformer    |
     |                           |     Antennas Supported    |    Antennas Supported     |    Antennas Supported     |
     |                           |                           |                           |                           |
     +---------------------------+---------------------------+---------------------------+---------------------------+
    
          B25           B26         B27           B28         B29          B30          B31
     +-------------------------+-------------------------+--------------------------------------+
     |   CSI Max Number of     |         Channel         |                Reserved              |
     |Rows Beamformer Supported|  Estimation Capability  |                                      |
     +-------------------------+-------------------------+--------------------------------------+
    
     ASEL Capability:
            B0              B1              B2              B3              B4              B5              B6              B7
     +---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+
     |    Antenna    | Explicit CSI  |Antenna Indices| Explicit CSI  |Antenna Indices|    Receive    |   Transmit    |   Reserved    |
     |   Selection   |Feedback Based |Feedback Based |   Feedback    |   Feedback    | ASEL Capable  |   Sounding    |               |
     |    Capable    |   Transmit    |   Transmit    |    Capable    |    Capable    |               |    PPDUs      |               |
     |               | ASEL Capable  | ASEL Capable  |               |               |               |    Capable    |               |
     +---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+
     
    The HT Capabilities element contains a number of fields that are used to advertise optional HT capabilities of an HT STA. The HT Capabilities element is present in Beacon, Association Request, Association Response, Reassociation Request, Reassociation Response, Probe Request, Probe Response, Mesh Peering Open, and Mesh Peering Close frames.
    Since:
    pcap4j 1.7.0
    Author:
    Kaito Yamada
    See Also:
    IEEE802.11, Serialized Form
    • Method Detail

      • isLdpcCodingSupported

        public boolean isLdpcCodingSupported()
        Returns:
        true if the LDPC Coding Capability field is set to 1; false otherwise.
      • isBoth20and40MhzSupported

        public boolean isBoth20and40MhzSupported()
        Returns:
        true if the Supported Channel Width Set field is set to 1; false otherwise.
      • isHtGreenfieldSupported

        public boolean isHtGreenfieldSupported()
        Returns:
        true if the HT-Greenfield field is set to 1; false otherwise.
      • isShortGiFor20MhzSupported

        public boolean isShortGiFor20MhzSupported()
        Returns:
        true if the Short GI for 20 MHz field is set to 1; false otherwise.
      • isShortGiFor40MhzSupported

        public boolean isShortGiFor40MhzSupported()
        Returns:
        true if the Short GI for 40 MHz field is set to 1; false otherwise.
      • isTxStbcSupported

        public boolean isTxStbcSupported()
        Returns:
        true if the Tx STBC field is set to 1; false otherwise.
      • isHtDelayedBlockAckSupported

        public boolean isHtDelayedBlockAckSupported()
        Returns:
        true if the HT-Delayed Block Ack field is set to 1; false otherwise.
      • isDsssCckModeIn40MhzSupported

        public boolean isDsssCckModeIn40MhzSupported()
        Returns:
        true if the DSSS/CCK Mode in 40 MHz field is set to 1; false otherwise.
      • getBit13OfHtCapabilitiesInfo

        public boolean getBit13OfHtCapabilitiesInfo()
        Returns:
        true if the bit 13 of the HT Capabilities Info field is set to 1; false otherwise.
      • isFortyMhzIntolerant

        public boolean isFortyMhzIntolerant()
        Returns:
        true if the Forty MHz Intolerant field is set to 1; false otherwise.
      • islSigTxopProtectionSupported

        public boolean islSigTxopProtectionSupported()
        Returns:
        true if the L-SIG TXOP Protection Support field is set to 1; false otherwise.
      • getBit5OfAMpduParameters

        public boolean getBit5OfAMpduParameters()
        Returns:
        true if the bit 5 of the A-MPDU Parameters field is set to 1; false otherwise.
      • getBit6OfAMpduParameters

        public boolean getBit6OfAMpduParameters()
        Returns:
        true if the bit 6 of the A-MPDU Parameters field is set to 1; false otherwise.
      • getBit7OfAMpduParameters

        public boolean getBit7OfAMpduParameters()
        Returns:
        true if the bit 7 of the A-MPDU Parameters field is set to 1; false otherwise.
      • getSupportedRxMcsIndexes

        public boolean[] getSupportedRxMcsIndexes()
        Returns:
        supportedRxMcsIndexes. supportedRxMcsIndexes[x] is set to true if the bit x of the Rx MCS Bitmask is set to 1; otherwise supportedRxMcsIndexes[x] is set to false.
      • getBit77OfSupportedMcsSet

        public boolean getBit77OfSupportedMcsSet()
        Returns:
        true if the bit 77 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit78OfSupportedMcsSet

        public boolean getBit78OfSupportedMcsSet()
        Returns:
        true if the bit 78 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit79OfSupportedMcsSet

        public boolean getBit79OfSupportedMcsSet()
        Returns:
        true if the bit 79 of the Supported MCS Set field is set to 1; false otherwise.
      • getRxHighestSupportedDataRate

        public short getRxHighestSupportedDataRate()
        Returns:
        rxHighestSupportedDataRate
      • getRxHighestSupportedDataRateAsInt

        public int getRxHighestSupportedDataRateAsInt()
        Returns:
        rxHighestSupportedDataRate
      • getBit90OfSupportedMcsSet

        public boolean getBit90OfSupportedMcsSet()
        Returns:
        true if the bit 90 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit91OfSupportedMcsSet

        public boolean getBit91OfSupportedMcsSet()
        Returns:
        true if the bit 91 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit92OfSupportedMcsSet

        public boolean getBit92OfSupportedMcsSet()
        Returns:
        true if the bit 92 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit93OfSupportedMcsSet

        public boolean getBit93OfSupportedMcsSet()
        Returns:
        true if the bit 93 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit94OfSupportedMcsSet

        public boolean getBit94OfSupportedMcsSet()
        Returns:
        true if the bit 94 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit95OfSupportedMcsSet

        public boolean getBit95OfSupportedMcsSet()
        Returns:
        true if the bit 95 of the Supported MCS Set field is set to 1; false otherwise.
      • isTxMcsSetDefined

        public boolean isTxMcsSetDefined()
        Returns:
        true if the Tx MCS Set Defined field is set to 1; false otherwise.
      • isTxRxMcsSetNotEqual

        public boolean isTxRxMcsSetNotEqual()
        Returns:
        true if the Tx Rx MCS Set Not Equal field is set to 1; false otherwise.
      • isTxUnequalModulationSupported

        public boolean isTxUnequalModulationSupported()
        Returns:
        true if the Tx Unequal Modulation Supported field is set to 1; false otherwise.
      • getBit101OfSupportedMcsSet

        public boolean getBit101OfSupportedMcsSet()
        Returns:
        true if the bit 101 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit102OfSupportedMcsSet

        public boolean getBit102OfSupportedMcsSet()
        Returns:
        true if the bit 102 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit103OfSupportedMcsSet

        public boolean getBit103OfSupportedMcsSet()
        Returns:
        true if the bit 103 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit104OfSupportedMcsSet

        public boolean getBit104OfSupportedMcsSet()
        Returns:
        true if the bit 104 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit105OfSupportedMcsSet

        public boolean getBit105OfSupportedMcsSet()
        Returns:
        true if the bit 105 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit106OfSupportedMcsSet

        public boolean getBit106OfSupportedMcsSet()
        Returns:
        true if the bit 106 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit107OfSupportedMcsSet

        public boolean getBit107OfSupportedMcsSet()
        Returns:
        true if the bit 107 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit108OfSupportedMcsSet

        public boolean getBit108OfSupportedMcsSet()
        Returns:
        true if the bit 108 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit109OfSupportedMcsSet

        public boolean getBit109OfSupportedMcsSet()
        Returns:
        true if the bit 109 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit110OfSupportedMcsSet

        public boolean getBit110OfSupportedMcsSet()
        Returns:
        true if the bit 110 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit111OfSupportedMcsSet

        public boolean getBit111OfSupportedMcsSet()
        Returns:
        true if the bit 111 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit112OfSupportedMcsSet

        public boolean getBit112OfSupportedMcsSet()
        Returns:
        true if the bit 112 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit113OfSupportedMcsSet

        public boolean getBit113OfSupportedMcsSet()
        Returns:
        true if the bit 113 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit114OfSupportedMcsSet

        public boolean getBit114OfSupportedMcsSet()
        Returns:
        true if the bit 114 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit115OfSupportedMcsSet

        public boolean getBit115OfSupportedMcsSet()
        Returns:
        true if the bit 115 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit116OfSupportedMcsSet

        public boolean getBit116OfSupportedMcsSet()
        Returns:
        true if the bit 116 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit117OfSupportedMcsSet

        public boolean getBit117OfSupportedMcsSet()
        Returns:
        true if the bit 117 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit118OfSupportedMcsSet

        public boolean getBit118OfSupportedMcsSet()
        Returns:
        true if the bit 118 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit119OfSupportedMcsSet

        public boolean getBit119OfSupportedMcsSet()
        Returns:
        true if the bit 119 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit120OfSupportedMcsSet

        public boolean getBit120OfSupportedMcsSet()
        Returns:
        true if the bit 120 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit121OfSupportedMcsSet

        public boolean getBit121OfSupportedMcsSet()
        Returns:
        true if the bit 121 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit122OfSupportedMcsSet

        public boolean getBit122OfSupportedMcsSet()
        Returns:
        true if the bit 122 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit123OfSupportedMcsSet

        public boolean getBit123OfSupportedMcsSet()
        Returns:
        true if the bit 123 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit124OfSupportedMcsSet

        public boolean getBit124OfSupportedMcsSet()
        Returns:
        true if the bit 124 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit125OfSupportedMcsSet

        public boolean getBit125OfSupportedMcsSet()
        Returns:
        true if the bit 125 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit126OfSupportedMcsSet

        public boolean getBit126OfSupportedMcsSet()
        Returns:
        true if the bit 126 of the Supported MCS Set field is set to 1; false otherwise.
      • getBit127OfSupportedMcsSet

        public boolean getBit127OfSupportedMcsSet()
        Returns:
        true if the bit 127 of the Supported MCS Set field is set to 1; false otherwise.
      • isPcoSupported

        public boolean isPcoSupported()
        Returns:
        true if the PCO field is set to 1; false otherwise.
      • getBit3OfHtExtendedCapabilities

        public boolean getBit3OfHtExtendedCapabilities()
        Returns:
        true if the field is set to 1; false otherwise.
      • getBit4OfHtExtendedCapabilities

        public boolean getBit4OfHtExtendedCapabilities()
        Returns:
        true if the bit 4 of the HT Extended Capabilities field is set to 1; false otherwise.
      • getBit5OfHtExtendedCapabilities

        public boolean getBit5OfHtExtendedCapabilities()
        Returns:
        true if the bit 5 of the HT Extended Capabilities field is set to 1; false otherwise.
      • getBit6OfHtExtendedCapabilities

        public boolean getBit6OfHtExtendedCapabilities()
        Returns:
        true if the bit 6 of the HT Extended Capabilities field is set to 1; false otherwise.
      • getBit7OfHtExtendedCapabilities

        public boolean getBit7OfHtExtendedCapabilities()
        Returns:
        true if the bit 7 of the HT Extended Capabilities field is set to 1; false otherwise.
      • isHtControlFieldSupported

        public boolean isHtControlFieldSupported()
        Returns:
        true if the +HTC Support field is set to 1; false otherwise.
      • isRdResponderSupported

        public boolean isRdResponderSupported()
        Returns:
        true if the RD Responder field is set to 1; false otherwise.
      • getBit12OfHtExtendedCapabilities

        public boolean getBit12OfHtExtendedCapabilities()
        Returns:
        true if the bit 12 of the HT Extended Capabilities field is set to 1; false otherwise.
      • getBit13OfHtExtendedCapabilities

        public boolean getBit13OfHtExtendedCapabilities()
        Returns:
        true if the bit 13 of the HT Extended Capabilities field is set to 1; false otherwise.
      • getBit14OfHtExtendedCapabilities

        public boolean getBit14OfHtExtendedCapabilities()
        Returns:
        true if the bit 14 of the HT Extended Capabilities field is set to 1; false otherwise.
      • getBit15OfHtExtendedCapabilities

        public boolean getBit15OfHtExtendedCapabilities()
        Returns:
        true if the bit 15 of the HT Extended Capabilities field is set to 1; false otherwise.
      • isImplicitTxBeamformingReceivingSupported

        public boolean isImplicitTxBeamformingReceivingSupported()
        Returns:
        true if the Implicit Transmit Beamforming Receiving Capable field is set to 1; false otherwise.
      • isRxStaggeredSoundingSupported

        public boolean isRxStaggeredSoundingSupported()
        Returns:
        true if the Receive Staggered Sounding Capable field is set to 1; false otherwise.
      • isTxStaggeredSoundingSupported

        public boolean isTxStaggeredSoundingSupported()
        Returns:
        true if the Transmit Staggered Sounding Capable field is set to 1; false otherwise.
      • isRxNdpSupported

        public boolean isRxNdpSupported()
        Returns:
        true if the Receive NDP Capable field is set to 1; false otherwise.
      • isTxNdpSupported

        public boolean isTxNdpSupported()
        Returns:
        true if the Transmit NDP Capable field is set to 1; false otherwise.
      • isImplicitTxBeamformingSupported

        public boolean isImplicitTxBeamformingSupported()
        Returns:
        true if the Implicit Transmit Beamforming Capable field is set to 1; false otherwise.
      • isExplicitCsiTxBeamformingSupported

        public boolean isExplicitCsiTxBeamformingSupported()
        Returns:
        true if the Explicit CSI Transmit Beamforming Capable field is set to 1; false otherwise.
      • isExplicitNoncompressedSteeringSupported

        public boolean isExplicitNoncompressedSteeringSupported()
        Returns:
        true if the Explicit Noncompressed Steering Capable field is set to 1; false otherwise.
      • isExplicitCompressedSteeringSupported

        public boolean isExplicitCompressedSteeringSupported()
        Returns:
        true if the Explicit Compressed Steering Capable field is set to 1; false otherwise.
      • getBit29OfTransmitBeamformingCapabilities

        public boolean getBit29OfTransmitBeamformingCapabilities()
        Returns:
        true if the bit 29 of the Transmit Beamforming Capabilities field is set to 1; false otherwise.
      • getBit30OfTransmitBeamformingCapabilities

        public boolean getBit30OfTransmitBeamformingCapabilities()
        Returns:
        true if the bit 30 of the Transmit Beamforming Capabilities field is set to 1; false otherwise.
      • getBit31OfTransmitBeamformingCapabilities

        public boolean getBit31OfTransmitBeamformingCapabilities()
        Returns:
        true if the bit 31 of the Transmit Beamforming Capabilities field is set to 1; false otherwise.
      • isAntennaSelectionSupported

        public boolean isAntennaSelectionSupported()
        Returns:
        true if the Antenna Selection Capable field is set to 1; false otherwise.
      • isExplicitCsiFeedbackBasedTxAselSupported

        public boolean isExplicitCsiFeedbackBasedTxAselSupported()
        Returns:
        true if the Explicit CSI Feedback Based Transmit ASEL Capable field is set to 1; false otherwise.
      • isAntennaIndicesFeedbackBasedTxAselSupported

        public boolean isAntennaIndicesFeedbackBasedTxAselSupported()
        Returns:
        true if the Antenna Indices Feedback Based Transmit ASEL Capable field is set to 1; false otherwise.
      • isExplicitCsiFeedbackSupported

        public boolean isExplicitCsiFeedbackSupported()
        Returns:
        true if the Explicit CSI Feedback Capable field is set to 1; false otherwise.
      • isAntennaIndicesFeedbackSupported

        public boolean isAntennaIndicesFeedbackSupported()
        Returns:
        true if the Antenna Indices Feedback Capable field is set to 1; false otherwise.
      • isRxAselSupported

        public boolean isRxAselSupported()
        Returns:
        true if the Receive ASEL Capable field is set to 1; false otherwise.
      • isTxSoundingPpdusSupported

        public boolean isTxSoundingPpdusSupported()
        Returns:
        true if the Transmit Sounding PPDUs Capable field is set to 1; false otherwise.
      • getBit7OfAselCapability

        public boolean getBit7OfAselCapability()
        Returns:
        true if the bit 70 of the ASEL Capability field is set to 1; false otherwise.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • toString

        public java.lang.String toString​(java.lang.String indent)
        Parameters:
        indent - indent
        Returns:
        the string representation of this object.