Skip to content

scram::mef::Event

Abstract base class for general fault tree events.

#include <event.h>

Inherits from scram::mef::Id, scram::mef::Usage, scram::mef::Element, scram::mef::Role, scram::mef::ContainerElement, boost::noncopyable

Inherited by scram::mef::BasicEvent, scram::mef::Gate, scram::mef::HouseEvent

Public Functions

Name
virtual~Event() =0<br>Abstract class.
Id(std::string name, std::string base_path ="", RoleSpecifier role =RoleSpecifier::kPublic)<br>Constructs an element with an original name.

Public Attributes

Name
constexpr const char *kTypeString <br>For error messages.

Additional inherited members

Public Functions inherited from scram::mef::Id

Name
const std::string &unique_name(const Element & element)<br>Produces unique name for the model element within the same type.
const std::string &unique_name(const Id & element)
const std::string &id() const
std::string_viewid_view() const
std::string_viewfull_path() const
voidid(std::string name)<br>Resets the element ID.

Protected Functions inherited from scram::mef::Id

Name
~Id() =default

Public Functions inherited from scram::mef::Usage

Name
boolusage() const
voidusage(bool usage)

Protected Functions inherited from scram::mef::Usage

Name
~Usage() =default

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
Element(std::string name)<br>Constructs an element with an original 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::Role

Name
Role(RoleSpecifier role =RoleSpecifier::kPublic, std::string base_path ="")<br>Sets the role of an element upon creation.
RoleSpecifierrole() const
const std::string &base_path() const

Protected Functions inherited from scram::mef::Role

Name
~Role() =default

Protected Functions inherited from scram::mef::ContainerElement

Name
const Element *container() const

Friends inherited from scram::mef::ContainerElement

Name
classContainer

Public Functions Documentation

function ~Event

cpp
virtual ~Event() =0

Abstract class.

function Id

cpp
explicit Id(
    std::string name,
    std::string base_path ="",
    RoleSpecifier role =RoleSpecifier::kPublic
)

Constructs an element with an original name.

Parameters:

  • name The local identifier name.
  • role A role specifier of the element.
  • base_path The series of containers to get this event.

Exceptions:

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

Sets the role of an element upon creation.

The base reference path must be formatted according to the MEF documentation and additions.

Mangles the element name into a unique id. Private elements get their full path as their ids, while public elements retain their name as ids.

Public Attributes Documentation

variable kTypeString

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

For error messages.


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