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

The NetworkStruct contract: every field a NetworkStruct may carry, keyed by its MATLAB name, and the field view of a struct that the contract validator (sn_validate_contract.h) checks against it. More...

#include <array>
#include <string>
#include "line/api/sn/sn_field_view.h"
#include "line/lang/qn/network_struct.h"
Include dependency graph for sn_contract.h:

Go to the source code of this file.

Classes

struct  line::api::SnContractField
 One NetworkStruct field; kinds and shapes are comma-separated. More...

Namespaces

namespace  line
 Conservation laws of a layered queueing network, enumerated from its structure.
namespace  line::api

Functions

const std::array< SnContractField, 127 > & line::api::sn_contract ()
const std::array< std::array< const char *, 2 >, 18 > & line::api::sn_contract_native ()
 Port-only data members of NetworkStruct (no MATLAB twin), name -> kind.
template<class T>
SnFieldViews line::api::sn_contract_view (const qn::NetworkStruct< T > &sn)
 The field view of a struct: one entry per contract field this port stores, keyed by the MATLAB name, plus the dimensions the shapes are written in.

Detailed Description

The NetworkStruct contract: every field a NetworkStruct may carry, keyed by its MATLAB name, and the field view of a struct that the contract validator (sn_validate_contract.h) checks against it.

GENERATED by doc/generate-sn-contract.py from doc/line-sn-contract.json. Do not edit.

This struct is OBJECT-SHAPED: many MATLAB fields live on the Station, JobClass and NodeDef records or are derived by an accessor. via says where each one is: a data member, a const method, or a member of every station / class / node record collected in index order. A field this port does not store has an empty via and absent says why.

Definition in file sn_contract.h.