Interface AX25FrameSource

All Known Implementing Classes:
AX25Frame, BeaconData, ConnState, FrameWrapper, ObjectReportSender, OpenTracMessage, QueryResponder.OnePortFrameWrapper, SendableMessageWrapper, StatusData

public interface AX25FrameSource
This interface specifies an object that can provide a fully-encoded AX.25 frame for transmission. The object will be queried whenever the transmission queue decides to transmit the message. The object is not required to return the same frame upon multiple queries (due to retransmissions, etc.); this allows for updating beacons with mobile stations, or doing proportional pathing.
Author:
Andrew Pavlin, KA2DDO
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final AX25Frame[]
    Singleton array of no AX.25 frame objects, suitable for a response where no frames can be returned or generated.
  • Method Summary

    Modifier and Type
    Method
    Description
    Specify the Connector this message should be transmitted through.
    getFrames(boolean incrementXmtCount, ProtocolFamily protocolId, String senderCallsign)
    Get one or more AX25Frames of the data to transmit.
    int
    Get number of times frame will be retransmitted before inter-packet delay is increased.
  • Field Details

    • NO_FRAMES

      static final AX25Frame[] NO_FRAMES
      Singleton array of no AX.25 frame objects, suitable for a response where no frames can be returned or generated.
  • Method Details

    • getFrames

      AX25Frame[] getFrames(boolean incrementXmtCount, ProtocolFamily protocolId, String senderCallsign)
      Get one or more AX25Frames of the data to transmit.
      Parameters:
      incrementXmtCount - indicate whether the transmit counter (used to cycle through proportional pathing) should be incremented
      protocolId - indicate the protocol to generate this frame for (not relevant for digipeated frames)
      senderCallsign - String of local callsign sending this message (may be ignored if digipeating a message from another station)
      Returns:
      array of AX25Frame objects to transmit (may be zero-length), or null indicating nothing to transmit in the specified protocol
    • getNumTransmitsBeforeDecay

      int getNumTransmitsBeforeDecay()
      Get number of times frame will be retransmitted before inter-packet delay is increased.
      Returns:
      transmission count before interval increase
    • getConnector

      Connector getConnector()
      Specify the Connector this message should be transmitted through.
      Returns:
      a specific Connector instance to transmit through, or null for all applicable ports (Connector.CAP_XMT_PACKET_DATA and not rejecting this specific packet [such as I-Gate Connectors shouldn't re-transmit something received from the I-Gate])
      See Also: