QObjectClass

class QObjectClass(val className: String, val typeId: Int, val priority: Int = DEFAULT_PRIORITY, val valueObject: GetValueIfc? = null, val route: Route? = null, val configure: (ModelElement.QObject) -> Unit? = null)(source)

A named template for a class of QObject instances flowing through a StationNetwork. A class is a configuration, not a factory: instances are created by a SourceStation and then have the class's template applied to them. This is the bridge to multi-class queueing networks, where each class can carry its own type id, priority, service-time provider, and route.

Parameters

className

a name for the class, unique within a network; used to label per-class responses

typeId

the integer type id stamped onto each instance (ModelElement.QObject.qObjectType); must be unique per class within a network

priority

the priority assigned to each instance

valueObject

an optional per-instance value (for example, the class's own service-time random variable); a station with useQObjectForActivityTime enabled uses this for the activity time

route

an optional default route attached to each instance so the class follows its own path through the network

configure

an optional action applied last for any additional setup

Constructors

Link copied to clipboard
constructor(className: String, typeId: Int, priority: Int = DEFAULT_PRIORITY, valueObject: GetValueIfc? = null, route: Route? = null, configure: (ModelElement.QObject) -> Unit? = null)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val route: Route?
Link copied to clipboard
val typeId: Int
Link copied to clipboard

Functions

Link copied to clipboard

Applies this class's template to a freshly created qObject: stamps the type id and priority, attaches the value object and route (if any), and runs the optional configure action.