The Model class encapsulates all processes with their nodes and sequence flows of a BPMN model.
Definition at line 21 of file Model.h.
|
| | Model (const std::string filename, const std::vector< std::string > folders={}) |
| |
| | ~Model () |
| |
| std::vector< std::reference_wrapper< XML::bpmnos::tAttribute > > | getAttributes (XML::bpmn::tBaseElement *element) |
| |
| std::vector< std::reference_wrapper< XML::bpmnos::tAttribute > > | getData (XML::bpmn::tBaseElement *element) |
| |
| std::unique_ptr< LookupTable > | createLookupTable (XML::bpmnos::tTable *table) |
| |
| std::unique_ptr< XML::XMLObject > | createRoot (const std::string &filename) override |
| |
| std::unique_ptr< BPMN::Process > | createProcess (XML::bpmn::tProcess *process) override |
| |
| std::unique_ptr< BPMN::EventSubProcess > | createEventSubProcess (XML::bpmn::tSubProcess *subProcess, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createActivity (XML::bpmn::tActivity *activity, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::SequenceFlow > | createSequenceFlow (XML::bpmn::tSequenceFlow *sequenceFlow, BPMN::Scope *scope) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createAdHocSubProcess (XML::bpmn::tAdHocSubProcess *adHocSubProcess, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createTask (XML::bpmn::tTask *task, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createTimerStartEvent (XML::bpmn::tStartEvent *startEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createTimerBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createTimerCatchEvent (XML::bpmn::tCatchEvent *catchEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createSignalStartEvent (XML::bpmn::tStartEvent *startEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createSignalBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createSignalCatchEvent (XML::bpmn::tCatchEvent *catchEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createSignalThrowEvent (XML::bpmn::tThrowEvent *throwEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createConditionalStartEvent (XML::bpmn::tStartEvent *startEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createConditionalBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createConditionalCatchEvent (XML::bpmn::tCatchEvent *catchEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createMessageStartEvent (XML::bpmn::tStartEvent *startEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createMessageBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createMessageCatchEvent (XML::bpmn::tCatchEvent *catchEvent, BPMN::Scope *parent) override |
| |
| std::unique_ptr< BPMN::FlowNode > | createMessageThrowEvent (XML::bpmn::tThrowEvent *throwEvent, BPMN::Scope *parent) override |
| |
| void | createMessageFlows () override |
| |
| bool | messageMayBeCaught (BPMN::Process *sendingProcess, BPMN::FlowNode *throwingMessageEvent, BPMN::Process *receivingProcess, BPMN::FlowNode *catchingMessageEvent) |
| |
| bool | messageMayBeThrown (BPMN::Process *sendingProcess, BPMN::FlowNode *throwingMessageEvent, BPMN::Process *receivingProcess, BPMN::FlowNode *catchingMessageEvent) |
| |
| void | createMessageCandidates (BPMN::Process *sendingProcess, BPMN::FlowNode *throwingMessageEvent, BPMN::Process *receivingProcess, BPMN::FlowNode *catchingMessageEvent) |
| |
| std::vector< BPMN::MessageFlow * > & | determineMessageFlows (BPMN::FlowNode *messageEvent, auto getMessageFlows) |
| |
| | Model (const std::string &filename) |
| |
|
| | Model () |
| |
| virtual void | readBPMNFile (const std::string &filename) |
| |
| virtual std::unique_ptr< FlowNode > | createFlowNode (XML::bpmn::tFlowNode *flowNode, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createSubProcess (XML::bpmn::tSubProcess *subProcess, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createCallActivity (XML::bpmn::tCallActivity *callActivity, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createTransaction (XML::bpmn::tTransaction *transaction, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createAbstractTask (XML::bpmn::tTask *task, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createSendTask (XML::bpmn::tSendTask *sendTask, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createReceiveTask (XML::bpmn::tReceiveTask *receiveTask, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createUserTask (XML::bpmn::tUserTask *userTask, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createManualTask (XML::bpmn::tManualTask *manualTask, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createScriptTask (XML::bpmn::tScriptTask *scriptTask, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createBusinessRuleTask (XML::bpmn::tBusinessRuleTask *businessRuleTask, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createEvent (XML::bpmn::tEvent *event, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createCancelBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createCompensateBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createErrorBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createEscalationBoundaryEvent (XML::bpmn::tBoundaryEvent *boundaryEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createCatchEvent (XML::bpmn::tCatchEvent *catchEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createLinkTargetEvent (XML::bpmn::tCatchEvent *catchEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createTypedStartEvent (XML::bpmn::tStartEvent *startEvent, XML::bpmn::tEventDefinition &eventDefinition, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createCompensateStartEvent (XML::bpmn::tStartEvent *startEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createErrorStartEvent (XML::bpmn::tStartEvent *startEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createEscalationStartEvent (XML::bpmn::tStartEvent *startEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createUntypedStartEvent (XML::bpmn::tCatchEvent *catchEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createThrowEvent (XML::bpmn::tThrowEvent *throwEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createCancelEndEvent (XML::bpmn::tThrowEvent *throwEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createCompensateThrowEvent (XML::bpmn::tThrowEvent *throwEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createErrorEndEvent (XML::bpmn::tThrowEvent *throwEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createEscalationThrowEvent (XML::bpmn::tThrowEvent *throwEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createTerminateEvent (XML::bpmn::tThrowEvent *throwEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createLinkSourceEvent (XML::bpmn::tThrowEvent *throwEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createUntypedEndEvent (XML::bpmn::tThrowEvent *throwEvent, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createGateway (XML::bpmn::tGateway *gateway, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createParallelGateway (XML::bpmn::tParallelGateway *parallelGateway, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createExclusiveGateway (XML::bpmn::tExclusiveGateway *exclusiveGateway, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createInclusiveGateway (XML::bpmn::tInclusiveGateway *inclusiveGateway, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createEventBasedGateway (XML::bpmn::tEventBasedGateway *eventBasedGateway, Scope *parent) |
| |
| virtual std::unique_ptr< FlowNode > | createComplexGateway (XML::bpmn::tComplexGateway *complexGateway, Scope *parent) |
| |
| virtual std::unique_ptr< DataObject > | createDataObject (XML::bpmn::tDataObject *dataObject, BPMN::Scope *scope) |
| |
| virtual std::unique_ptr< MessageFlow > | createMessageFlow (XML::bpmn::tMessageFlow *messageFlow) |
| |
| virtual void | createChildNodes (Scope *scope) |
| |
| virtual void | createSequenceFlows (Scope *scope) |
| |
| virtual void | createNestedReferences (Scope *scope) |
| |
| virtual void | createFlowReferences (FlowNode *flowNode) |
| |
| virtual void | createCompensations (Scope *scope) |
| |
| virtual void | createCompensationReferences (Scope *scope) |
| |
| virtual void | createLinks (Scope *scope) |
| |
| template<typename T > |
| static std::unique_ptr< T > | bind (std::unique_ptr< T > &&baseElement, std::unique_ptr< ExtensionElements > &&extensionElements) |
| | Binds the extension elements to the given baseElement.
|
| |
| template<typename T > |
| static std::unique_ptr< T > | bind (std::unique_ptr< T > &baseElement, std::unique_ptr< ExtensionElements > &extensionElements) |
| | Binds the extension elements to the given baseElement.
|
| |
| template<typename T > |
| static std::unique_ptr< T > | bind (std::unique_ptr< T > &baseElement, std::unique_ptr< ExtensionElements > &&extensionElements) |
| | Binds the extension elements to the given baseElement.
|
| |
| template<typename T > |
| static std::unique_ptr< T > | bind (std::unique_ptr< T > &&baseElement, std::unique_ptr< ExtensionElements > &extensionElements) |
| | Binds the extension elements to the given baseElement.
|
| |