Class EIEIOCommandMessage

java.lang.Object
uk.ac.manchester.spinnaker.messages.eieio.EIEIOCommandMessage
All Implemented Interfaces:
EIEIOMessage<EIEIOCommandMessage.Header>, SerializableMessage
Direct Known Subclasses:
EventStopRequest, HostDataRead, HostDataReadAck, HostSendSequencedData, PaddingRequest, SpinnakerRequestBuffers, SpinnakerRequestReadData, StartRequests, StopRequests

public class EIEIOCommandMessage extends Object implements EIEIOMessage<EIEIOCommandMessage.Header>
An EIEIO message containing a command.
Author:
Sergio Davies, Donal Fellows
  • Constructor Details

    • EIEIOCommandMessage

      public EIEIOCommandMessage(EIEIOCommand command)
      Parameters:
      command - The command in the message.
  • Method Details

    • addToBuffer

      @OverridingMethodsMustInvokeSuper public void addToBuffer(ByteBuffer buffer)
      Description copied from interface: SerializableMessage
      Writes this message into the given buffer as a contiguous range of bytes. This is so that a message can be sent. Implementors may assume that the buffer has been configured to be little-endian and that its position is at the point where they should begin writing. Once it has finished, the position should be immediately after the last byte written by this method.

      Calling this method should not update the internal state of the message. It should be possible to add the message to multiple buffers without special precautions by the caller.

      Specified by:
      addToBuffer in interface SerializableMessage
      Parameters:
      buffer - The buffer to write into.
    • minPacketLength

      public int minPacketLength()
      Specified by:
      minPacketLength in interface EIEIOMessage<EIEIOCommandMessage.Header>
      Returns:
      the minimum length of a message instance in bytes.
    • getHeader

      public EIEIOCommandMessage.Header getHeader()
      Specified by:
      getHeader in interface EIEIOMessage<EIEIOCommandMessage.Header>
      Returns:
      the header of this message.