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 , FORCED_INSTANTIATION , ALL_MASK } |
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) |
| 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.
| 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.
| FORCED_INSTANTIATION |
This flag is set for a port for which the PortInspector or DataInspector attribute is true. Then the port is part of an instantiation (see InstantiationTree), no matter if it's actually needed for the final output or not. This is a prerequisite for being accessible at core node execution time. Unlike TappingPort/TAPPING_PORT, this flag has no effect on ports which are evaluated anyway. (Namely, a port can appear in multiple instantiations, see InstantiationTree. TappingPort makes sure that the port is part of the root instantiation, FORCED_INSTANTIATION does this only if the port wasn't part of any instantiation otherwise.)
| ALL_MASK |
Combination of all flags of this enum.
| 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.