Classes | |
| struct | GNodeDataPtr |
| class | GNodeHandle |
| class | NodeSystemInterface |
| class | NodeSystem |
| class | GNodeBase |
| class | MutableGNodeBase |
| class | GNodeResultBase< SUPER > |
| class | GNodeFunctions< BASE > |
| class | GNode |
| class | MutableGNodeFunctions< BASE > |
| class | MutableGNode |
| class | GNodeIteratorBase |
| class | GNodeIterator< NODE > |
| class | NodeFunctions< BASE > |
| class | Node |
| class | MutableNodeFunctions< BASE > |
| class | MutableNode |
| class | MutableRoot |
| class | PortListFunctions< BASE > |
| class | PortList |
| class | MutablePortListFunctions< BASE > |
| class | MutablePortList |
| class | PortFunctions< BASE > |
| class | Port |
| class | MutablePortFunctions< BASE > |
| class | MutablePort |
Namespaces | |
| maxon | |
| maxon::nodes | |
| maxon::nodes::details | |
Macros | |
| #define | MAXON_CPP20_REQUIRES(...) |
| #define | PRIVATE_MAXON_NODE_CTOR(name, super) |
| #define | PRIVATE_MAXON_NODEFN_PROLOGUE |
| #define | PRIVATE_MAXON_NODEFN_MEMBERS(name, super) |
| #define | PRIVATE_MAXON_NODE_MEMBERS(name, super) |
Typedefs | |
| template<Bool MUTABLE> | |
| using | GNodeSelector = typename std::conditional< MUTABLE, MutableGNode, GNode >::type |
| template<Bool MUTABLE> | |
| using | PortListSelector = typename std::conditional< MUTABLE, MutablePortList, PortList >::type |
| template<Bool MUTABLE> | |
| using | PortSelector = typename std::conditional< MUTABLE, MutablePort, Port >::type |
| using | Connection = Tuple< Port, Wires > |
| using | MutableConnection = Tuple< MutablePort, Wires > |
| template<Bool MUTABLE> | |
| using | ConnectionSelector = typename std::conditional< MUTABLE, MutableConnection, Connection >::type |
| using | UpdateAssetEntry = Tuple< AssetReference, AssetBase > |
| template<Bool MUTABLE> | |
| using | NodeSelector = typename std::conditional< MUTABLE, MutableNode, Node >::type |
| template<typename BASE > | |
| using | NodeFunctionsSuper = typename std::conditional< BASE::HAS_ERROR, typename std::conditional< BASE::MUTABLE, MutableGNodeFunctions< BASE >, GNodeFunctions< BASE > >::type, GNodeSelector< BASE::MUTABLE > >::type |
| template<typename BASE > | |
| using | PortFunctionsSuper = typename std::conditional< BASE::HAS_ERROR, typename std::conditional< BASE::MUTABLE, MutablePortListFunctions< BASE >, PortListFunctions< BASE > >::type, PortListSelector< BASE::MUTABLE > >::type |
Enumerations | |
| enum class | GNODE_FLAGS : UInt64 { NONE , EXPLICIT_PORT , DIRECT_PORT , DERIVED_PORT_INHERITED , DERIVED_PORT_SYNTHESIZED , CONTEXT_SOURCE , CONTEXT_TARGET , FUNCTION_INSTANTIATION , CONTEXT_PARAMETER_PORT , TAPPING_PORT , DERIVATION_FILTER_SOURCE , DERIVATION_FILTER_TARGET , UNIQUE_GLOBAL_CONTEXT_PORT , ALL_MASK } |
| enum class | VALUEMODE : Char { NONE , DYNAMIC , CONSTANT , UNKNOWN_CONSTANT } |
Functions | |
| class NodeSystemData | MAXON_FORWARD ("maxon/nodesystem_data.h") |
| class NodeSystemClass | MAXON_FORWARD ("maxon/nodesystem_class.h") |
| class NodeSystemDerivationHandler | MAXON_FORWARD ("maxon/nodesystem_derivation.h") |
| class TemplateArguments | MAXON_FORWARD ("maxon/nodetemplate.h") |
| enum maxon::nodes::GNODE_FLAGS UInt64 | MAXON_ENUM_FLAGS (GNODE_FLAGS) |
| enum maxon::nodes::VALUEMODE Char | MAXON_ENUM_LIST (VALUEMODE) |
| template<typename T > | |
| Result< T > | ConstructGNodeResult (typename ConstIf< NodeSystemInterface, !T::MUTABLE >::type *system, Result< GNodeHandle > &&handle) |
| MAXON_DATATYPE (MutableRoot, "net.maxon.node.datatype.mutableroot") | |
| #define MAXON_CPP20_REQUIRES | ( | ... | ) |
LiteralId (constexpr) value type not allowed on ports.
| #define PRIVATE_MAXON_NODE_CTOR | ( | name, | |
| super | |||
| ) |
| #define PRIVATE_MAXON_NODEFN_PROLOGUE |
| #define PRIVATE_MAXON_NODEFN_MEMBERS | ( | name, | |
| super | |||
| ) |
| #define PRIVATE_MAXON_NODE_MEMBERS | ( | name, | |
| super | |||
| ) |
| NONE |
No flag set.
Don't do any finalizations at all.
No flags.
The port doesn't have a value at all.
| EXPLICIT_PORT |
This flag is set for a port which has been created explicitly by user code, as opposed to derived ports (DERIVED_PORT_INHERITED, DERIVED_PORT_SYNTHESIZED) which are created based on port bundles of connected ports.
| DIRECT_PORT |
| DERIVED_PORT_INHERITED |
This flag is set for a port which has been created (or would have been created if it hadn't been created explicitly by user code) during the derivation of inherited ports, namely when a port derives an inner port from an incoming connection from a port bundle.
| DERIVED_PORT_SYNTHESIZED |
This flag is set for a port which has been created (or would have been created if it hadn't been created explicitly by user code) during the derivation of synthesized ports, namely when a port derives an inner port from an outgoing connection to a port bundle.
| CONTEXT_SOURCE |
This flag is set for a port which is a source port of a CONTEXT wire (or which has an enclosing port with that property).
| CONTEXT_TARGET |
This flag is set for a port which is a target port of a CONTEXT wire (or which has an enclosing port with that property).
| FUNCTION_INSTANTIATION |
This flag is set for a port which has the FunctionParameters attribute set (or which has an enclosing port with that property). Such a port provides a context containing the function parameters, and it instantiates its predecessor subgraph for a compilation into a function.
| CONTEXT_PARAMETER_PORT |
This flag is set for the context port of a built-in NODE::CONTEXT::GET node.
| TAPPING_PORT |
This flag is set for a port for which the TappingPort attribute is true (or which has an enclosing port with that property).
| DERIVATION_FILTER_SOURCE |
This flag can be set for a port to enable connection filtering for derivation: A connection from a port marked in such a way to a port which has the DERIVATION_FILTER_TARGET flag set has to pass the filter function NodeSystemDerivationHandlerInterface::FilterDerivationConnection, otherwise it isn't reported by PortFunctions::GetConnections.
| DERIVATION_FILTER_TARGET |
See DERIVATION_FILTER_SOURCE.
| UNIQUE_GLOBAL_CONTEXT_PORT |
This flag is set for a child port of the GlobalContext port when that port shouldn't receive the value of a shared global context, but its own unique context value. This is accomplished by changing the port id of the port on the way to the root node to be the full path to the port (excluding the identifiers for input list and GlobalContext, so e.g. A/u instead of A<GC/u in the example below). E.g., in the following example there are two child nodes A, B, and each of them has a shared global context s and a unique global context u. At root level, there are distinct ports for the unique global contexts of A and B.
| ALL_MASK |
Combination of all flags of this enum.
| DYNAMIC |
The port's value is dynamic, so it can't be computed during validation because it depends on values not known at that time.
| CONSTANT |
The port's value is a known constant, so the EffectivePortValue attribute yields a valid value.
| UNKNOWN_CONSTANT |
The port's value is an unknown constant. This mode happens when the value mode CONSTANT is injected into a template/group but the corresponding constant value is not injected (because the template/group isn't interested in the value itself).
| DIRECT_ATTRIBUTES |
Writes direct attributes (those which are set directly at the node system).
| BASE_ATTRIBUTES |
Writes base attributes (those which are inherited from a base node system).
| DERIVED_ATTRIBUTES |
Writes derived attributes.
| BASES |
Also writes the node systems which are used as bases for the node system.
| ALL_BASES |
Like BASES, but also writes bases of bases etc.
| NO_CONNECTIONS |
No connections will be written.
| INDUCED_CONNECTIONS |
Induced connections will be written.
| ATTRIBUTES |
Combination of all attribute flags, used to write all attributes.
| CLEANUP |
Run clean-up finalizations.
| FOR_GROUP |
Deprecated.