Open Search
    portattributes.h File Reference

    Classes

    struct  Chain
     
    class  DerivedAttributeInterface
     

    Namespaces

     maxon
     
     maxon::nodes
     

    Typedefs

    using NodePathArraySet = ArraySet< NodePath, true, FastNodePathHash >
     
    using NodePathArraySetRef = StrongCOWRef< NodePathArraySet >
     

    Enumerations

    enum class  PORT_FLAGS {
      NONE ,
      HIDDEN ,
      USED_FOR_TEMPLATE_ARGUMENT ,
      USED_FOR_INPUTPORTTYPE_TEMPLATE_ARGUMENT ,
      CONSTANT ,
      VARIADIC ,
      VARIADIC_TEMPLATE ,
      INHERITS_NESTED_PORTS ,
      SYNTHESIZES_NESTED_PORTS ,
      HAS_CHILDREN ,
      USED_FOR_INPUTBUNDLE_TEMPLATE_ARGUMENT ,
      CHAIN ,
      DYNAMIC ,
      USED_FOR_DYNAMIC_TYPE ,
      USED_FOR_TEMPLATE_MASK
    }
     

    Functions

     MAXON_ATTRIBUTE (Bool, InheritNestedPorts, "inheritnestedports")
     
     MAXON_ATTRIBUTE (Bool, SynthesizeNestedPorts, "synthesizenestedports")
     
     MAXON_ATTRIBUTE (Bool, InheritNestedPortsSource, "inheritnestedportssource")
     
     MAXON_ATTRIBUTE (Bool, SynthesizeNestedPortsSource, "synthesizenestedportssource")
     
     MAXON_ATTRIBUTE (Bool, InheritPortSource, "inheritportsource")
     
     MAXON_ATTRIBUTE (Bool, SynthesizePortSource, "synthesizeportsource")
     
     MAXON_ATTRIBUTE (Bool, SynthesizeTypeSource, "synthesizetypesource")
     
     MAXON_ATTRIBUTE (Bool, LoopDependencySource, "loopdependencysource")
     
     MAXON_ATTRIBUTE (Bool, LoopDependencyTarget, "loopdependencytarget")
     
     MAXON_ATTRIBUTE (Bool, Dynamic, "dynamic")
     
     MAXON_ATTRIBUTE (Bool, TransientDynamic, "transientdynamic")
     
     MAXON_ATTRIBUTE (Bool, TemplateParameter, "templateparameter")
     
     MAXON_ATTRIBUTE (Bool, AllowDynamicArgument, "allowdynamicargument")
     
     MAXON_ATTRIBUTE (DataType, TypeTemplateParameter, "porttypetemplateparameter")
     
     MAXON_ATTRIBUTE (Bool, BundleTemplateParameter, "bundletemplateparameter")
     
     MAXON_ATTRIBUTE (Data, TemplateArgument, "templateargument")
     
     MAXON_ATTRIBUTE (Bool, StickyTypeTemplateParameter, "stickyporttypetemplateparameter")
     
     MAXON_ATTRIBUTE (Error, TemplateError, "templateerror")
     
     MAXON_ATTRIBUTE (Bool, ConstantParameter, "constantparameter")
     
     MAXON_ATTRIBUTE (Bool, SynthesizePortValue, "synthesizevalue")
     
     MAXON_ATTRIBUTE (Bool, TappingPort, "tappingport")
     
     MAXON_ATTRIBUTE (Bool, Permanent, "permanent")
     
     MAXON_ATTRIBUTE (Bool, HiddenFromInside, "hiddeninside")
     
     MAXON_ATTRIBUTE (Bool, HiddenFromOutside, "hiddenoutside")
     
     MAXON_ATTRIBUTE (Bool, InternalHidden, "net.maxon.node.attribute.internalhidden")
     
     MAXON_ATTRIBUTE (DataType, FixedPortType, "fixedtype")
     
     MAXON_ATTRIBUTE (DataType, DynamicTypeConstraint, "dynamictypeconstraint")
     
     MAXON_ATTRIBUTE (Bool, EnforceType, "enforcetype")
     
     MAXON_ATTRIBUTE (TupleDataType, FunctionParameters, "functionparams")
     
     MAXON_ATTRIBUTE (InternedId, ContextReference, "ctxref")
     
     MAXON_ATTRIBUTE (InternedId, ContextDefinition, "ctxdef")
     
     MAXON_ATTRIBUTE (Bool, ExternalContext, "externalcontext")
     
     MAXON_ATTRIBUTE (Bool, CreatedByPropagation, "net.maxon.node.createdbypropagation")
     
     MAXON_ATTRIBUTE (NodePath, PortGroup, "net.maxon.node.portgroup")
     
     MAXON_ATTRIBUTE (Int, ReqOrderIndex, "net.maxon.node.attribute.orderindex")
     
     MAXON_ATTRIBUTE (Int, ReqInsertIndex, "net.maxon.node.attribute.insertindex")
     
     MAXON_ATTRIBUTE (Bool, OverrideOrderIndex, "overrideorderindex")
     
     MAXON_ATTRIBUTE (Bool, ForceVariadicPortNameDerivation, "forcevariadicportnamederivation")
     
     MAXON_ATTRIBUTE (Bool, DisableVariadicPortNameDerivation, "disablevariadicportnamederivation")
     
     MAXON_ATTRIBUTE (DataType, DeducedType, "net.maxon.node.deducedtype")
     
    enum maxon::nodes::PORT_FLAGS MAXON_ENUM_FLAGS (PORT_FLAGS)
     
     MAXON_ATTRIBUTE (PORT_FLAGS, PortFlags, "portflags")
     
     MAXON_DATATYPE (Chain, "net.maxon.node.datatype.chain")
     
     MAXON_ATTRIBUTE (StrongCOWRef< Chain >, ChainCounterPort, "chaincounterport")
     
     MAXON_ATTRIBUTE (InternedId, GlobalContext, "globalcontext")
     
     MAXON_ATTRIBUTE (InternedId, ScenePortMode, "sceneportmode")
     
     MAXON_ATTRIBUTE (Bool, UseAttributeResources, "useattributeresources")
     
     MAXON_ATTRIBUTE (Bool, AllowMultipleConnections, "allowmultipleconnections")
     
     MAXON_ATTRIBUTE (Bool, StreamPort, "streamport")
     
     MAXON_ATTRIBUTE (Bool, ScopePort, "scopeport")
     
     MAXON_ATTRIBUTE (Bool, RerouterPort, "rerouterport")
     
     MAXON_ATTRIBUTE (Bool, FloatingPort, "floatingport")
     
     MAXON_REGISTRY (GraphAttribute, Attributes, "net.maxon.node.registry.attributes")
     

    Variables

     NONE
     
     HIDDEN
     
     USED_FOR_TEMPLATE_ARGUMENT
     
     USED_FOR_INPUTPORTTYPE_TEMPLATE_ARGUMENT
     
     CONSTANT
     
     VARIADIC
     
     VARIADIC_TEMPLATE
     
     INHERITS_NESTED_PORTS
     
     SYNTHESIZES_NESTED_PORTS
     
     HAS_CHILDREN
     
     USED_FOR_INPUTBUNDLE_TEMPLATE_ARGUMENT
     
     CHAIN
     
     DYNAMIC
     
     USED_FOR_DYNAMIC_TYPE
     
     USED_FOR_TEMPLATE_MASK
     
     INHERITED
     
     SYNTHESIZED
     
     COMPUTED
     
     FILTERED
     
     INDUCED_DEPENDENCIES
     
     NODE_PRE
     
     NODE_POST
     
     DERIVED_MASK
     
     SELF
     
     CHILDREN
     
     PARENT
     
     SELF_INPUT
     
     SELF_OUTPUT
     
     VALUE_SOURCES
     
     VALUE_TARGETS
     
     DEP_SOURCES
     
     DEP_TARGETS
     
     VALUE_DEP_SOURCES
     
     VALUE_DEP_TARGETS
     
     SOURCES_MASK
     
     TARGETS_MASK
     
     SHORTCUT_SOURCES
     
     SHORTCUT_TARGETS
     
     INDUCED_SOURCES
     
     INDUCED_TARGETS
     
     CTX_SOURCES_DEEP
     
     CTX_TARGETS_DEEP
     
     SHORTCUT_SOURCES_MASK
     
     SHORTCUT_TARGETS_MASK
     
     SOURCES_ALL
     
     TARGETS_ALL
     

    Variable Documentation

    ◆ NONE

    NONE

    No flag set.

    No flags.

    ◆ HIDDEN

    HIDDEN

    The port shall be hidden.

    ◆ USED_FOR_TEMPLATE_ARGUMENT

    USED_FOR_TEMPLATE_ARGUMENT

    The port is used for an argument for a TemplateParameter of a node template.

    ◆ USED_FOR_INPUTPORTTYPE_TEMPLATE_ARGUMENT

    USED_FOR_INPUTPORTTYPE_TEMPLATE_ARGUMENT

    The port's type is used to deduce an argument for a TypeTemplateParameter of a downstream input port of a node template.

    ◆ CONSTANT

    CONSTANT

    It is required that the port has a constant value.

    ◆ VARIADIC

    VARIADIC

    The port is a variadic port, possibly with a fixed count (don't confuse with a variadic port instance).

    ◆ VARIADIC_TEMPLATE

    VARIADIC_TEMPLATE

    The port is a true variadic port (don't confuse with a variadic port instance). Set in addition to VARIADIC.

    ◆ INHERITS_NESTED_PORTS

    INHERITS_NESTED_PORTS

    The port inherits nested ports from upstream ports, see InheritNestedPorts.

    ◆ SYNTHESIZES_NESTED_PORTS

    SYNTHESIZES_NESTED_PORTS

    The port synthesizes nested ports from downstream ports, see SynthesizeNestedPorts.

    ◆ HAS_CHILDREN

    HAS_CHILDREN

    The port has children (so it's a port bundle or a variadic port).

    The attribute depends on the port's property of having children.

    ◆ USED_FOR_INPUTBUNDLE_TEMPLATE_ARGUMENT

    USED_FOR_INPUTBUNDLE_TEMPLATE_ARGUMENT

    The port is used for an argument for an BundleTemplateParameter of an input port of a node template.

    ◆ CHAIN

    CHAIN

    The port belongs to a chain.

    ◆ DYNAMIC

    DYNAMIC

    The port is marked with the Dynamic or TransientDynamic attribute.

    ◆ USED_FOR_DYNAMIC_TYPE

    USED_FOR_DYNAMIC_TYPE

    There's a downstream port with dynamic type (see DynamicTypeConstraint) where this port's type may have an influence on.

    Any kind of template input flag mask.

    ◆ USED_FOR_TEMPLATE_MASK

    USED_FOR_TEMPLATE_MASK

    ◆ INHERITED

    INHERITED

    The attribute is an inherited attribute whose value is derived from values at direct predecessor ports.

    ◆ SYNTHESIZED

    SYNTHESIZED

    The attribute is a synthesized attribute whose value is derived from the values at direct successor ports.

    ◆ COMPUTED

    COMPUTED

    The attribute is computed on-the-fly whenever its value is requested.

    ◆ FILTERED

    FILTERED

    This flag has to be set for inherited or synthesized attributes which shall use the derivation filter for connections.

    ◆ INDUCED_DEPENDENCIES

    INDUCED_DEPENDENCIES

    This flag has to be set for inherited or synthesized attributes when the derivation needs induced dependencies as well (see GraphModelInterface::GET_CONNECTIONS_MODE::INDUCED_DEPENDENCIES).

    ◆ NODE_PRE

    NODE_PRE

    The attribute is a derived attribute for true nodes which has to be derived before ports.

    ◆ NODE_POST

    NODE_POST

    The attribute is a derived attribute for true nodes which has to be derived after ports.

    ◆ DERIVED_MASK

    DERIVED_MASK

    Use this to test for derived port attributes (INHERITED or SYNTHESIZED).

    ◆ SELF

    SELF

    The attribute depends on another attribute value of the same port. Can be used for node or port attributes.

    ◆ CHILDREN

    CHILDREN

    The attribute depends on attribute values of children ports. Can be used for node attributes only.

    ◆ PARENT

    PARENT

    The attribute depends on attribute values of parent ports.

    ◆ SELF_INPUT

    SELF_INPUT

    The attribute depends on another attribute value of the same port, but only if the port is an input port.

    ◆ SELF_OUTPUT

    SELF_OUTPUT

    The attribute depends on another attribute value of the same port, but only if the port is an output port.

    ◆ VALUE_SOURCES

    VALUE_SOURCES

    The attribute depends on attribute values of ports of incoming value connections. Can be used for port attributes only.

    ◆ VALUE_TARGETS

    VALUE_TARGETS

    The attribute depends on attribute values of ports of outgoing value connections. Can be used for port attributes only.

    ◆ DEP_SOURCES

    DEP_SOURCES

    The attribute depends on attribute values of ports of incoming dependency connections. Can be used for port attributes only.

    ◆ DEP_TARGETS

    DEP_TARGETS

    The attribute depends on attribute values of ports of outgoing dependency connections. Can be used for port attributes only.

    ◆ VALUE_DEP_SOURCES

    VALUE_DEP_SOURCES

    ◆ VALUE_DEP_TARGETS

    VALUE_DEP_TARGETS

    ◆ SOURCES_MASK

    SOURCES_MASK

    ◆ TARGETS_MASK

    TARGETS_MASK

    ◆ SHORTCUT_SOURCES

    SHORTCUT_SOURCES

    The attribute depends on attribute values of ports of incoming connections. Can be used for port attributes only.

    ◆ SHORTCUT_TARGETS

    SHORTCUT_TARGETS

    The attribute depends on attribute values of ports of outgoing connections. Can be used for port attributes only.

    ◆ INDUCED_SOURCES

    INDUCED_SOURCES

    The attribute depends on attribute values of ports of incoming connections. Can be used for port attributes only.

    ◆ INDUCED_TARGETS

    INDUCED_TARGETS

    The attribute depends on attribute values of ports of outgoing connections. Can be used for port attributes only.

    ◆ CTX_SOURCES_DEEP

    CTX_SOURCES_DEEP

    The attribute depends on attribute values of ports of incoming context connections. Can be used for port attributes only.

    ◆ CTX_TARGETS_DEEP

    CTX_TARGETS_DEEP

    The attribute depends on attribute values of ports of outgoing context connections. Can be used for port attributes only.

    ◆ SHORTCUT_SOURCES_MASK

    SHORTCUT_SOURCES_MASK

    ◆ SHORTCUT_TARGETS_MASK

    SHORTCUT_TARGETS_MASK

    ◆ SOURCES_ALL

    SOURCES_ALL

    ◆ TARGETS_ALL

    TARGETS_ALL