LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
qn_layer.h File Reference

One SolverLN layer: a NetworkStruct plus the LQN annotations that say which element of the layered model each station and class stands for. More...

#include <array>
#include <cstddef>
#include <utility>
#include <vector>
#include "line/lang/qn/network_struct.h"
Include dependency graph for qn_layer.h:

Go to the source code of this file.

Classes

class  line::qn::Layer< T >
 A layer network: everything a NetworkStruct holds, plus the LQN back-mapping. More...

Namespaces

namespace  line
namespace  line::qn

Detailed Description

One SolverLN layer: a NetworkStruct plus the LQN annotations that say which element of the layered model each station and class stands for.

SCOPE. The queueing network itself, its refresh and its predicates live in network_struct.h and are shared with every other solver; nothing here is read by an algorithm. What a layer adds is the back-mapping SolverLN needs to write a layer's metrics onto the tasks, entries, activities and calls of the LayeredNetworkStruct it came from, which is the whole content of MATLAB's model.attribute fields on a layer model.

The shape SolverLN builds is narrow – a client Delay, one or more replicas of a server station, optionally a Source/Sink pair for open arrivals, and a class per LQN element, wired by a class-switching routing matrix P{r,s}(i,j) – and buildLayers refuses by name when a layered model needs a construct it cannot express, rather than building a network that silently omits it.

Definition in file qn_layer.h.