class SPNet::SignalOutPort

Output signal values to a connected SignalInPort object.

@author James Tunnell

Attributes

queue[R]

Public Class Methods

new() click to toggle source

A new instance of SignalOutPort.

Calls superclass method SPNet::OutPort::new
# File lib/spnet/ports/signal_out_port.rb, line 11
def initialize
  @queue = []
  super(:matching_class => SignalInPort)
end

Public Instance Methods

dequeue_values(count = @queue.count) click to toggle source

Remove values to queue. @param [Fixnum] count Number of values to remove.

# File lib/spnet/ports/signal_out_port.rb, line 32
def dequeue_values count = @queue.count
  raise ArgumentError, "count is greater than @queue.count" if count > @queue.count
  @queue.slice!(0...count)
end
enqueue_values(values, autosend = true) click to toggle source

Add values to queue or send them directly to linked port (if autosend is true). @param [Array] values The values to add. @param [true/false] autosend If true, and this port is linked to another

port, skip this port's queue and enqueue values
directly on the linked port's queue.
# File lib/spnet/ports/signal_out_port.rb, line 22
def enqueue_values values, autosend = true
  if autosend && linked?
    @link.to.enqueue_values values
  else
    @queue.concat values
  end
end