Template Class Port

Inheritance Relationships

Derived Types

Class Documentation

template<class T>
class Port

Subclassed by reactor::Input< T >, reactor::Output< T >

Public Types

using value_type = T

Public Functions

inline Port(const std::string &name, PortType type, Reactor *container)
inline Port(const std::string &name, PortType type, Reactor *container, BaseMultiport *multiport, std::size_t index)
inline void bind_to(Port<T> *port)
auto typed_inward_binding() const noexcept -> Port<T>*
auto typed_outward_bindings() const noexcept -> const std::set<Port<T>*>&
void set(const ImmutableValuePtr<T> &value_ptr)
inline void set(MutableValuePtr<T> &&value_ptr)
inline void set(const T &value)
inline void set(T &&value)
void set(std::nullptr_t) = delete
inline void startup() final
inline void shutdown() final
auto get() const noexcept -> const ImmutableValuePtr<T>&

Private Functions

inline void cleanup() noexcept final

Private Members

ImmutableValuePtr<T> value_ptr_ = {nullptr}