LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::qn::SyncEvent< T > Struct Template Reference

One half of a synchronization: an event at a node, in a class. More...

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

Collaboration diagram for line::qn::SyncEvent< T >:

Public Attributes

EventType event = EventType::LOCAL
std::size_t node = 0
 1-based node index, or local for the dummy
std::size_t cls = 0
 1-based class index
prob = num_traits<T>::from_int(1)
 routing probability, passive half
bool statedep = false
 The routing probability is a FUNCTION of the network state, so prob holds only the state-independent placeholder and the generator must read rt_state(sn, state)(rt_row, rt_col) instead.
std::size_t rt_row = 0
 (isf-1)*nclasses + (r-1) of the active half
std::size_t rt_col = 0
 (jsf-1)*nclasses + (s-1) of this passive half

Detailed Description

template<class T>
struct line::qn::SyncEvent< T >

One half of a synchronization: an event at a node, in a class.

Definition at line 3636 of file state_events.h.

Member Data Documentation

◆ cls

template<class T>
std::size_t line::qn::SyncEvent< T >::cls = 0

1-based class index

Definition at line 3639 of file state_events.h.

◆ event

template<class T>
EventType line::qn::SyncEvent< T >::event = EventType::LOCAL

Definition at line 3637 of file state_events.h.

◆ node

template<class T>
std::size_t line::qn::SyncEvent< T >::node = 0

1-based node index, or local for the dummy

Definition at line 3638 of file state_events.h.

◆ prob

template<class T>
T line::qn::SyncEvent< T >::prob = num_traits<T>::from_int(1)

routing probability, passive half

Definition at line 3640 of file state_events.h.

◆ rt_col

template<class T>
std::size_t line::qn::SyncEvent< T >::rt_col = 0

(jsf-1)*nclasses + (s-1) of this passive half

Definition at line 3654 of file state_events.h.

◆ rt_row

template<class T>
std::size_t line::qn::SyncEvent< T >::rt_row = 0

(isf-1)*nclasses + (r-1) of the active half

Definition at line 3653 of file state_events.h.

◆ statedep

template<class T>
bool line::qn::SyncEvent< T >::statedep = false

The routing probability is a FUNCTION of the network state, so prob holds only the state-independent placeholder and the generator must read rt_state(sn, state)(rt_row, rt_col) instead.

The reference decides this per ACTIVE NODE (sn.isstatedep(node_a,3)) and then calls whatever prob holds, which throws where a node routes one class state-dependently and another by probability. Deciding it per SYNCHRONIZATION agrees wherever the reference runs at all, and does not throw where it would.

Definition at line 3652 of file state_events.h.


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