![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
The intermediate model, and the second stage that flattens it. More...
#include <line/lang/lqn/lqn_reader.h>
Public Attributes | |
| std::vector< detail::RawProc > | procs |
| std::vector< detail::RawTask< T > > | tasks |
| std::vector< detail::RawEntry< T > > | entries |
| std::vector< detail::RawActivity< T > > | acts |
| std::map< std::size_t, std::vector< detail::RawLinConRow< T > > > | proc_linconrows |
| Admission constraints declared on a HOST, by 0-based processor slot. | |
| std::map< std::size_t, std::pair< Matrix< T >, std::vector< T > > > | proc_lincon |
| std::map< std::size_t, std::vector< T > > | proc_lldscaling |
| Queue-dependent service rates and compatibility pools declared on a HOST, by 0-based processor slot. | |
| std::map< std::size_t, CdScaling< T > > | proc_cdscaling |
| std::map< std::size_t, std::vector< T > > | proc_cdscalingpeak |
| std::map< std::size_t, CdScaling< T > > | proc_jdscaling |
| std::map< std::size_t, std::vector< T > > | proc_jdscalingpeak |
| std::map< std::size_t, std::vector< detail::RawServerPool< T > > > | proc_pools |
The intermediate model, and the second stage that flattens it.
MATLAB reaches the LayeredNetworkStruct along two routes – parseXML from a .lqnx file, and the Processor/Task/Entry/Activity constructors used directly from a script – and both end in the SAME getStruct. The split here mirrors that: LqnModel is the flat intermediate both routes fill, and lqn_finalize is getStruct. It is not a convenience; the .lqnx interchange is LOSSY for models a script can express (it cannot carry a think time on a non-reference task, because lqns rejects one there), so a port that could only read files could not represent every model the reference can.
Definition at line 399 of file lqn_reader.h.
| std::vector<detail::RawActivity<T> > line::lqn::LqnModel< T >::acts |
Definition at line 403 of file lqn_reader.h.
Referenced by line::opt::ActivityThinkTime::apply(), line::opt::HostDemand::apply(), line::opt::ActivityThinkTime::current_value(), line::opt::HostDemand::current_value(), line::lqn::lqn_finalize(), line::lqn::read_lqnx_model(), and line::lqn::write_lqnx().
| std::vector<detail::RawEntry<T> > line::lqn::LqnModel< T >::entries |
Definition at line 402 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize(), line::lqn::read_lqnx_model(), and line::lqn::write_lqnx().
| std::map<std::size_t, CdScaling<T> > line::lqn::LqnModel< T >::proc_cdscaling |
Definition at line 423 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize().
| std::map<std::size_t, std::vector<T> > line::lqn::LqnModel< T >::proc_cdscalingpeak |
Definition at line 424 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize().
| std::map<std::size_t, CdScaling<T> > line::lqn::LqnModel< T >::proc_jdscaling |
Definition at line 425 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize().
| std::map<std::size_t, std::vector<T> > line::lqn::LqnModel< T >::proc_jdscalingpeak |
Definition at line 426 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize().
| std::map<std::size_t, std::pair<Matrix<T>, std::vector<T> > > line::lqn::LqnModel< T >::proc_lincon |
Definition at line 413 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize(), and line::lqn::write_lqnx().
| std::map<std::size_t, std::vector<detail::RawLinConRow<T> > > line::lqn::LqnModel< T >::proc_linconrows |
Admission constraints declared on a HOST, by 0-based processor slot.
Kept beside RawProc rather than inside it because RawProc is not a template and the coefficients are T; tasks carry their own rows. proc_lincon is the positional (A,b) form, proc_linconrows the named one; a host may use either, exactly as a task may.
Definition at line 412 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize(), and line::lqn::write_lqnx().
| std::map<std::size_t, std::vector<T> > line::lqn::LqnModel< T >::proc_lldscaling |
Queue-dependent service rates and compatibility pools declared on a HOST, by 0-based processor slot.
Kept beside RawProc for the same reason as proc_lincon: RawProc is not a template and the scalings are T. A task carries its own in RawTask. The operands of a host are its TASKS, in declaration order.
Definition at line 422 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize().
| std::map<std::size_t, std::vector<detail::RawServerPool<T> > > line::lqn::LqnModel< T >::proc_pools |
Definition at line 427 of file lqn_reader.h.
Referenced by line::lqn::lqn_finalize().
| std::vector<detail::RawProc> line::lqn::LqnModel< T >::procs |
Definition at line 400 of file lqn_reader.h.
Referenced by line::opt::ProcessorMultiplicity::apply(), line::opt::ProcessorMultiplicity::current_value(), line::lqn::lqn_finalize(), line::lqn::read_lqnx_model(), and line::lqn::write_lqnx().
| std::vector<detail::RawTask<T> > line::lqn::LqnModel< T >::tasks |
Definition at line 401 of file lqn_reader.h.
Referenced by line::opt::TaskMultiplicity::apply(), line::opt::TaskReplication::apply(), line::opt::TaskThinkTime::apply(), line::opt::TaskMultiplicity::current_value(), line::opt::TaskReplication::current_value(), line::opt::TaskThinkTime::current_value(), line::lqn::lqn_finalize(), line::lqn::read_lqnx_model(), and line::lqn::write_lqnx().