Class 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 Detail

      • MasterChannelFrameMultiplexer

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

      • 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
      • quit

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