nl.tudelft.simulation.examples.dsol.timesharedcomputer

## Class Terminal

- java.lang.Object
- - nl.tudelft.simulation.event.EventProducer
  - - nl.tudelft.simulation.dsol.formalisms.flow.Station<Double,Double,SimTimeDouble>
    - - nl.tudelft.simulation.examples.dsol.timesharedcomputer.Terminal

All Implemented Interfaces:
  Serializable, StationInterface<Double,Double,SimTimeDouble>, EventProducerInterface

    public class Terminal
    extends Station<Double,Double,SimTimeDouble>

The Terminal as published in Simulation Modeling and Analysis by A.M. Law & W.D. Kelton section 1.4 and 2.4.
Copyright (c) 2003-2018 Delft University of Technology , the Netherlands.
See for project information www.simulation.tudelft.nl
License of use: General Public License (GPL) , no warranty

Version:
  1.1 02.04.2003
Author:
  Peter Jacobs
See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from class nl.tudelft.simulation.dsol.formalisms.flow.Station

`Station.CalendarDouble, Station.CalendarFloat, Station.CalendarLong, Station.TimeDouble, Station.TimeDoubleUnit, Station.TimeFloat, Station.TimeFloatUnit, Station.TimeLong`

### Field Summary

Fields
`static EventType` `SERVICE_TIME` SERVICE_TIME is fired on job completion.

### Fields inherited from class nl.tudelft.simulation.dsol.formalisms.flow.Station

`destination, simulator`

### Fields inherited from class nl.tudelft.simulation.event.EventProducer

`listeners`

### Fields inherited from interface nl.tudelft.simulation.dsol.formalisms.flow.StationInterface

`RECEIVE_EVENT, RELEASE_EVENT`

### Fields inherited from interface nl.tudelft.simulation.event.EventProducerInterface

`FIRST_POSITION, LAST_POSITION`

### Constructor Summary

Constructors
Constructor and Description
`Terminal(DEVSSimulatorInterface.TimeDouble simulator, StationInterface cpu, DistContinuous thinkDelay, DistContinuous jobSize)` constructs a new Terminal.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `receiveObject(Object object)`
`void` `releaseObject(Object object)`

### Methods inherited from class nl.tudelft.simulation.dsol.formalisms.flow.Station

`getDestination, setDestination`

### Methods inherited from class nl.tudelft.simulation.event.EventProducer

`addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, removeAllListeners, removeAllListeners, removeListener`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface nl.tudelft.simulation.event.EventProducerInterface

`addListener, addListener, addListener, addListener, removeListener`

### Field Detail

#### SERVICE_TIME

    public static final EventType SERVICE_TIME

SERVICE_TIME is fired on job completion.

### Constructor Detail

#### Terminal

    public Terminal(DEVSSimulatorInterface.TimeDouble simulator,
                    StationInterface cpu,
                    DistContinuous thinkDelay,
                    DistContinuous jobSize)

constructs a new Terminal.

Parameters:
  `simulator` - the simulator
  `cpu` - the destination
  `thinkDelay` - the delay
  `jobSize` - in time

### Method Detail

#### receiveObject

    public void receiveObject(Object object)

Specified by:
  `receiveObject` in interface `StationInterface<Double,Double,SimTimeDouble>`
Overrides:
  `receiveObject` in class `Station<Double,Double,SimTimeDouble>`

#### releaseObject

    public void releaseObject(Object object)

Overrides:
  `releaseObject` in class `Station<Double,Double,SimTimeDouble>`