Skip to content

scram::mef::EventTree

Event Tree representation with MEF constructs.

#include <event_tree.h>

Inherits from scram::mef::Element, scram::mef::Usage, scram::mef::Composite< Container< EventTree, Sequence, false >, Container< EventTree, FunctionalEvent >, Container< EventTree, NamedBranch > >, scram::mef::ContainerElement, boost::noncopyable

Public Functions

Name
autosequances() const
autofunctional_events() const
autobranches() const
const Branch &initial_state() const
voidinitial_state(Branch branch)<br>Sets the initial state of the event tree.
voidAdd(std::unique_ptr< Fork > fork)<br>Registers an event tree fork.
Element(std::string name)<br>Constructs an element with an original name.

Public Attributes

Name
constexpr const char *kTypeString <br>Container and element type string for error messages.

Additional inherited members

Public Types inherited from scram::mef::Element

Name
using ext::linear_set< Attribute, AttributeKey >AttributeMap <br>Unique attribute map keyed with the attribute names.

Public Functions inherited from scram::mef::Element

Name
const std::string &name() const
std::string_viewname_view() const
const std::string &label() const
voidlabel(std::string label)<br>Sets the element label.
const AttributeMap &attributes() const
voidAddAttribute(Attribute attr)<br>Adds an attribute to the attribute map of this element.
voidSetAttribute(Attribute attr)<br>Sets an attribute to the attribute map.
const Attribute *GetAttribute(std::string_view name) const
std::optional< Attribute >RemoveAttribute(std::string_view name)<br>Removes an attribute of this element.

Protected Functions inherited from scram::mef::Element

Name
~Element() =default
voidname(std::string name)<br>Resets the element name.

Public Functions inherited from scram::mef::Usage

Name
boolusage() const
voidusage(bool usage)

Protected Functions inherited from scram::mef::Usage

Name
~Usage() =default

Public Functions inherited from scram::mef::Composite< Container< EventTree, Sequence, false >, Container< EventTree, FunctionalEvent >, Container< EventTree, NamedBranch > >

Name
template <class T > <br>autotable() const
template <class T > <br>autotable()
template <class T ,class ContainerType =typename detail::container_of<T, Ts...>::type> <br>const T &Get(const typename ContainerType::key_type & id) const<br>Retrieves an element from the container.
template <class T ,class ContainerType =typename detail::container_of<T, Ts...>::type> <br>T &Get(const typename ContainerType::key_type & id)

Protected Functions inherited from scram::mef::Composite< Container< EventTree, Sequence, false >, Container< EventTree, FunctionalEvent >, Container< EventTree, NamedBranch > >

Name
template <class T > <br>decltype(auto)data() const

Protected Functions inherited from scram::mef::ContainerElement

Name
const Element *container() const

Friends inherited from scram::mef::ContainerElement

Name
classContainer

Public Functions Documentation

function sequances

cpp
inline auto sequances() const

Return: The table range of event tree elements of specific kind with element original names as keys.

function functional_events

cpp
inline auto functional_events() const

function branches

cpp
inline auto branches() const

function initial_state

cpp
inline const Branch & initial_state() const

Return: The initial state branch of the event tree.

function initial_state

cpp
inline void initial_state(
    Branch branch
)

Sets the initial state of the event tree.

function Add

cpp
inline void Add(
    std::unique_ptr< Fork > fork
)

Registers an event tree fork.

Parameters:

  • fork The fork in this event tree.

function Element

cpp
explicit Element(
    std::string name
)

Constructs an element with an original name.

Parameters:

  • name The local identifier name.

Exceptions:

The name is expected to conform to identifier requirements described in the MEF documentation and additions.

Public Attributes Documentation

variable kTypeString

cpp
static constexpr const char * kTypeString = "event tree";

Container and element type string for error messages.


Updated on 2025-11-11 at 16:51:08 +0000