Interface TransceiverInterface

All Superinterfaces:
Identifiable
All Known Implementing Classes:
AbstractEventTransceiver, AbstractIdTransceiver, AbstractTransceiver, CrossSectionElementTransceiver, GtuIdTransceiver, GtuTransceiver, LaneGtuIdTransceiver, LinkGtuIdTransceiver, LinkIdTransceiver, LinkTransceiver, NodeIdTransceiver, NodeTransceiver, Publisher, SimulatorStateTransceiver

public interface TransceiverInterface extends Identifiable
Transceivers with machine interpretable description of address and result types. A transceiver converts DSOL events to Sim0MQ messages and Sim0MQ messages to DJUTILS event (un-)subscriptions, or DSOL events.

Copyright (c) 2020-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.

Author:
Alexander Verbraeck, Peter Knoppers
  • Method Details

    • getAddressFields

      MetaData getAddressFields()
      Specification of arguments needed in a request.
      Returns:
      the specification of arguments needed in a request
    • getIdSource

      default TransceiverInterface getIdSource(int addressLevel, ReturnWrapper returnWrapper) throws Sim0MQException, SerializationException
      Retrieve the TransceiverInterface that can be used to get detailed information about a single object.
      Parameters:
      addressLevel - index of the argument in the address fields
      returnWrapper - to be used to report problems
      Returns:
      to be used to get valid values for argument addressLevel, or null if valid values for the argument at index addressLevel can not be obtained through a TransceiverInterface object
      Throws:
      SerializationException - when the ReturnWrapper fails
      Sim0MQException - when the ReturnWrapper fails
    • hasIdSource

      default boolean hasIdSource()
      Report if this transceiver has an id source.
      Returns:
      true if this transceiver has an id source; false if this transceiver does not have an id source
    • getResultFields

      MetaData getResultFields()
      Report the specification of a result of the transceiver.
      Returns:
      the specification of a result from the transceiver
    • get

      Retrieve the data.
      Parameters:
      address - the address of the data to retrieve
      returnWrapper - to be used to report problems
      Returns:
      the retrieved data, or null when no object with the address could be found
      Throws:
      RemoteException - when communication needed to retrieve the data failed
      SerializationException - when encoding an error message fails
      Sim0MQException - when encoding an error message fails