Skip to main content

chronon::sender::IPortHandle

More...

#include <PortDirectory.hpp>

Inherited by chronon::sender::InPortHandle< T >, chronon::sender::OutPortHandle< T >

Public Functions

Name
virtual~IPortHandle() =default
virtual PortBase *portBase() const =0
virtual Unit *owner() const =0
virtual const std::string &name() const =0
virtual boolisOutPort() const =0
virtual boolisInPort() const =0
virtual const std::string &fullPath() const =0
virtual std::type_indexdataTypeIndex() const =0
virtual const std::type_info &dataType() const =0
virtual ConnectionBase *connectTo(IPortHandle * other, uint32_t delay) =0

Detailed Description

class chronon::sender::IPortHandle;

IPortHandle - Type-erased base class for port handles.

Enables runtime port discovery and type-safe binding without knowing concrete types at compile time.

Public Functions Documentation

function ~IPortHandle

virtual ~IPortHandle() =default

function portBase

virtual PortBase * portBase() const =0

Reimplemented by: chronon::sender::InPortHandle::portBase, chronon::sender::OutPortHandle::portBase

function owner

virtual Unit * owner() const =0

Reimplemented by: chronon::sender::InPortHandle::owner, chronon::sender::OutPortHandle::owner

function name

virtual const std::string & name() const =0

Reimplemented by: chronon::sender::InPortHandle::name, chronon::sender::OutPortHandle::name

function isOutPort

virtual bool isOutPort() const =0

Reimplemented by: chronon::sender::InPortHandle::isOutPort, chronon::sender::OutPortHandle::isOutPort

function isInPort

virtual bool isInPort() const =0

Reimplemented by: chronon::sender::InPortHandle::isInPort, chronon::sender::OutPortHandle::isInPort

function fullPath

virtual const std::string & fullPath() const =0

Reimplemented by: chronon::sender::InPortHandle::fullPath, chronon::sender::OutPortHandle::fullPath

function dataTypeIndex

virtual std::type_index dataTypeIndex() const =0

Reimplemented by: chronon::sender::InPortHandle::dataTypeIndex, chronon::sender::OutPortHandle::dataTypeIndex

function dataType

virtual const std::type_info & dataType() const =0

Reimplemented by: chronon::sender::InPortHandle::dataType, chronon::sender::OutPortHandle::dataType

function connectTo

virtual ConnectionBase * connectTo(
IPortHandle * other,
uint32_t delay
) =0

Parameters:

  • other The destination port handle
  • delay Connection delay in cycles

Return: Pointer to the created ConnectionBase, or nullptr on failure

Reimplemented by: chronon::sender::InPortHandle::connectTo, chronon::sender::OutPortHandle::connectTo

Connect this port to another port (for OutPort -> InPort binding).


Updated on 2026-05-26 at 05:42:32 +0000