|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.ka2ddo.yaac.io.PortManager
org.ka2ddo.yaac.io.Transmitter
public final class Transmitter
This class handles scheduling transmit requests to the various ports. It handles retransmissions with backoffs, and reschedulings upon data updates, and caching transmit-related parameters..
Nested Class Summary | |
---|---|
static class |
Transmitter.Close
Class to shut down the Transmitter. |
Field Summary | |
---|---|
static java.lang.String |
ARISS_DIGIPEAT_CHOICE
Suggested path for messaging through the International Space Station. |
static java.lang.String |
OUTNET_CHOICE
Suggested path to forward to the Outernet. |
Method Summary | |
---|---|
void |
close()
Shut down the transmitter. |
void |
delayedQueue(AX25FrameSource entry,
long timeToSend)
Queue the specified frame source for transmission over the specified (or all, if not specified) transmit-enabled PortConnectors. |
int |
getDecayRatio()
Get the scaling factor by which the message repeat interval is enlarged (until the default slow send rate is reached). |
java.lang.String |
getDefaultDigipeatPath()
Get the default sequence of digipeat aliases that should be used for locally originated messages (assuming proportional pathing isn't being used). |
static java.lang.String |
getFarthestReachingDigipeatPathChoice()
Return the longest range digipeat alias path configured for the local station. |
int |
getFastSpeed()
Fastest speed of station motion such that position message transmission intervals are maximized to the initial transmission rate, regardless of how fast the station is actually moving. |
int |
getInitialSendRate()
Get the time interval between retransmissions when a message is newly introduced into the system. |
static Transmitter |
getInstance()
Get a reference to the singleton Transmitter object. |
PacketExportMode |
getLoggerFormat()
Get the current format for AX.25 message logging. |
int |
getMinTurnAngle()
Get the minimum amount of turn angle change before YAAC will accelerate reporting beacon position updates ("corner pegging"). |
int |
getRetransmitCount()
Get the locally-originated message retransmit count. |
int |
getSlowSendRate()
The slowest rate a message should be sent. |
int |
getSlowSpeed()
Slowest speed of station motion such that position message transmissions are scheduled as if station was not moving. |
static java.lang.String[] |
getStandardDigipeatPathChoices()
Build a sorted list of all the currently registered known choices for digipeat alias paths. |
int |
getTurnSlope()
Get the turn slope, which is the scaling factor for the increase over the minimum turn angle before beacon retransmissions will be accelerated. |
void |
queue(AX25FrameSource entry)
Queue the specified frame source for transmission over the specified (or all, if not specified) transmit-enabled PortConnectors. |
void |
run()
DO NOT CALL. |
void |
setDecayRatio(int decayRatio)
Set the scaling factor by which the message repeat interval is enlarged (until the default slow send rate is reached). |
void |
setDefaultDigipeatPath(java.lang.String defaultDigipeatPath)
Set the default sequence of digipeat aliases that should be used for locally originated messages (assuming proportional pathing isn't being used). |
void |
setFastSpeed(int fastSpeed)
Set fastest speed of station motion such that position message transmission intervals are maximized to the initial transmission rate, regardless of how fast the station is actually moving. |
void |
setInitialSendRate(int initialSendRate)
Set the time interval between retransmissions when a message is newly introduced into the system. |
void |
setLoggerFormat(PacketExportMode pem)
Set the format for AX.25 message logging. |
void |
setMinTurnAngle(int minTurnAngle)
Set the minimum amount of turn angle change before YAAC will accelerate reporting beacon position updates ("corner pegging"). |
void |
setRetransmitCount(int retransmitCount)
Set the locally-originated message retransmit count. |
void |
setSlowSendRate(int slowSendRate)
Set the slowest rate a message should be sent. |
void |
setSlowSpeed(int slowSpeed)
Set slowest speed of station motion such that position message transmissions are scheduled as if station was not moving. |
void |
setTurnSlope(int turnSlope)
Set the turn slope, which is the scaling factor for the increase over the minimum turn angle before beacon retransmissions will be accelerated. |
Methods inherited from class org.ka2ddo.yaac.io.PortManager |
---|
addPortMgmtListener, addPortStatusListener, firePortClosed, firePortCreated, firePortDeleted, firePortOpened, getCallsign, getConnector, getNextAvailablePortNumber, getPortList, getPreferredConnector, removePortMgmtListener, removePortStatusListener, setSuggestedLocalCallsign |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String ARISS_DIGIPEAT_CHOICE
public static final java.lang.String OUTNET_CHOICE
Method Detail |
---|
public static Transmitter getInstance()
public static java.lang.String[] getStandardDigipeatPathChoices()
public static java.lang.String getFarthestReachingDigipeatPathChoice()
public int getDecayRatio()
public void setDecayRatio(int decayRatio)
decayRatio
- int decay ratio (should be 2 or 3)public int getInitialSendRate()
public void setInitialSendRate(int initialSendRate)
initialSendRate
- send interval in secondspublic int getSlowSendRate()
public void setSlowSendRate(int slowSendRate)
slowSendRate
- transmission interval in secondspublic int getSlowSpeed()
DistanceUnit
public void setSlowSpeed(int slowSpeed)
slowSpeed
- slowest speed in current speed units (nm, mi, or km)DistanceUnit
public int getFastSpeed()
DistanceUnit
public void setFastSpeed(int fastSpeed)
fastSpeed
- fastest speed in current speed units (nm/hr, mi/hr, or km/hr)DistanceUnit
public int getMinTurnAngle()
getTurnSlope()
public void setMinTurnAngle(int minTurnAngle)
minTurnAngle
- the current minimum turn anglepublic int getTurnSlope()
getMinTurnAngle()
public void setTurnSlope(int turnSlope)
turnSlope
- the turn slope scaling factorpublic int getRetransmitCount()
public void setRetransmitCount(int retransmitCount)
retransmitCount
- number of times to retransmit a locally transmitted message when not acknowledgedpublic java.lang.String getDefaultDigipeatPath()
public void setDefaultDigipeatPath(java.lang.String defaultDigipeatPath)
defaultDigipeatPath
- comma-separated ordered list of digipeat aliasespublic PacketExportMode getLoggerFormat()
public void setLoggerFormat(PacketExportMode pem)
pem
- PacketExportMode to usepublic void queue(AX25FrameSource entry)
entry
- AX25FrameSource of the frame to be transmittedpublic void delayedQueue(AX25FrameSource entry, long timeToSend)
entry
- AX25FrameSource of the frame to be transmittedtimeToSend
- long time in milliseconds since Unix epoch when packet is to be dequeued and transmittedpublic void run()
run
in interface java.lang.Runnable
public void close()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |