corenodes_instances.h File Reference

Classes

class  MicroNode
 
class  MicroNode::Base
 
class  MicroNode::AllowsChild< T >
 
class  MicroNode::AllowsParent< T >
 
struct  MicroNode::Source< WT >
 
struct  MicroNode::Child< WT, T >
 
class  CoreNodeInstanceBaseInterface
 
class  MicroNodeInterface
 
class  CoreNodeInstanceInterface
 

Namespaces

 maxon
 
 maxon::corenodes
 

Typedefs

using PortsDescriptionCallback = void(*)(PortsDescription *)
 
using LlvmGlobalsReceiver = Delegate< Result< void >(const CString &name, const CString &decl, void *address)>
 

Functions

template<typename T >
const DataType & GetPortType ()
 
String ToString (const NodeHandle *h, const FormatStatement *fs, Bool checkDataType=true)
 

Variables

 INVALID
 
 BASIC
 
 BATCH
 
 SPLIT_MERGE
 
 ITERATION
 
 SEQUENCING
 
 RECURSION_STEP
 
 CURRENT_ITERATION_VALUE
 
 CURRENT_ITERATION_VALUE_WITH_INIT
 
 COPY
 
 SET_TRUE
 
 NOP
 
 SUBTRACTIVE_DOMAIN
 
 JOIN
 
 CONTROL_TRANSFER
 
 MAX_WITHOUT_FLAG
 
 VARIABLE_MASK
 
 MIN_FLAG
 
 VALUE_PORT_MASK
 
 INPUT_PORT_MASK
 
 EXPORTED_PORT
 
 VIRTUAL_INPUT_PORT
 
 OUTPUT_PORT_MASK
 
 VARIABLE
 
 PORT_MASK
 
 FACTOR_MASK
 
 ROOT
 
 WHILE_CONDITION
 
 INDEFINITE_LOOP
 
 BLOCK
 
 TOP_LEVEL_FACTOR_MASK
 
 FRAME_MASK
 
 TOP_LEVEL_FRAME
 
 FRAME
 
 EVENT_MASK
 
 EVENT
 
 FACTOR_HEAD_MASK
 
 BLOCK_HEAD
 
 CONDITIONAL_HEAD
 
 RECURSION_HEAD
 
 DEFINITE_FACTOR_HEAD_MASK
 
 CONTAINER_LOOP_HEAD_MASK
 
 CONTAINER_OUTPUT_HEAD_MASK
 
 DEFINITE_FACTOR_MASK
 
 CONTAINER_OUTPUT_ELEMENT_MASK
 
 INDEXABLE_FACTOR_MASK
 
 DIMENSIONAL_FACTOR_TEST
 
 CONTAINER_LOOP_MASK
 
 DEFINITE_LOOP_HEAD
 
 CONTAINER_LOOP_HEAD
 
 ARRAY_LOOP_HEAD
 
 CONTAINER_LOOP
 
 ARRAY_LOOP
 
 CONTAINER_OUTPUT_HEAD
 
 CONTAINER_OUTPUT_ELEMENT
 
 ARRAY_OUTPUT_ELEMENT
 
 DEFINITE_LOOP
 
 GENERIC_DEFINITE_LOOP
 
 RECURSION
 
 INPUT_ELEMENT_MASK
 
 ARRAY_INPUT_ELEMENT
 
 CONTAINER_INPUT_ELEMENT
 
 INPUT_MASK
 
 OUTPUT_MASK
 
 CONDITIONAL_MASK
 
 IF
 
 CONTAINER_MASK
 
 CONTAINER
 
 ARRAY_CONTAINER
 
 ARRAY
 
 CONTAINER_OUTPUT_MASK
 
 CONTAINER_OUTPUT
 
 CONTAINER_INPUT_GROUP_MASK
 
 CONTAINER_INPUT_GROUP
 
 FACTOR_WITH_FACTOR_VARIABLE
 
 ALL
 
 NONE
 
 STATE
 
 STATE_MODIFIER
 
 LOCAL
 
 PERMANENT
 
 CACHED
 
 CURRENT_ITV
 
 NEXT_ITV
 
 CONTAINER_MEMBER
 
 COMMUTATIVE
 
 STATE_MAPPER
 
 PARAMETER
 
 INPUT_WITHOUT_VALUE
 
 OUTER_DOMAIN
 
 SUSPEND
 
 INDEPENDENT
 
 INCLUDE_IN_PREDECESSORS
 
 FACTOR_REFERENCE
 
 OPTIONAL_INPUT
 
 CURRENT_ITV_GROUP
 
 NEXT_ITV_GROUP
 
 NEW_UNIQUE_NAME
 
 TIME_LOOP
 
 UNDERSCORE_NUMBER_PREFIX
 
 WRAPPER_DONT_WRAP
 
 WRAPPER_HIDDEN
 
 WRAPPER_KEEP_LETTER_CASE
 
 WRAPPER_LAMBDA
 
 WRAPPER_USE_ATTRIBUTE_RESOURCES
 
 WRAPPER_FIXED_VARIADIC
 
 WRAPPER_COPIED_VARIADIC
 
 WRAPPER_INNER_DOMAIN
 
 WRAPPER_OUTER_DOMAIN
 
 WRAPPER_ENCLOSING_DOMAIN
 
 WRAPPER_STREAM
 
 WRAPPER_CONTEXT
 
 NO_LIFETIME_PORT
 
 NO_FACTOR_NODES
 
 RUNTIME_COST_100
 
 WRAPPER_FLAGS
 
 ITV_MASK
 
 ITV_GROUP_MASK
 
 PORT_MODIFIERS
 
 MODIFIERS
 
 PORTINFO_FLAGS
 
 CONST_MASK
 
 BATCH_ACCESS
 
 CONST_CONTAINER
 
 DIRECT_ACCESS_TEST
 

Variable Documentation

◆ INVALID

INVALID

◆ BASIC

BASIC

Enum value for BasicMicroNode.

◆ BATCH

BATCH

◆ SPLIT_MERGE

SPLIT_MERGE

◆ ITERATION

ITERATION

◆ SEQUENCING

SEQUENCING

◆ RECURSION_STEP

RECURSION_STEP

◆ CURRENT_ITERATION_VALUE

CURRENT_ITERATION_VALUE

◆ CURRENT_ITERATION_VALUE_WITH_INIT

CURRENT_ITERATION_VALUE_WITH_INIT

◆ COPY

COPY

◆ SET_TRUE

SET_TRUE

◆ NOP

NOP

◆ SUBTRACTIVE_DOMAIN

SUBTRACTIVE_DOMAIN

◆ JOIN

JOIN

◆ CONTROL_TRANSFER

CONTROL_TRANSFER

◆ MAX_WITHOUT_FLAG

MAX_WITHOUT_FLAG

◆ VARIABLE_MASK

VARIABLE_MASK

◆ MIN_FLAG

MIN_FLAG

◆ VALUE_PORT_MASK

VALUE_PORT_MASK

◆ INPUT_PORT_MASK

INPUT_PORT_MASK

◆ EXPORTED_PORT

EXPORTED_PORT

◆ VIRTUAL_INPUT_PORT

VIRTUAL_INPUT_PORT

◆ OUTPUT_PORT_MASK

OUTPUT_PORT_MASK

◆ VARIABLE

VARIABLE

◆ PORT_MASK

PORT_MASK

◆ FACTOR_MASK

FACTOR_MASK

◆ ROOT

ROOT

◆ WHILE_CONDITION

WHILE_CONDITION

◆ INDEFINITE_LOOP

INDEFINITE_LOOP

◆ BLOCK

BLOCK

◆ TOP_LEVEL_FACTOR_MASK

TOP_LEVEL_FACTOR_MASK

◆ FRAME_MASK

FRAME_MASK

◆ TOP_LEVEL_FRAME

TOP_LEVEL_FRAME

◆ FRAME

FRAME

◆ EVENT_MASK

EVENT_MASK

◆ EVENT

◆ FACTOR_HEAD_MASK

FACTOR_HEAD_MASK

◆ BLOCK_HEAD

BLOCK_HEAD

◆ CONDITIONAL_HEAD

CONDITIONAL_HEAD

◆ RECURSION_HEAD

RECURSION_HEAD

◆ DEFINITE_FACTOR_HEAD_MASK

DEFINITE_FACTOR_HEAD_MASK

◆ CONTAINER_LOOP_HEAD_MASK

CONTAINER_LOOP_HEAD_MASK

◆ CONTAINER_OUTPUT_HEAD_MASK

CONTAINER_OUTPUT_HEAD_MASK

◆ DEFINITE_FACTOR_MASK

DEFINITE_FACTOR_MASK

◆ CONTAINER_OUTPUT_ELEMENT_MASK

CONTAINER_OUTPUT_ELEMENT_MASK

◆ INDEXABLE_FACTOR_MASK

INDEXABLE_FACTOR_MASK

◆ DIMENSIONAL_FACTOR_TEST

DIMENSIONAL_FACTOR_TEST

◆ CONTAINER_LOOP_MASK

CONTAINER_LOOP_MASK

◆ DEFINITE_LOOP_HEAD

DEFINITE_LOOP_HEAD

◆ CONTAINER_LOOP_HEAD

CONTAINER_LOOP_HEAD

◆ ARRAY_LOOP_HEAD

ARRAY_LOOP_HEAD

◆ CONTAINER_LOOP

CONTAINER_LOOP

◆ ARRAY_LOOP

ARRAY_LOOP

◆ CONTAINER_OUTPUT_HEAD

CONTAINER_OUTPUT_HEAD

◆ CONTAINER_OUTPUT_ELEMENT

CONTAINER_OUTPUT_ELEMENT

◆ ARRAY_OUTPUT_ELEMENT

ARRAY_OUTPUT_ELEMENT

◆ DEFINITE_LOOP

DEFINITE_LOOP

◆ GENERIC_DEFINITE_LOOP

GENERIC_DEFINITE_LOOP

◆ RECURSION

RECURSION

◆ INPUT_ELEMENT_MASK

INPUT_ELEMENT_MASK

◆ ARRAY_INPUT_ELEMENT

ARRAY_INPUT_ELEMENT

◆ CONTAINER_INPUT_ELEMENT

CONTAINER_INPUT_ELEMENT

◆ INPUT_MASK

INPUT_MASK

◆ OUTPUT_MASK

OUTPUT_MASK

◆ CONDITIONAL_MASK

CONDITIONAL_MASK

◆ IF

IF

◆ CONTAINER_MASK

CONTAINER_MASK

◆ CONTAINER

CONTAINER

◆ ARRAY_CONTAINER

ARRAY_CONTAINER

◆ ARRAY

ARRAY

◆ CONTAINER_OUTPUT_MASK

CONTAINER_OUTPUT_MASK

◆ CONTAINER_OUTPUT

CONTAINER_OUTPUT

◆ CONTAINER_INPUT_GROUP_MASK

CONTAINER_INPUT_GROUP_MASK

◆ CONTAINER_INPUT_GROUP

CONTAINER_INPUT_GROUP

◆ FACTOR_WITH_FACTOR_VARIABLE

FACTOR_WITH_FACTOR_VARIABLE

◆ ALL

ALL

◆ NONE

NONE

No flag set.

◆ STATE

STATE

◆ STATE_MODIFIER

STATE_MODIFIER

◆ LOCAL

LOCAL

◆ PERMANENT

PERMANENT

◆ CACHED

CACHED

◆ CURRENT_ITV

CURRENT_ITV

◆ NEXT_ITV

NEXT_ITV

◆ CONTAINER_MEMBER

CONTAINER_MEMBER

◆ COMMUTATIVE

COMMUTATIVE

◆ STATE_MAPPER

STATE_MAPPER

◆ PARAMETER

PARAMETER

Set for ports added by ParameterBuilder::AddParameter, ports that don't have input/default values given by the graph (like component access ports).

◆ INPUT_WITHOUT_VALUE

INPUT_WITHOUT_VALUE

◆ OUTER_DOMAIN

OUTER_DOMAIN

◆ SUSPEND

SUSPEND

◆ INDEPENDENT

INDEPENDENT

◆ INCLUDE_IN_PREDECESSORS

INCLUDE_IN_PREDECESSORS

◆ FACTOR_REFERENCE

FACTOR_REFERENCE

◆ OPTIONAL_INPUT

OPTIONAL_INPUT

◆ CURRENT_ITV_GROUP

CURRENT_ITV_GROUP

◆ NEXT_ITV_GROUP

NEXT_ITV_GROUP

◆ NEW_UNIQUE_NAME

NEW_UNIQUE_NAME

◆ TIME_LOOP

TIME_LOOP

◆ UNDERSCORE_NUMBER_PREFIX

UNDERSCORE_NUMBER_PREFIX

◆ WRAPPER_DONT_WRAP

WRAPPER_DONT_WRAP

◆ WRAPPER_HIDDEN

WRAPPER_HIDDEN

◆ WRAPPER_KEEP_LETTER_CASE

WRAPPER_KEEP_LETTER_CASE

◆ WRAPPER_LAMBDA

WRAPPER_LAMBDA

◆ WRAPPER_USE_ATTRIBUTE_RESOURCES

WRAPPER_USE_ATTRIBUTE_RESOURCES

◆ WRAPPER_FIXED_VARIADIC

WRAPPER_FIXED_VARIADIC

◆ WRAPPER_COPIED_VARIADIC

WRAPPER_COPIED_VARIADIC

◆ WRAPPER_INNER_DOMAIN

WRAPPER_INNER_DOMAIN

Marker flag for inner-domain ports, used by the core node wrapper.

◆ WRAPPER_OUTER_DOMAIN

WRAPPER_OUTER_DOMAIN

Marker flag for outer-domain ports, used by the core node wrapper.

◆ WRAPPER_ENCLOSING_DOMAIN

WRAPPER_ENCLOSING_DOMAIN

Marker flag for enclosing-domain ports, used by the core node wrapper.

◆ WRAPPER_STREAM

WRAPPER_STREAM

Marker flag for stream ports, used by the core node wrapper.

◆ WRAPPER_CONTEXT

WRAPPER_CONTEXT

Marker flag for context ports, used by the core node wrapper.

◆ NO_LIFETIME_PORT

NO_LIFETIME_PORT

◆ NO_FACTOR_NODES

NO_FACTOR_NODES

◆ RUNTIME_COST_100

RUNTIME_COST_100

Execution of node takes about 100x the time of a usual node.

◆ WRAPPER_FLAGS

WRAPPER_FLAGS

◆ ITV_MASK

ITV_MASK

◆ ITV_GROUP_MASK

ITV_GROUP_MASK

◆ PORT_MODIFIERS

PORT_MODIFIERS

◆ MODIFIERS

MODIFIERS

◆ PORTINFO_FLAGS

PORTINFO_FLAGS

◆ CONST_MASK

CONST_MASK

◆ BATCH_ACCESS

BATCH_ACCESS

◆ CONST_CONTAINER

CONST_CONTAINER

◆ DIRECT_ACCESS_TEST

DIRECT_ACCESS_TEST