BPMN-OS
BPMN for optimization and simulation
Loading...
Searching...
No Matches
BPMNOS::Model::Guidance Class Reference

Detailed Description

Definition at line 19 of file Guidance.h.

#include <Guidance.h>

Public Types

enum class  Type { Entry , Exit , Choice , MessageDelivery }
 

Public Member Functions

 Guidance (XML::bpmnos::tGuidance *guidance, const AttributeRegistry &attributeRegistry)
 
template<typename DataType >
void apply (const Scenario *scenario, BPMNOS::number currentTime, const BPMNOS::number instanceId, const BPMN::FlowNode *node, BPMNOS::Values &status, DataType &data, BPMNOS::Values &globals) const
 
template<typename DataType >
BPMNOS::number getObjective (const BPMNOS::Values &status, const DataType &data, const BPMNOS::Values &globals) const
 
template<typename DataType >
bool restrictionsSatisfied (const BPMN::FlowNode *node, const BPMNOS::Values &status, const DataType &data, const BPMNOS::Values &globals) const
 

Public Attributes

XML::bpmnos::tGuidanceelement
 
AttributeRegistry attributeRegistry
 Registry allowing to look up attributes by their names.
 
Type type
 
std::vector< std::unique_ptr< Attribute > > attributes
 
std::vector< std::unique_ptr< Restriction > > restrictions
 
std::vector< std::unique_ptr< Operator > > operators
 
std::set< const Attribute * > dependencies
 

Member Enumeration Documentation

◆ Type

enum class BPMNOS::Model::Guidance::Type
strong
Enumerator
Entry 
Exit 
Choice 
MessageDelivery 

Definition at line 25 of file Guidance.h.

Constructor & Destructor Documentation

◆ Guidance()

Guidance::Guidance ( XML::bpmnos::tGuidance * guidance,
const AttributeRegistry & attributeRegistry )

Definition at line 13 of file Guidance.cpp.

Member Function Documentation

◆ apply()

template<typename DataType >
void Guidance::apply ( const Scenario * scenario,
BPMNOS::number currentTime,
const BPMNOS::number instanceId,
const BPMN::FlowNode * node,
BPMNOS::Values & status,
DataType & data,
BPMNOS::Values & globals ) const

Definition at line 124 of file Guidance.cpp.

◆ getObjective()

template<typename DataType >
BPMNOS::number Guidance::getObjective ( const BPMNOS::Values & status,
const DataType & data,
const BPMNOS::Values & globals ) const

Definition at line 78 of file Guidance.cpp.

◆ restrictionsSatisfied()

template<typename DataType >
bool Guidance::restrictionsSatisfied ( const BPMN::FlowNode * node,
const BPMNOS::Values & status,
const DataType & data,
const BPMNOS::Values & globals ) const

Definition at line 108 of file Guidance.cpp.

Member Data Documentation

◆ attributeRegistry

AttributeRegistry BPMNOS::Model::Guidance::attributeRegistry

Definition at line 23 of file Guidance.h.

◆ attributes

std::vector< std::unique_ptr<Attribute> > BPMNOS::Model::Guidance::attributes

Definition at line 27 of file Guidance.h.

◆ dependencies

std::set<const Attribute*> BPMNOS::Model::Guidance::dependencies

Definition at line 31 of file Guidance.h.

◆ element

XML::bpmnos::tGuidance* BPMNOS::Model::Guidance::element

Definition at line 22 of file Guidance.h.

◆ operators

std::vector< std::unique_ptr<Operator> > BPMNOS::Model::Guidance::operators

Definition at line 29 of file Guidance.h.

◆ restrictions

std::vector< std::unique_ptr<Restriction> > BPMNOS::Model::Guidance::restrictions

Definition at line 28 of file Guidance.h.

◆ type

Type BPMNOS::Model::Guidance::type

Definition at line 26 of file Guidance.h.


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