#include <nodesystem.h>
MutablePortList represents a PortList within a NodeSystem with write access.
Public Types | |
using | Super = MutablePortListFunctions< MutableGNodeBase > |
![]() | |
using | ResultFunctions = MutablePortListFunctions< maxon::nodes::details::GNodeResultBase< SUPER > > |
using | Super = PortListFunctions< MutableGNodeBase > |
![]() | |
using | Iterator = GNodeIterator< PortSelector< BASE::MUTABLE > > |
template<typename SUPER > | |
using | ResultFunctions = PortListFunctions< maxon::nodes::details::GNodeResultBase< SUPER > > |
using | Super = maxon::nodes::details::NodeFunctionsSuper< BASE > |
Public Member Functions | |
const PortList & | ToImmutable () const |
![]() | |
Result< MutablePort > | AddPort (const Id &portId, GNODE_FLAGS flags=GNODE_FLAGS::NONE) const |
Result< MutablePort > | AddPort (const Id &portId, Opt< ChangeList & > list) const |
Result< typename SFINAEHelper< MutablePort, ATTR >::type > | AddPort () const |
Result< MutablePort > | FindOrAddPort (const Id &portId, Opt< ChangeList & > list={}) const |
![]() | |
PORT_DIR | GetPortDirection () const |
Result< NodeSelector< BASE::MUTABLE > > | GetNode () const |
Result< Iterator > | GetPorts () const |
Result< PortSelector< BASE::MUTABLE > > | GetSinglePort () const |
Result< PortSelector< BASE::MUTABLE > > | FindPort (const InternedId &port) const |
Result< PortSelector< BASE::MUTABLE > > | FindPort (const Id &port) const |
template<typename PATH > | |
Result< void > | InitFromPath (typename maxon::nodes::details::NodeFunctionsSuper< BASE >::NodeSystemCtorParam system, PATH &&path, NODE_KIND check=NODE_KIND::PORTLIST_MASK|NODE_KIND::PORT_MASK) |
Static Public Member Functions | |
static MAXON_ATTRIBUTE_FORCE_INLINE const MutablePortList & | NullValue () |
|
static |
const PortList& ToImmutable | ( | ) | const |
Casts this MutablePortList to an immutable PortList. If you call this function during an active modification you have to make sure that the returned PortList (and all further immutable references which are obtained through this PortList) is only stored temporarily and goes out of scope before the next modification is made, see usernodes_modifications.