class Source extends SimActor with Component
The Source
class is used to periodically inject entities (SimActors
) into a
running simulation model. May act as an arrival generator. Source is both
a simulation Component
and special SimActor
and therefore runs in own thread.
- Alphabetic
- By Inheritance
- Source
- Component
- SimActor
- Locatable
- Ordered
- Comparable
- PQItem
- Identifiable
- Coroutine
- Error
- Runnable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
Source(name: String, director: Model, makeEntity: () ⇒ SimActor, esubtype: Int, units: Int, iArrivalTime: Variate, xy: (Double, Double))
Auxiliary constructor that uses defaults for width 'w' and height 'h'.
Auxiliary constructor that uses defaults for width 'w' and height 'h'.
- name
the name of the source
- director
the director controlling the model
- makeEntity
the function to make entities of a specified type
- esubtype
indicator of the subtype of the entities to me made
- units
the number of entities to make
- iArrivalTime
the inter-arrival time distribution
- xy
the (x, y) coordinates for the top-left corner of the source.
-
new
Source(name: String, director: Model, makeEntity: () ⇒ SimActor, esubtype: Int, units: Int, iArrivalTime: Variate, loc: Array[Double])
- name
the name of the source
- director
the director controlling the model
- makeEntity
the function to make entities of a specified type
- esubtype
indicator of the subtype of the entities to me made
- units
the number of entities to make
- iArrivalTime
the inter-arrival time distribution
- loc
the location of the source (x, y, w, h)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
<(that: SimActor): Boolean
- Definition Classes
- Ordered
-
def
<=(that: SimActor): Boolean
- Definition Classes
- Ordered
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
>(that: SimActor): Boolean
- Definition Classes
- Ordered
-
def
>=(that: SimActor): Boolean
- Definition Classes
- Ordered
-
val
DIAM: Double
Diameter of a token (for animating entities)
Diameter of a token (for animating entities)
- Definition Classes
- Component
-
val
RAD: Double
Radius of a token (for animating entities)
Radius of a token (for animating entities)
- Definition Classes
- Component
-
def
accum(value: Double): Unit
Accumulate the value (e.g., number in queue) weighted by its time duration.
Accumulate the value (e.g., number in queue) weighted by its time duration.
- value
the value to accumulate
- Definition Classes
- Component
-
def
act(): Unit
The
Source
s as specialSimActor
will act over time to make entities (otherSimActor
s). -
val
actTime: Double
The activation time for the item in the time-ordered priority queue
The activation time for the item in the time-ordered priority queue
- Definition Classes
- PQItem
-
def
aggregate(): Unit
Aggregate the statistics of this component's subparts.
Aggregate the statistics of this component's subparts.
- Definition Classes
- Component
-
var
arrivalT: Double
The time at which 'this' entity (
SimActor
) arrivedThe time at which 'this' entity (
SimActor
) arrived- Definition Classes
- SimActor
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
at: Array[Double]
Get the location where this object is currently at.
Get the location where this object is currently at.
- Definition Classes
- Locatable
-
def
at_=(at: Array[Double]): Unit
Set the location of this object.
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
compare(actor2: SimActor): Int
Compare the activation times of the two actors, 'this' and 'actor2'.
Compare the activation times of the two actors, 'this' and 'actor2'. Their activation times are used to order them in the director's agenda (a time-based priority queue).
- actor2
the other actor to compare with this
- Definition Classes
- SimActor → Ordered
-
def
compare(other: PQItem): Int
Compare two items
PQItems
based on their 'actTime'.Compare two items
PQItems
based on their 'actTime'.- other
the other item to compare with this item
- Definition Classes
- PQItem
-
def
compareTo(that: SimActor): Int
- Definition Classes
- Ordered → Comparable
-
def
composite: Boolean
Indicate whether this component is composite, i.e., has subparts.
Indicate whether this component is composite, i.e., has subparts.
- Definition Classes
- Component
-
def
counts: (Int, Int, Int)
Return the Coroutine counts.
Return the Coroutine counts.
- Definition Classes
- Coroutine
-
def
director: Model
Get the director who controls the play/simulation this component is in.
Get the director who controls the play/simulation this component is in.
- Definition Classes
- Component
-
def
director_=(director: Model): Unit
Set this component's director (the controller of the simulation model).
Set this component's director (the controller of the simulation model).
- director
the director of the play/simulation
- Definition Classes
- Component
-
def
display(): Unit
Display 'this' source as a node on the animation canvas.
-
def
durationStat: Statistic
Return sample statistics for durations for this component (e.g., Time in queue).
Return sample statistics for durations for this component (e.g., Time in queue).
- Definition Classes
- Component
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(that: Any): Boolean
Determine whether Identifiable object 'this' equals Identifiable object 'that'.
Determine whether Identifiable object 'this' equals Identifiable object 'that'. Works since 'id' is unique for all Identifiable objects.
- Definition Classes
- Identifiable → AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
flaw(method: String, message: String): Unit
Show the flaw by printing the error message.
Show the flaw by printing the error message.
- method
the method where the error occurred
- message
the error message
- Definition Classes
- Error
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
Return the hashCode as the unique id.
Return the hashCode as the unique id.
- Definition Classes
- Identifiable → AnyRef → Any
-
val
id: Int
The globally unique integer identifier
The globally unique integer identifier
- Definition Classes
- Identifiable
-
def
initComponent(label: String, loc: Array[Double]): Unit
Initialize this component (all of its 'var's).
Initialize this component (all of its 'var's).
- label
the name of this component
- loc
the location of this component
- Definition Classes
- Component
-
def
initStats(label: String): Unit
Initialize this component's statistical collectors.
Initialize this component's statistical collectors. Sample statistics: all
Component
s. Time-persistent statistics: all exceptGate
,Source
andSink
.- label
the name of this component
- Definition Classes
- Component
-
def
interrupt(): Unit
Interrupt this waiting coroutine.
Interrupt this waiting coroutine.
- Definition Classes
- Coroutine
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
me: String
Return the full identity.
Return the full identity.
- Definition Classes
- Identifiable
-
var
mySource: Source
The indicator of subtype of 'this' entity (
SimActor
)The indicator of subtype of 'this' entity (
SimActor
)- Definition Classes
- SimActor
-
def
name: String
Get the name.
Get the name.
- Definition Classes
- Identifiable
-
def
name_=(name: String): Unit
Set the name.
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
persistentStat: TimeStatistic
Return time persistent statistics for value for this component (e.g.
Return time persistent statistics for value for this component (e.g. Number in queue).
- Definition Classes
- Component
-
def
run(): Unit
Thread's 'run' method delegates to the 'act' method.
Thread's 'run' method delegates to the 'act' method. Upon interruption the 'act' method is run again from the beginning.
- Definition Classes
- Coroutine → Runnable
-
def
schedule(delay: Double): Unit
Schedule a reactivation of 'this'
SimActor
delay time units in the future.Schedule a reactivation of 'this'
SimActor
delay time units in the future.- delay
the time delay before reactivation
- Definition Classes
- SimActor
-
def
simType: String
Get the type of the simulation object.
Get the type of the simulation object.
- Definition Classes
- Identifiable
-
def
start(): Future[_]
Start this coroutine, i.e., invoke its 'run' -> 'act' method.
Start this coroutine, i.e., invoke its 'run' -> 'act' method. This function returns a future.
- Definition Classes
- Coroutine
-
val
subpart: ListBuffer[Component]
List of subparts of the Component (empty for atomic components, nonempty for composites)
List of subparts of the Component (empty for atomic components, nonempty for composites)
- Definition Classes
- Component
-
var
subtype: Int
The indicator of subtype of 'this' entity (
SimActor
)The indicator of subtype of 'this' entity (
SimActor
)- Definition Classes
- SimActor
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
tally(duration: Double): Unit
Tally the duration (e.g., waiting time) of an activity or delay.
Tally the duration (e.g., waiting time) of an activity or delay.
- duration
the time duration
- Definition Classes
- Component
-
def
toString(): String
Show the
SimActor
s full name and activation time. -
def
trajectory: Double
Get the current trajectory (along the
QCurve
) of 'this'SimActor
.Get the current trajectory (along the
QCurve
) of 'this'SimActor
.- Definition Classes
- SimActor
-
def
trajectory_=(trajectory: Double): Unit
Set the value of the trajectory along the
QCurve
for 'this'SimActor
.Set the value of the trajectory along the
QCurve
for 'this'SimActor
.- Definition Classes
- SimActor
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
yieldToDirector(quit: Boolean = false): Unit
Yield control to the director so the director can take the next action.
Yield control to the director so the director can take the next action.
- quit
the flag indicating whether this actor is done
- Definition Classes
- SimActor
-
def
yyield(that: Coroutine, quit: Boolean = false): Unit
Yield control from 'this' to 'that' coroutine.
Yield control from 'this' to 'that' coroutine.
- that
the other coroutine to yield control to
- quit
whether 'this' coroutine is to terminate (true) or wait to be resumed (false)
- Definition Classes
- Coroutine