1#ifndef BPMNOS_Model_Choice_H
2#define BPMNOS_Model_Choice_H
27 std::optional< std::pair<std::unique_ptr<Expression>,
bool> >
lowerBound;
28 std::optional< std::pair<std::unique_ptr<Expression>,
bool> >
upperBound;
33 template <
typename DataType>
36 template <
typename DataType>
39 void parseEnumeration(
const std::string& input);
40 void parseBounds(
const std::string& input);
41 void parseDiscretizer(
const std::string& input);
Class representing a choice to be made within a BPMNOS::Model::DecisionTask.
std::optional< std::pair< std::unique_ptr< Expression >, bool > > upperBound
std::set< const Attribute * > dependencies
Choice(XML::bpmnos::tDecision *decision, const AttributeRegistry &attributeRegistry)
std::optional< std::pair< std::unique_ptr< Expression >, bool > > lowerBound
std::pair< BPMNOS::number, BPMNOS::number > getBounds(const BPMNOS::Values &status, const DataType &data, const BPMNOS::Values &globals) const
Returns the minimal and maximal value the attribute may take.
std::vector< BPMNOS::number > getEnumeration(const BPMNOS::Values &status, const DataType &data, const BPMNOS::Values &globals) const
Returns the allowed values the attribute may take.
XML::bpmnos::tDecision * element
const AttributeRegistry & attributeRegistry
std::unique_ptr< Expression > multipleOf
std::vector< std::unique_ptr< Expression > > enumeration