struct Bvr::SystemDesc

Description for application scheduleable function.

Functions

constexpr Bvr::SystemDesc::SystemDesc(T &&fn) noexcept

Constructor that takes a conditional invokable.

Parameters:

Name Description
fn system function returning EShouldRun

Bvr::SystemDesc::SystemDesc(T &&fn) noexcept

Constructor that takes an invokable.

Parameters:

Name Description
fn system function

Bvr::SystemDesc::SystemDesc(ConditionDesc &&cond)

Move construct from ConditionDesc.

Bvr::SystemDesc::SystemDesc(const ConditionDesc &cond)

Copy construct from ConditionDesc.

Bvr::SystemDesc::SystemDesc(SystemDesc &&rhs) noexcept=default

Bvr::SystemDesc::SystemDesc(const SystemDesc &rhs) noexcept=default

SystemDesc & Bvr::SystemDesc::operator=(SystemDesc &&rhs) noexcept=default

SystemDesc & Bvr::SystemDesc::operator=(const SystemDesc &rhs) noexcept=default

Bvr::SystemDesc::~SystemDesc()=default

EShouldRun Bvr::SystemDesc::Run(App &app)

Execute the system function.

Parameters:

Name Description
app the application from which system is executed

constexpr SystemDesc & Bvr::SystemDesc::Label(LabelT name)

Set a system label.

Parameters:

Name Description
name label

constexpr SystemDesc & Bvr::SystemDesc::Before(const LabelT next)

Adds a reference to a system before which this system is executed.

Parameters:

Name Description
next label of the system

constexpr SystemDesc & Bvr::SystemDesc::After(const LabelT prev)

Adds a reference to a system after which this system is executed.

Parameters:

Name Description
prev label of the system

constexpr SystemDesc & Bvr::SystemDesc::WithCondition(const CondT &cond)

Adds a reference to a condition Conditions are executed before all systems.

Parameters:

Name Description
cond label or description of the condition

constexpr SystemDesc & Bvr::SystemDesc::WithCondition(CondT &&cond)

Adds a reference to a condition Conditions are executed before all systems.

Parameters:

Name Description
cond label or description of the condition

constexpr bool Bvr::SystemDesc::IsCondition() const

Tells weather this system is a condition system.

Returns: weather this system is condition

constexpr ConditionT & Bvr::SystemDesc::RunCondition()

Get the run condition.

Returns: either label or a description of a condition

constexpr LabelT Bvr::SystemDesc::RunConditionLabel()

Get the run condition label.

Returns: label of a condition

constexpr SystemDesc & Bvr::SystemDesc::Flags(const ESystemFlags flags)

Set system execution flags.

Parameters:

Name Description
flags to set

ESystemFlags Bvr::SystemDesc::Flags() const

Get system execution flags.

Returns: execution flags

constexpr std::span< LabelT const > Bvr::SystemDesc::Labels() const final

constexpr std::span< LabelT const > Bvr::SystemDesc::Before() const final

constexpr std::span< LabelT const > Bvr::SystemDesc::After() const final

constexpr std::string_view Bvr::SystemDesc::Name() const final

std::span< ResourceAccess const > Bvr::SystemDesc::GetAccessedResources() const

Variables

LabelT Bvr::SystemDesc::m_label

std::span Bvr::SystemDesc::m_accessedResources

std::vector Bvr::SystemDesc::m_before

std::vector Bvr::SystemDesc::m_after

InvokableT Bvr::SystemDesc::m_runFn

ConditionT Bvr::SystemDesc::m_condition

ESystemFlags Bvr::SystemDesc::m_eFlags