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

Class representing a data provider for static BPMN instance data. More...

Detailed Description

The StaticDataProvider class is responsible for providing and managing instance data for BPMN processes.

Definition at line 16 of file StaticDataProvider.h.

#include <StaticDataProvider.h>

Inheritance diagram for BPMNOS::Model::StaticDataProvider:

Classes

struct  StaticInstanceData
 

Public Member Functions

 StaticDataProvider (const std::string &modelFile, const std::string &instanceFileOrString)
 Constructor for StaticDataProvider.
 
 StaticDataProvider (const std::string &modelFile, const std::vector< std::string > &folders, const std::string &instanceFileOrString)
 Constructor for StaticDataProvider.
 
 ~StaticDataProvider () override=default
 
std::unique_ptr< ScenariocreateScenario (unsigned int scenarioId=0) override
 
- Public Member Functions inherited from BPMNOS::Model::DataProvider
 DataProvider (const std::string &modelFile, const std::vector< std::string > &folders)
 Constructor for DataProvider.
 
virtual ~DataProvider ()=0
 
const ModelgetModel () const
 

Protected Member Functions

void readInstances ()
 
void ensureDefaultValue (StaticInstanceData &instance, const std::string attributeId, std::optional< BPMNOS::number > value=std::nullopt)
 

Protected Attributes

CSVReader reader
 
std::unordered_map< long unsigned int, StaticInstanceDatainstances
 
std::unordered_map< const Attribute *, BPMNOS::numberglobalValueMap
 
BPMNOS::number earliestInstantiation
 
BPMNOS::number latestInstantiation
 
- Protected Attributes inherited from BPMNOS::Model::DataProvider
std::unique_ptr< Modelmodel
 Pointer to the BPMN model.
 
DataInput attributes
 Map holding all attributes in the model with keys being the process (or nullptr for global attributes) and attribute id.
 

Constructor & Destructor Documentation

◆ StaticDataProvider() [1/2]

StaticDataProvider::StaticDataProvider ( const std::string & modelFile,
const std::string & instanceFileOrString )
Parameters
modelFileThe file path to the BPMN model file.
instanceFileOrStringThe file path to the instance data file or a string containing the data.

Definition at line 13 of file StaticDataProvider.cpp.

◆ StaticDataProvider() [2/2]

StaticDataProvider::StaticDataProvider ( const std::string & modelFile,
const std::vector< std::string > & folders,
const std::string & instanceFileOrString )
Parameters
modelFileThe file path to the BPMN model file.
foldersThe folders containing lookup tables.
instanceFileOrStringThe file path to the instance data file or a string containing the data.

Definition at line 18 of file StaticDataProvider.cpp.

◆ ~StaticDataProvider()

BPMNOS::Model::StaticDataProvider::~StaticDataProvider ( )
overridedefault

Member Function Documentation

◆ createScenario()

std::unique_ptr< Scenario > StaticDataProvider::createScenario ( unsigned int scenarioId = 0)
overridevirtual

Implements BPMNOS::Model::DataProvider.

Definition at line 168 of file StaticDataProvider.cpp.

◆ ensureDefaultValue()

void StaticDataProvider::ensureDefaultValue ( StaticInstanceData & instance,
const std::string attributeId,
std::optional< BPMNOS::number > value = std::nullopt )
protected

Definition at line 140 of file StaticDataProvider.cpp.

◆ readInstances()

void StaticDataProvider::readInstances ( )
protected

Definition at line 36 of file StaticDataProvider.cpp.

Member Data Documentation

◆ earliestInstantiation

BPMNOS::number BPMNOS::Model::StaticDataProvider::earliestInstantiation
protected

Definition at line 46 of file StaticDataProvider.h.

◆ globalValueMap

std::unordered_map< const Attribute*, BPMNOS::number > BPMNOS::Model::StaticDataProvider::globalValueMap
protected

Definition at line 45 of file StaticDataProvider.h.

◆ instances

std::unordered_map< long unsigned int, StaticInstanceData > BPMNOS::Model::StaticDataProvider::instances
protected

Definition at line 44 of file StaticDataProvider.h.

◆ latestInstantiation

BPMNOS::number BPMNOS::Model::StaticDataProvider::latestInstantiation
protected

Definition at line 47 of file StaticDataProvider.h.

◆ reader

CSVReader BPMNOS::Model::StaticDataProvider::reader
protected

Definition at line 36 of file StaticDataProvider.h.


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