LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::Station Class Reference

A node that holds jobs and serves them: MATLAB's Station. More...

#include <line/lang/qn/nodes.h>

Inheritance diagram for line::Station:
Collaboration diagram for line::Station:

Public Member Functions

void set_service (std::size_t cls, const Dist &d)
 setService(class, distribution).
void set_number_of_servers (double n)
 setNumberOfServers(n).
void set_capacity (double k)
 setCapacity(k), the K of Kendall's notation.
void set_class_capacity (std::size_t cls, double k)
 setClassCapacity(class, k).
void set_drop_rule (std::size_t cls, lang::DropStrategy rule)
 setDropRule(class, rule).
void set_sched_param (std::size_t cls, double weight)
 setSchedParam(class, weight): the DPS/GPS share.
void set_load_dependence (const std::vector< double > &alpha)
 setLoadDependence(alpha).
void set_polling_type (lang::PollingType rule, int par=0)
 setPollingType(type, k).
void set_switchover (std::size_t cls, const Dist &so)
 setSwitchover(class, distribution).
void set_breakdown (const Dist &failure, const Dist &repair)
 setBreakdown(failure, repair).
void add_server_type (const qn::Station< double >::ServerType &stype)
 addServerType(type): one pool of a heterogeneous station.
std::size_t get_station_index () const
 getStationIndex(): the 1-based station index, distinct from the node one.
Public Member Functions inherited from line::Node
std::size_t get_index () const
 get_index(): the 1-based node index the builder assigned.
const std::string & get_name () const
 getName().
NetworkModelmodel () const
 The model this node belongs to.
 operator std::size_t () const
 A handle IS its index wherever one is expected.
void set_routing (std::size_t cls, lang::RoutingStrategy rs)
 setRouting(class, strategy).
void set_routing_weights (std::size_t cls, const std::map< std::size_t, double > &weights)
 setRoutingWeight(class, weights): the WRROBIN share per destination.

Protected Member Functions

 Station (NetworkModel &m, std::size_t idx, const std::string &nm)
Protected Member Functions inherited from line::Node
 Node (NetworkModel &m, std::size_t idx, const std::string &nm)

Additional Inherited Members

Protected Attributes inherited from line::Node
NetworkModelmodel_
std::size_t idx_
std::string name_

Detailed Description

A node that holds jobs and serves them: MATLAB's Station.

Definition at line 91 of file nodes.h.

Constructor & Destructor Documentation

◆ Station()

line::Station::Station ( NetworkModel & m,
std::size_t idx,
const std::string & nm )
inlineprotected

Member Function Documentation

◆ add_server_type()

void line::Station::add_server_type ( const qn::Station< double >::ServerType & stype)
inline

addServerType(type): one pool of a heterogeneous station.

Definition at line 128 of file nodes.h.

References line::qn::Network< T >::add_server_type(), line::Node::idx_, and line::Node::model_.

◆ get_station_index()

std::size_t line::Station::get_station_index ( ) const
inline

getStationIndex(): the 1-based station index, distinct from the node one.

Definition at line 132 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::station_index().

◆ set_breakdown()

void line::Station::set_breakdown ( const Dist & failure,
const Dist & repair )
inline

setBreakdown(failure, repair).

Definition at line 124 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_breakdown().

◆ set_capacity()

void line::Station::set_capacity ( double k)
inline

setCapacity(k), the K of Kendall's notation.

Definition at line 98 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_capacity().

◆ set_class_capacity()

void line::Station::set_class_capacity ( std::size_t cls,
double k )
inline

setClassCapacity(class, k).

Definition at line 100 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_class_capacity().

◆ set_drop_rule()

void line::Station::set_drop_rule ( std::size_t cls,
lang::DropStrategy rule )
inline

setDropRule(class, rule).

Definition at line 104 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_drop_rule().

◆ set_load_dependence()

void line::Station::set_load_dependence ( const std::vector< double > & alpha)
inline

setLoadDependence(alpha).

Definition at line 112 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_load_dependence().

◆ set_number_of_servers()

void line::Station::set_number_of_servers ( double n)
inline

setNumberOfServers(n).

Definition at line 96 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_number_of_servers().

◆ set_polling_type()

void line::Station::set_polling_type ( lang::PollingType rule,
int par = 0 )
inline

setPollingType(type, k).

Definition at line 116 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_polling_type().

◆ set_sched_param()

void line::Station::set_sched_param ( std::size_t cls,
double weight )
inline

setSchedParam(class, weight): the DPS/GPS share.

Definition at line 108 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_sched_param().

◆ set_service()

void line::Station::set_service ( std::size_t cls,
const Dist & d )
inline

setService(class, distribution).

Definition at line 94 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_service().

◆ set_switchover()

void line::Station::set_switchover ( std::size_t cls,
const Dist & so )
inline

setSwitchover(class, distribution).

Definition at line 120 of file nodes.h.

References line::Node::idx_, line::Node::model_, and line::qn::Network< T >::set_switchover().


The documentation for this class was generated from the following file: