bpmn++
A BPMN parser library, written in C++
Loading...
Searching...
No Matches
BPMN::ChildNode Class Reference

Base class for BPMN elements within a Scope. More...

Detailed Description

Definition at line 16 of file ChildNode.h.

#include <ChildNode.h>

Inheritance diagram for BPMN::ChildNode:

Public Member Functions

 ChildNode (XML::bpmn::tBaseElement *element, Scope *parent)
 
template<typename T >
Nodeancestor ()
 Returns the first ancestor node representing type T.
 
template<typename T >
const Nodeancestor () const
 Returns the first ancestor node representing type T.
 
- Public Member Functions inherited from BPMN::Node
 Node (XML::bpmn::tBaseElement *element)
 Constructs a Node object representing a BPMN process or flow node.
 
Nodefind (std::function< bool(Node *)> condition)
 Returns the first node found matching a given condition.
 
const Nodefind (std::function< bool(const Node *)> condition) const
 Returns the first node found matching a given condition.
 
std::vector< Node * > find_all (std::function< bool(Node *)> condition)
 Returns all nodes matching a given condition.
 
std::vector< const Node * > find_all (std::function< bool(const Node *)> condition) const
 Returns all nodes matching a given condition.
 
- Public Member Functions inherited from BPMN::BaseElement
 BaseElement (XML::bpmn::tBaseElement *element)
 Constructs a BaseElement object representing a BPMN element.
 
template<typename T >
T * is ()
 Attempts to return the element in the specified type T.
 
template<typename T >
const T * is () const
 Attempts to return the element in the specified type T.
 
template<typename T = XML::bpmn::tBaseElement>
T * get ()
 Casts the element to the specified type T.
 
template<typename T = XML::bpmn::tBaseElement>
const T * get () const
 Casts the element to the specified type T.
 
- Public Member Functions inherited from BPMN::Element
virtual ~Element ()=default
 
template<typename T >
T * represents ()
 Attempts to cast the element to the specified type T.
 
template<typename T >
const T * represents () const
 Attempts to cast the element to the specified type T.
 
template<typename T >
T * as ()
 Casts the element to the specified type T.
 
template<typename T >
const T * as () const
 Casts the element to the specified type T.
 

Public Attributes

Scopeparent
 Reference to the parent node.
 
- Public Attributes inherited from BPMN::Node
std::vector< MessageFlow * > receiving
 Vector containing all message flows going in to the node.
 
std::vector< MessageFlow * > sending
 Vector containing all message flows going out of the node.
 
- Public Attributes inherited from BPMN::BaseElement
XML::bpmn::tBaseElementelement
 
std::string id
 Id of element.
 
std::unique_ptr< ExtensionElementsextensionElements
 

Friends

class Model
 

Constructor & Destructor Documentation

◆ ChildNode()

ChildNode::ChildNode ( XML::bpmn::tBaseElement element,
Scope parent 
)

Definition at line 7 of file ChildNode.cpp.

Member Function Documentation

◆ ancestor() [1/2]

template<typename T >
Node * BPMN::ChildNode::ancestor ( )
inline

Definition at line 22 of file ChildNode.h.

◆ ancestor() [2/2]

template<typename T >
const Node * BPMN::ChildNode::ancestor ( ) const
inline

Definition at line 34 of file ChildNode.h.

Friends And Related Symbol Documentation

◆ Model

friend class Model
friend

Definition at line 17 of file ChildNode.h.

Member Data Documentation

◆ parent

Scope* BPMN::ChildNode::parent

Definition at line 46 of file ChildNode.h.


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