public class ImcMsgManager extends CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
Modifier and Type | Class and Description |
---|---|
static class |
ImcMsgManager.SendResult |
Modifier and Type | Field and Description |
---|---|
protected double |
arrivalDeltaTxRxTimeNanosLastMsg |
protected double |
arrivalLastSecondMsgTime |
protected double |
arrivalMessageFreq |
protected long |
arrivalMsgsInLastSec |
protected double |
arrivalTimeMillisLastMsg |
protected com.google.common.eventbus.AsyncEventBus |
bus |
protected java.util.HashSet<java.lang.Object> |
busListeners |
protected long |
counter |
protected pt.lsts.imc.net.IMCFragmentHandler |
fragmentHandler |
protected java.util.Vector<java.lang.String> |
ignoredClasses |
protected pt.lsts.imc.state.ImcSystemState |
imcState |
protected java.util.LinkedList<Mi> |
infoQueue |
protected boolean |
isActive |
protected short |
lastEntityId |
protected pt.lsts.neptus.messages.listener.MessageListener<Mi,M> |
lastListener |
protected java.util.LinkedHashMap<java.lang.String,java.lang.Long> |
lastReceivedTime |
protected java.util.LinkedHashSet<pt.lsts.neptus.messages.listener.MessageListener<Mi,M>> |
listeners |
protected java.util.LinkedHashMap<pt.lsts.neptus.messages.listener.MessageListener<Mi,M>,MessageListenerQueueProvider<Mi,M>> |
listenersQueueProvider |
protected pt.lsts.neptus.comm.manager.CommonCommBaseImplementation.MessageProcessor |
messageProcessor |
protected long |
minDelay
Is the separation time of each message type that is warn to the listeners.
|
protected java.util.LinkedList<M> |
msgQueue |
protected ImcUdpTransport |
multicastUdpTransport |
protected java.util.LinkedHashMap<java.lang.String,java.lang.Short> |
neptusEntities |
protected PreferencesListener |
preferencesListener |
protected double |
processDeltaTxRxTimeNanosLastMsg |
protected double |
processLastSecondMsgTime |
protected double |
processMessageFreq |
protected long |
processMsgsInLastSec |
protected double |
processTimeMillisLastMsg |
protected int |
queueMaxSize |
protected long |
seqInstanceNr |
protected ImcTcpTransport |
tcpTransport |
static java.lang.String |
TRANSPORT_TCP |
static java.lang.String |
TRANSPORT_UDP |
protected ImcUdpTransport |
udpTransport |
protected static boolean |
useListenersQueues |
commInfo, MANAGER_ERROR, MANAGER_START, MANAGER_STOP, started, statusListeners, SYS_COMM_OFF, SYS_COMM_ON, SYS_CTRL_CHANGED, SYS_NEW, timerThread
Constructor and Description |
---|
ImcMsgManager(pt.lsts.imc.IMCDefinition imcDefinition) |
Modifier and Type | Method and Description |
---|---|
boolean |
addListener(pt.lsts.neptus.messages.listener.MessageListener<pt.lsts.neptus.messages.listener.MessageInfo,pt.lsts.imc.IMCMessage> listener,
java.lang.String vehicleId) |
boolean |
addListener(pt.lsts.neptus.messages.listener.MessageListener<pt.lsts.neptus.messages.listener.MessageInfo,pt.lsts.imc.IMCMessage> listener,
java.lang.String systemId,
MessageFilter<pt.lsts.neptus.messages.listener.MessageInfo,pt.lsts.imc.IMCMessage> filter) |
boolean |
addListener(pt.lsts.neptus.messages.listener.MessageListener<Mi,M> listener)
For public channel
Don't need to override this method. |
boolean |
addListener(pt.lsts.neptus.messages.listener.MessageListener<Mi,M> listener,
MessageFilter<Mi,M> filter)
Same as
addListener(MessageListener) but with a filter. |
boolean |
broadcastToCCUs(pt.lsts.imc.IMCMessage message) |
void |
clearMsgQueue()
To force the clear of the messages queue.
|
static void |
disseminate(XmlOutputMethods object,
java.lang.String rootElementName) |
java.lang.String |
getAllServicesString() |
long |
getAnnounceLastArriveTime() |
protected java.lang.String |
getAnnounceServicesList() |
double |
getArrivalDeltaTxRxTimeNanosLastMsg() |
double |
getArrivalMessageFreq()
Don't need to override this method. |
double |
getArrivalTimeMillisLastMsg()
Don't need to override this method. |
protected java.lang.String |
getCallerClass() |
SystemImcMsgCommInfo |
getCommInfoById(java.lang.String vehicleId) |
java.lang.String |
getCommStatusAsHtmlFragment() |
int |
getEntityId() |
pt.lsts.imc.state.ImcSystemState |
getImcState() |
pt.lsts.neptus.messages.listener.MessageListener<Mi,M> |
getLastListener()
Don't need to override this method. |
protected java.util.LinkedHashSet<pt.lsts.neptus.messages.listener.MessageListener<Mi,M>> |
getListeners()
Don't need to override this method. |
protected java.util.LinkedHashMap<pt.lsts.neptus.messages.listener.MessageListener<Mi,M>,MessageListenerQueueProvider<Mi,M>> |
getListenersQueueProvider() |
int |
getListenersSize()
Don't need to override this method. |
ImcId16 |
getLocalId() |
static ImcMsgManager |
getManager() |
protected long |
getMinDelay()
Don't need to override this method. |
int |
getMsgQueueLength()
Don't need to override this method. |
long |
getNextSeqInstanceNr()
Don't need to override this method. |
double |
getProcessDeltaTxRxTimeNanosLastMsg() |
double |
getProcessMessageFreq()
Don't need to override this method. |
double |
getProcessTimeMillisLastMsg()
Don't need to override this method. |
MessageFrequencyCalculator |
getSentMessagesFreqCalc() |
MessageFrequencyCalculator |
getSentMessagesFreqCalc(ImcId16 id) |
long |
getSeqInstanceNr()
Don't need to override this method. |
pt.lsts.imc.state.ImcSystemState |
getState(ImcId16 id) |
pt.lsts.imc.state.ImcSystemState |
getState(java.lang.String vehicle) |
pt.lsts.imc.state.ImcSystemState |
getState(VehicleType vehicle) |
MessageFrequencyCalculator |
getToSendMessagesFreqCalc() |
MessageFrequencyCalculator |
getToSendMessagesFreqCalc(ImcId16 id) |
protected boolean |
initManagerComms()
Initialize the comms. but don't start.
|
SystemImcMsgCommInfo |
initSystemCommInfo(ImcId16 vIdS,
java.lang.String inetAddress)
Initialize a vehicle comms (as in
SystemCommBaseInfo ). |
SystemImcMsgCommInfo |
initVehicleCommInfo(java.lang.String vehicleId,
java.lang.String inetAddress) |
boolean |
is2IdErrorMode() |
boolean |
isActive() |
boolean |
isTcpOn() |
boolean |
isUdpOn() |
static void |
main(java.lang.String[] args) |
void |
onMessage(Mi info,
M msg)
This is from
#openNode . |
void |
postInternalMessage(java.lang.String srcName,
pt.lsts.imc.IMCMessage message)
Sends a message to local consumers
|
protected void |
processMessage(Mi info,
M msg)
This calls:
if (processMsgLocally(info, msg))
warnListeners(info, msg);
Normally this method is NOT needed to be overwritten. |
protected boolean |
processMsgLocally(pt.lsts.neptus.messages.listener.MessageInfo info,
pt.lsts.imc.IMCMessage msg)
To be used to process the message locally.
|
void |
registerBusListener(java.lang.Object listener) |
boolean |
registerEntity() |
int |
registerEntity(java.lang.String name) |
boolean |
registerService(java.net.URL service) |
boolean |
removeListener(pt.lsts.neptus.messages.listener.MessageListener<pt.lsts.neptus.messages.listener.MessageInfo,pt.lsts.imc.IMCMessage> listener,
java.lang.String systemId) |
boolean |
removeListener(pt.lsts.neptus.messages.listener.MessageListener<Mi,M> listener)
For public channel
Don't need to override this method. |
boolean |
sendMessage(pt.lsts.imc.IMCMessage message) |
boolean |
sendMessage(pt.lsts.imc.IMCMessage message,
ImcId16 vehicleCommId,
java.lang.String sendProperties) |
boolean |
sendMessage(pt.lsts.imc.IMCMessage message,
ImcId16 systemCommId,
java.lang.String sendProperties,
MessageDeliveryListener msgListener) |
java.util.concurrent.Future<ImcMsgManager.SendResult> |
sendMessageReliably(pt.lsts.imc.IMCMessage message,
java.lang.String systemName) |
boolean |
sendMessageToSystem(pt.lsts.imc.IMCMessage message,
java.lang.String systemName) |
boolean |
sendMessageToSystem(pt.lsts.imc.IMCMessage message,
java.lang.String systemName,
MessageDeliveryListener listener) |
boolean |
sendMessageToSystem(pt.lsts.imc.IMCMessage message,
java.lang.String systemName,
java.lang.String sendProperties,
MessageDeliveryListener listener) |
boolean |
sendMessageToVehicle(pt.lsts.imc.IMCMessage message,
java.lang.String vehicleID,
java.lang.String sendProperties)
Should call
#sendMessage(MiddlewareMessage, Object) . |
boolean |
sendMessageToVehicle(pt.lsts.imc.IMCMessage message,
VehicleType vehicle,
java.lang.String sendProperties)
Should call
#sendMessage(MiddlewareMessage, Object) . |
boolean |
sendReliablyBlocking(pt.lsts.imc.IMCMessage message,
ImcId16 vehicleCommId,
MessageDeliveryListener listener) |
boolean |
sendReliablyNonBlocking(pt.lsts.imc.IMCMessage message,
ImcId16 vehicleCommId,
MessageDeliveryListener listener) |
protected void |
setActive(boolean isActive,
Mi info,
M message)
This will set activity flag and call
triggerExtraActionOnSetActive(boolean, MessageInfo, IMessage) to
trigger some extra action (by default the triggerExtraActionOnSetActive(boolean, MessageInfo, IMessage)
does nothing). |
void |
setArrivalDeltaTxRxTimeNanosLastMsg(double arrivalDeltaTxRxTimeNanosLastMsg) |
protected void |
setArrivalMessageFreq(double arrivalMessageFreq)
Don't need to override this method. |
protected void |
setArrivalTimeMillisLastMsg(double arrivalTimeMillisLastMsg)
Don't need to override this method. |
protected void |
setMinDelay(long minDelay)
Don't need to override this method. |
protected void |
setProcessDeltaTxRxTimeNanosLastMsg(double processDeltaTxRxTimeNanosLastMsg) |
protected void |
setProcessTimeMillisLastMsg(double timeMillisLastMsgReceived)
This function is used to set the last msg time arrival on processor and it will calculate the frequency of
arrival.
|
protected void |
setSeqInstanceNr(long seqInstanceNr)
Don't need to override this method. |
boolean |
start()
Initialize manager.
|
protected boolean |
startManagerComms()
Start the comms.
|
boolean |
stop()
Shutdown.
|
protected boolean |
stopManagerComms()
Stop the comms.
|
protected void |
triggerExtraActionOnSetActive(boolean isActive,
Mi info,
M message)
You need to override this method to implement extra actions when
|
void |
unregisterBusListener(java.lang.Object listener) |
boolean |
unRegisterService(java.net.URL service) |
protected void |
warnListeners(Mi info,
M msg)
For public channel
Don't need to override this method. |
addListener, addListener, addStatusListener, getCommInfo, getCommInfoById, getListenersAsHtmlFragment, getListenersAsHtmlFragment, getNumberOfSystems, getStatusListeners, getStatusListenersAsHtmlFragment, getStatusListenersSize, getTimerThread, isRunning, removeListener, removeListenerFromAllSystems, removeStatusListener, sendManagerStatusChanged, sendManagerSystemAdded, sendManagerSystemRemoved, sendManagerSystemStatusChanged, sendManagerVehicleAdded, sendManagerVehicleRemoved, sendManagerVehicleStatusChanged, setCommInfo, setStatusListeners
public static final java.lang.String TRANSPORT_UDP
public static final java.lang.String TRANSPORT_TCP
protected pt.lsts.imc.net.IMCFragmentHandler fragmentHandler
protected pt.lsts.imc.state.ImcSystemState imcState
protected ImcUdpTransport udpTransport
protected ImcUdpTransport multicastUdpTransport
protected ImcTcpTransport tcpTransport
protected com.google.common.eventbus.AsyncEventBus bus
protected java.util.HashSet<java.lang.Object> busListeners
protected short lastEntityId
protected java.util.LinkedHashMap<java.lang.String,java.lang.Short> neptusEntities
protected java.util.Vector<java.lang.String> ignoredClasses
protected static boolean useListenersQueues
protected java.util.LinkedList<M extends IMessage> msgQueue
protected java.util.LinkedList<Mi extends pt.lsts.neptus.messages.listener.MessageInfo> infoQueue
protected pt.lsts.neptus.comm.manager.CommonCommBaseImplementation.MessageProcessor messageProcessor
protected boolean isActive
protected double processTimeMillisLastMsg
protected long processMsgsInLastSec
protected double processMessageFreq
protected double processLastSecondMsgTime
protected double processDeltaTxRxTimeNanosLastMsg
protected double arrivalTimeMillisLastMsg
protected long arrivalMsgsInLastSec
protected double arrivalMessageFreq
protected double arrivalLastSecondMsgTime
protected double arrivalDeltaTxRxTimeNanosLastMsg
protected long counter
protected java.util.LinkedHashSet<pt.lsts.neptus.messages.listener.MessageListener<Mi extends pt.lsts.neptus.messages.listener.MessageInfo,M extends IMessage>> listeners
protected pt.lsts.neptus.messages.listener.MessageListener<Mi extends pt.lsts.neptus.messages.listener.MessageInfo,M extends IMessage> lastListener
protected java.util.LinkedHashMap<pt.lsts.neptus.messages.listener.MessageListener<Mi extends pt.lsts.neptus.messages.listener.MessageInfo,M extends IMessage>,MessageListenerQueueProvider<Mi extends pt.lsts.neptus.messages.listener.MessageInfo,M extends IMessage>> listenersQueueProvider
protected int queueMaxSize
protected long seqInstanceNr
protected long minDelay
protected java.util.LinkedHashMap<java.lang.String,java.lang.Long> lastReceivedTime
protected PreferencesListener preferencesListener
public void registerBusListener(java.lang.Object listener)
public void unregisterBusListener(java.lang.Object listener)
public static ImcMsgManager getManager()
public boolean start()
CommBaseManager
CommBaseManager.initManagerComms()
linking the created node to #openNode
and calls
it's start method. Also starts messageProcessor
and starts it. Then sends a CommBaseManager.MANAGER_START
event. Next calls a resume message processing to each started system comms.
This one needs to be called if you override it.
start
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
public boolean stop()
CommBaseManager
#openNode
and messageProcessor
and clears the messages queue. Calls the
stopMsgProcessing on the vehicle comms. Then sends a CommBaseManager.MANAGER_STOP
event.
This one needs to be called if you override it.
stop
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
public void postInternalMessage(java.lang.String srcName, pt.lsts.imc.IMCMessage message)
srcName
- The name of the message sendermessage
- The message to be sentpublic SystemImcMsgCommInfo initVehicleCommInfo(java.lang.String vehicleId, java.lang.String inetAddress)
public SystemImcMsgCommInfo initSystemCommInfo(ImcId16 vIdS, java.lang.String inetAddress)
CommBaseManager
SystemCommBaseInfo
).
This function HAS TO BE overwritten (return null as the default implementation).
This is not abstract to force "synchronized".initSystemCommInfo
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
protected java.lang.String getAnnounceServicesList()
public boolean registerService(java.net.URL service)
service
- Register with 'localhost' so it can be substituted with active IPspublic boolean unRegisterService(java.net.URL service)
service
- public java.lang.String getAllServicesString()
protected boolean initManagerComms()
CommBaseManager
initManagerComms
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
protected boolean startManagerComms()
CommBaseManager
startManagerComms
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
protected boolean stopManagerComms()
CommBaseManager
stopManagerComms
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
public boolean isUdpOn()
public boolean isTcpOn()
public long getAnnounceLastArriveTime()
public boolean is2IdErrorMode()
protected boolean processMsgLocally(pt.lsts.neptus.messages.listener.MessageInfo info, pt.lsts.imc.IMCMessage msg)
public MessageFrequencyCalculator getSentMessagesFreqCalc()
public MessageFrequencyCalculator getSentMessagesFreqCalc(ImcId16 id)
public MessageFrequencyCalculator getToSendMessagesFreqCalc()
public MessageFrequencyCalculator getToSendMessagesFreqCalc(ImcId16 id)
public boolean sendMessageToVehicle(pt.lsts.imc.IMCMessage message, VehicleType vehicle, java.lang.String sendProperties)
CommBaseManager
#sendMessage(MiddlewareMessage, Object)
.sendMessageToVehicle
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
sendProperties
- Properties to allow decision on how to send the message. Implementation dependent but can
be a list.public boolean sendMessageToSystem(pt.lsts.imc.IMCMessage message, java.lang.String systemName, MessageDeliveryListener listener)
public boolean sendMessageToSystem(pt.lsts.imc.IMCMessage message, java.lang.String systemName)
public boolean sendMessageToSystem(pt.lsts.imc.IMCMessage message, java.lang.String systemName, java.lang.String sendProperties, MessageDeliveryListener listener)
public java.util.concurrent.Future<ImcMsgManager.SendResult> sendMessageReliably(pt.lsts.imc.IMCMessage message, java.lang.String systemName)
public boolean sendMessageToVehicle(pt.lsts.imc.IMCMessage message, java.lang.String vehicleID, java.lang.String sendProperties)
CommBaseManager
#sendMessage(MiddlewareMessage, Object)
.sendMessageToVehicle
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
vehicleID
- This id is the vehicle id as defined by VehicleType
.sendProperties
- Properties to allow decision on how to send the message. Implementation dependent but can
be a list.public boolean sendReliablyBlocking(pt.lsts.imc.IMCMessage message, ImcId16 vehicleCommId, MessageDeliveryListener listener)
public boolean sendReliablyNonBlocking(pt.lsts.imc.IMCMessage message, ImcId16 vehicleCommId, MessageDeliveryListener listener)
message
- vehicleCommId
- listener
- public boolean broadcastToCCUs(pt.lsts.imc.IMCMessage message)
public boolean sendMessage(pt.lsts.imc.IMCMessage message)
message
- public boolean sendMessage(pt.lsts.imc.IMCMessage message, ImcId16 vehicleCommId, java.lang.String sendProperties)
sendMessage
in class CommBaseManager<pt.lsts.imc.IMCMessage,pt.lsts.neptus.messages.listener.MessageInfo,SystemImcMsgCommInfo,ImcId16,CommManagerStatusChangeListener>
sendProperties
- Properties to allow decision on how to send the message. Implementation dependent but can
be a list.public boolean sendMessage(pt.lsts.imc.IMCMessage message, ImcId16 systemCommId, java.lang.String sendProperties, MessageDeliveryListener msgListener)
message
- The message to sendsystemCommId
- The id of the destination.sendProperties
- The properties to take into consideration when sending the message. This will be a comma
separated string values. Possible values: Multicast and/or Broadcast (if the message is sent by either
or both, it exists), and alternatively UDP or TCP (only if the Multicast and/or Broadcast are not
used).listener
- If you want to be warn on the send status of the message. Use null if you don't care.public static void disseminate(XmlOutputMethods object, java.lang.String rootElementName)
public int getEntityId()
public int registerEntity(java.lang.String name) throws javax.naming.InvalidNameException
javax.naming.InvalidNameException
protected java.lang.String getCallerClass()
public boolean registerEntity()
public boolean addListener(pt.lsts.neptus.messages.listener.MessageListener<pt.lsts.neptus.messages.listener.MessageInfo,pt.lsts.imc.IMCMessage> listener, java.lang.String vehicleId)
listener
- vehicleId
- public boolean addListener(pt.lsts.neptus.messages.listener.MessageListener<pt.lsts.neptus.messages.listener.MessageInfo,pt.lsts.imc.IMCMessage> listener, java.lang.String systemId, MessageFilter<pt.lsts.neptus.messages.listener.MessageInfo,pt.lsts.imc.IMCMessage> filter)
listener
- systemId
- filter
- public boolean removeListener(pt.lsts.neptus.messages.listener.MessageListener<pt.lsts.neptus.messages.listener.MessageInfo,pt.lsts.imc.IMCMessage> listener, java.lang.String systemId)
listener
- systemId
- public pt.lsts.imc.state.ImcSystemState getState(ImcId16 id)
public pt.lsts.imc.state.ImcSystemState getState(VehicleType vehicle)
public pt.lsts.imc.state.ImcSystemState getState(java.lang.String vehicle)
public SystemImcMsgCommInfo getCommInfoById(java.lang.String vehicleId)
vehicleId
- public ImcId16 getLocalId()
public java.lang.String getCommStatusAsHtmlFragment()
public final pt.lsts.imc.state.ImcSystemState getImcState()
public static void main(java.lang.String[] args)
args
- public final int getMsgQueueLength()
Don't need to override this method.
public final void clearMsgQueue()
Don't need to override this method.
protected final java.util.LinkedHashSet<pt.lsts.neptus.messages.listener.MessageListener<Mi,M>> getListeners()
Don't need to override this method.
public final int getListenersSize()
Don't need to override this method.
public final pt.lsts.neptus.messages.listener.MessageListener<Mi,M> getLastListener()
Don't need to override this method.
protected final java.util.LinkedHashMap<pt.lsts.neptus.messages.listener.MessageListener<Mi,M>,MessageListenerQueueProvider<Mi,M>> getListenersQueueProvider()
public final boolean isActive()
protected final void setActive(boolean isActive, Mi info, M message)
triggerExtraActionOnSetActive(boolean, MessageInfo, IMessage)
to
trigger some extra action (by default the triggerExtraActionOnSetActive(boolean, MessageInfo, IMessage)
does nothing). WARNING info and message can be null.protected void triggerExtraActionOnSetActive(boolean isActive, Mi info, M message)
You need to override this method to implement extra actions when
setActive(boolean, MessageInfo, IMessage)
is called.
isActive
- info
- Can be null.message
- Can be null.public final double getProcessTimeMillisLastMsg()
Don't need to override this method.
protected final void setProcessTimeMillisLastMsg(double timeMillisLastMsgReceived)
Don't need to override this method.
timeMillisLastMsgReceived
- the timeLastMsgReceived to setpublic final double getProcessDeltaTxRxTimeNanosLastMsg()
protected final void setProcessDeltaTxRxTimeNanosLastMsg(double processDeltaTxRxTimeNanosLastMsg)
processDeltaTxRxTimeNanosLastMsg
- the processDeltaTxRxTimeNanosLastMsg to setpublic final double getProcessMessageFreq()
Don't need to override this method.
public final double getArrivalMessageFreq()
Don't need to override this method.
protected final void setArrivalMessageFreq(double arrivalMessageFreq)
Don't need to override this method.
arrivalMessageFreq
- the arrivalMessageFreq to setpublic final double getArrivalTimeMillisLastMsg()
Don't need to override this method.
protected final void setArrivalTimeMillisLastMsg(double arrivalTimeMillisLastMsg)
Don't need to override this method.
arrivalTimeMillisLastMsg
- the arrivalTimeLastMsg to setpublic final double getArrivalDeltaTxRxTimeNanosLastMsg()
public final void setArrivalDeltaTxRxTimeNanosLastMsg(double arrivalDeltaTxRxTimeNanosLastMsg)
arrivalDeltaTxRxTimeNanosLastMsg
- the arrivalDeltaTxRxTimeNanosLastMsg to setprotected long getMinDelay()
Don't need to override this method.
protected void setMinDelay(long minDelay)
Don't need to override this method.
minDelay
- protected void warnListeners(Mi info, M msg)
Don't need to override this method.
info
- msg
- public boolean addListener(pt.lsts.neptus.messages.listener.MessageListener<Mi,M> listener)
Don't need to override this method.
listener
- public boolean addListener(pt.lsts.neptus.messages.listener.MessageListener<Mi,M> listener, MessageFilter<Mi,M> filter)
addListener(MessageListener)
but with a filter.
Don't need to override this method.
listener
- filter
- If null means no filter.public boolean removeListener(pt.lsts.neptus.messages.listener.MessageListener<Mi,M> listener)
Don't need to override this method.
listener
- public final void onMessage(Mi info, M msg)
#openNode
.
This method is to be called upon message arrival.
onMessage
in interface pt.lsts.neptus.messages.listener.MessageListener<Mi extends pt.lsts.neptus.messages.listener.MessageInfo,M extends IMessage>
MessageListener.onMessage(pt.lsts.neptus.messages.listener.MessageInfo,
pt.lsts.neptus.messages.IMessage)
protected final void processMessage(Mi info, M msg)
if (processMsgLocally(info, msg)) warnListeners(info, msg);
Normally this method is NOT needed to be overwritten.
info
- msg
- public final long getSeqInstanceNr()
Don't need to override this method.
protected final void setSeqInstanceNr(long seqInstanceNr)
Don't need to override this method.
seqInstanceNr
- the seqInstanceNr to setpublic final long getNextSeqInstanceNr()
Don't need to override this method.
Copyright © 2004-2020 FEUP-LSTS and Neptus developers. All Rights Reserved.