io.+linemodel.+node

class linemodel.node.TransitionCodec

Bases: linemodel.NodeCodecBase

TRANSITIONCODEC model.json codec of Transition, the Petri-net transition and its modes.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)
static encode(node, nj, ctx)
static finish(node, nd, ctx)

After the impatience restore: the modes name places and classes.

static fluidTableRange(model, place)

The level range a fluid rate dependence is tabulated over: the capacity of a bounded place, otherwise ten times the largest level the model names on it (initial level or guard threshold), at least 10.

static markingSlots(allNodes, classes, read)

The (place, class) slots a marking-dependent flow multiplier is tabulated over: every class of every place it reads. A slot is cut off at the place capacity, at the population of a closed class, and at 10 tokens for an open class in an unbounded place.

static types()
class linemodel.node.SinkCodec

Bases: linemodel.NodeCodecBase

SINKCODEC model.json codec of Sink, the open-class exit.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)
static types()
class linemodel.node.SourceCodec

Bases: linemodel.NodeCodecBase

SOURCECODEC model.json codec of Source, the open-class arrival point.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)
static types()
class linemodel.node.QueueCodec

Bases: linemodel.NodeCodecBase

QUEUECODEC model.json codec of Queue, the queueing station (scheduling, servers and buffer set at creation).

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)
static types()
class linemodel.node.PlaceCodec

Bases: linemodel.NodeCodecBase

PLACECODEC model.json codec of Place, the Petri-net place.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)

Scheduling strategy supplied to the ctor: installQueueServer (first setService) picks the server section from it

static encode(node, nj, ~)
static types()
class linemodel.node.RouterCodec

Bases: linemodel.NodeCodecBase

ROUTERCODEC model.json codec of Router, the routing-only node.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)
static types()
class linemodel.node.JoinCodec

Bases: linemodel.NodeCodecBase

JOINCODEC model.json codec of Join, the join, its fork pairing, join strategy and quorum.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static configure(node, nd, ctx)
static create(model, nd, name)
static encode(node, nj, ctx)
static types()
class linemodel.node.ForkCodec

Bases: linemodel.NodeCodecBase

FORKCODEC model.json codec of Fork, the fork, with its fan-out overrides.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)
static encode(node, nj, ctx)

Fork tasksPerLink and the variable-forking-level overrides. Each override list is emitted only when non-empty, so a plain fork’s JSON is byte-for- byte what it was.

Fork: set tasksPerLink and the variable-forking-level overrides. They are restored onto the output section directly rather than through the setters, because the setters take class and node OBJECTS and the classes do not exist yet at this point in the load.

static types()
class linemodel.node.DelayCodec

Bases: linemodel.NodeCodecBase

DELAYCODEC model.json codec of Delay, the infinite-server station.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)
static types()
class linemodel.node.LoggerCodec

Bases: linemodel.NodeCodecBase

LOGGERCODEC model.json codec of Logger, the logger and the file it writes.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static create(model, nd, name)

The Logger constructor needs the log DIRECTORY to have been set on the model, and the wire carries only the base file name; default it to the working directory so a round-trip does not error on a model that saved cleanly.

static encode(node, nj, ctx)

A Logger is defined by the file it writes: a Logger with no file name exports as a LogTunnel that logs nowhere, so the solver runs and the trace the user asked for is silently absent.

static types()
class linemodel.node.CacheCodec

Bases: linemodel.NodeCodecBase

CACHECODEC model.json codec of Cache, the cache: items, lists, replacement, hit/miss classes, popularity, access costs and retrieval system.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static configure(node, nd, ctx)
static create(model, nd, name)

Accept both nested MATLAB (nd.cache.items/capacity/replacement) and flat JAR/Python (nd.numItems/…) schema

static encode(node, nj, ctx)
static types()
class linemodel.node.ClassSwitchCodec

Bases: linemodel.NodeCodecBase

CLASSSWITCHCODEC model.json codec of ClassSwitch, the class switch and its matrix.

Copyright (c) 2012-2026, Imperial College London All rights reserved.

Method Summary
static classes()
static configure(node, nd, ctx)
static create(model, nd, name)
static encode(node, nj, ctx)
static types()