#include <variadic_port.h>
VariadicPort manages ports with a dynamic number of instances. The usage is documented at MicroNodeInterface::AddVariadicPort.
Classes | |
class | Access |
class | Ports |
Public Types | |
using | PortId = typename std::conditional< OUTPUT, MicroNodePtr<>, InPortId >::type |
Public Member Functions | |
Result< void > | Init (MicroNodeGroupInterface *node, const Block< const Member > &members, MicroNode::FLAGS flags=MicroNode::FLAGS::NONE) |
Result< void > | Init (MicroNodeGroupInterface *node, const CString &prefix, Int count, Int base, MicroNode::FLAGS flags=MicroNode::FLAGS::NONE, const DataType &type=GetPortType< T >()) |
template<typename SUFFIXES > | |
Result< void > | Init (MicroNodeGroupInterface *node, const CString &prefix, const SUFFIXES &suffixes, MicroNode::FLAGS flags=MicroNode::FLAGS::NONE, const DataType &type=GetPortType< T >()) |
Result< void > | SetType (Int index, const DataType &type) |
template<typename MNI > | |
Result< void > | ConnectMicroNode (MicroNodePtr< MNI > node, Access MNI::*a, WIRETYPE wtype=DEFAULT_WIRE) |
BaseArray< PortId > & | GetPorts () |
Int | GetCount () const |
Static Public Member Functions | |
static Result< VariadicPort > | Create (MicroNodeGroupInterface *node, const CString &prefix, Int count, Int base, MicroNode::FLAGS flags=MicroNode::FLAGS::NONE) |
static Result< VariadicPort > | Create (MicroNodeGroupInterface *node, const CString &prefix, const Data &arg, const DataType &type=GetPortType< T >(), MicroNode::FLAGS flags=MicroNode::FLAGS::NONE) |
static Result< VariadicPort > | Create (MicroNodeGroupInterface *node, const Block< const Member > &members, MicroNode::FLAGS flags=MicroNode::FLAGS::NONE) |
Static Public Attributes | |
static constexpr WIRETYPE | DEFAULT_WIRE |
static constexpr MicroNode::TYPE | PORT_TYPE |
Static Private Member Functions | |
static void | Assign (InPortId &p, MicroNodePtr<> ptr, MicroNodeGroupInterface *node, const Id &name) |
static void | Assign (MicroNodePtr<> &p, MicroNodePtr<> ptr, MicroNodeGroupInterface *node, const Id &name) |
Private Attributes | |
MicroNodeGroupRef | _group |
BaseArray< PortId > | _ports |
Bool | _template |
CString | _prefix |
using PortId = typename std::conditional<OUTPUT, MicroNodePtr<>, InPortId>::type |
|
static |
|
static |
|
static |
Result<void> Init | ( | MicroNodeGroupInterface * | node, |
const Block< const Member > & | members, | ||
MicroNode::FLAGS | flags = MicroNode::FLAGS::NONE |
||
) |
Result<void> Init | ( | MicroNodeGroupInterface * | node, |
const CString & | prefix, | ||
Int | count, | ||
Int | base, | ||
MicroNode::FLAGS | flags = MicroNode::FLAGS::NONE , |
||
const DataType & | type = GetPortType<T>() |
||
) |
Result<void> Init | ( | MicroNodeGroupInterface * | node, |
const CString & | prefix, | ||
const SUFFIXES & | suffixes, | ||
MicroNode::FLAGS | flags = MicroNode::FLAGS::NONE , |
||
const DataType & | type = GetPortType<T>() |
||
) |
Result<void> ConnectMicroNode | ( | MicroNodePtr< MNI > | node, |
Access MNI::* | a, | ||
WIRETYPE | wtype = DEFAULT_WIRE |
||
) |
Int GetCount | ( | ) | const |
|
staticprivate |
|
staticprivate |
|
staticconstexpr |
|
staticconstexpr |
|
private |
|
private |
|
private |