Class MasterChannelFrameMultiplexer

java.lang.Object
org.yamcs.tctm.ccsds.MasterChannelFrameMultiplexer

public class MasterChannelFrameMultiplexer extends Object
Multiplexes TC frames from Virtual Channels based on priority schemes.

Three priorities schemes are implemented, inspired from CCSDS 912.3-B-3

  • FIFO - the frame with the earliest timestamp is selected.
  • absolute priority - the frames are selected from the virtual channel with highest priority.
  • polling vector - the virtual channels are checked in accordance with the entries in the polling vector.
  • Constructor Details

    • MasterChannelFrameMultiplexer

      public MasterChannelFrameMultiplexer(String yamcsInstance, String linkName, YConfiguration config)
  • Method Details

    • getFrame

      public TcTransferFrame getFrame()
      Get the next frame blocking until one is available or until quit() is called.
      Returns:
      next frame or null if the multiplexer has been closed or the thread interrupted
    • quit

      public void quit()
      Stop producing frames and unblock the getFrame() operation
    • getVcHandlers

      public Collection<VcUplinkHandler> getVcHandlers()