LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::ldes::engine::LnEvent Struct Reference

One scheduled event of the layered engine. More...

#include <line/solvers/ldes/ldes_ln_engine.h>

Public Attributes

double t = 0.0
int kind = 0
 0 = host completion, 1 = think completion, 2 = a task thread finished its cold start, 3 = an idle task thread's delay-off countdown expired.
std::size_t who = 0
std::size_t aux = 0
std::uint64_t gen = 0
std::uint64_t seq = 0

Detailed Description

One scheduled event of the layered engine.

Definition at line 64 of file ldes_ln_engine.h.

Member Data Documentation

◆ aux

std::size_t line::ldes::engine::LnEvent::aux = 0

Definition at line 78 of file ldes_ln_engine.h.

◆ gen

std::uint64_t line::ldes::engine::LnEvent::gen = 0

Definition at line 79 of file ldes_ln_engine.h.

◆ kind

int line::ldes::engine::LnEvent::kind = 0

0 = host completion, 1 = think completion, 2 = a task thread finished its cold start, 3 = an idle task thread's delay-off countdown expired.

For kinds 2 and 3 who is the task SLOT and aux the thread within it, and gen is the generation the timer was armed with: a countdown caught by an arriving request is cancelled by bumping the generation, so the event still fires but finds itself stale and does nothing. The event queue has no removal.

Definition at line 76 of file ldes_ln_engine.h.

Referenced by line::ldes::engine::LnEventLater::operator()().

◆ seq

std::uint64_t line::ldes::engine::LnEvent::seq = 0

Definition at line 80 of file ldes_ln_engine.h.

Referenced by line::ldes::engine::LnEventLater::operator()().

◆ t

double line::ldes::engine::LnEvent::t = 0.0

Definition at line 65 of file ldes_ln_engine.h.

Referenced by line::ldes::engine::LnEventLater::operator()().

◆ who

std::size_t line::ldes::engine::LnEvent::who = 0

Definition at line 77 of file ldes_ln_engine.h.


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