![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Classes | |
| struct | Multiplicity |
| A multiplicity, possibly infinite; MATLAB's mult(i) = Inf. More... | |
| struct | LsnInput |
| The plain-data fields of a layered software network read by the algorithm. More... | |
Enumerations | |
| enum class | LsnElementType { HOST = 0 , TASK = 1 , ENTRY = 2 , ACTIVITY = 3 , CALL = 4 } |
| Element kinds, with the values of MATLAB's LayeredNetworkElement. More... | |
Functions | |
| template<class T> | |
| Multiplicity< T > | mult_add (const Multiplicity< T > &a, const Multiplicity< T > &b) |
| a + b, with infinity absorbing. | |
| template<class T> | |
| Multiplicity< T > | mult_min (const Multiplicity< T > &a, const Multiplicity< T > &b) |
| min(a,b), with infinity as the top element. | |
| template<class T> | |
| std::vector< Multiplicity< T > > | lsn_max_multiplicity (const LsnInput< T > &lsn) |
| Maximum sustainable multiplicity (concurrency level) of every element of a layered software network. | |
|
strong |
Element kinds, with the values of MATLAB's LayeredNetworkElement.
| Enumerator | |
|---|---|
| HOST | |
| TASK | |
| ENTRY | |
| ACTIVITY | |
| CALL | |
Definition at line 57 of file lsn_max_multiplicity.h.
| std::vector< Multiplicity< T > > line::lsn::lsn_max_multiplicity | ( | const LsnInput< T > & | lsn | ) |
Maximum sustainable multiplicity (concurrency level) of every element of a layered software network.
| lsn | the call graph and the per-element attributes |
Definition at line 151 of file lsn_max_multiplicity.h.
References ENTRY, line::lsn::Multiplicity< T >::inf(), line::InputError::InputError(), lsn_max_multiplicity(), mult_add(), mult_min(), line::lsn::Multiplicity< T >::of(), and TASK.
Referenced by line::lqn::lqn_finalize(), and lsn_max_multiplicity().
| Multiplicity< T > line::lsn::mult_add | ( | const Multiplicity< T > & | a, |
| const Multiplicity< T > & | b ) |
a + b, with infinity absorbing.
Definition at line 83 of file lsn_max_multiplicity.h.
References line::lsn::Multiplicity< T >::finite(), line::lsn::Multiplicity< T >::inf(), line::lsn::Multiplicity< T >::infinite, mult_add(), and line::lsn::Multiplicity< T >::value.
Referenced by lsn_max_multiplicity(), and mult_add().
| Multiplicity< T > line::lsn::mult_min | ( | const Multiplicity< T > & | a, |
| const Multiplicity< T > & | b ) |
min(a,b), with infinity as the top element.
Definition at line 90 of file lsn_max_multiplicity.h.
References line::lsn::Multiplicity< T >::infinite, mult_min(), and line::lsn::Multiplicity< T >::value.
Referenced by lsn_max_multiplicity(), and mult_min().