resolve_base_coupled

omni.graph.core.resolve_base_coupled(attribute_specs: Sequence[Tuple[Attribute, int, int, AttributeRole]]) None

Resolves attribute types given a set of attributes, that can have differing tuple counts and/or array depth, and differing but convertible base data type. For example if node ‘makeTuple2’ has two input attributes ‘a’ and ‘b’ and one output ‘c’ and we want to resolve ‘a’:float, ‘b’:float, ‘c’:float[2] (convertible base types, different tuple counts) we would use the input:

[
    (node.get_attribute("inputs:a"), None, None, None),
    (node.get_attribute("inputs:b"), None, None, None),
    (node.get_attribute("outputs:c"), None, 1, None)
]

Assuming `a` gets resolved first, the None will be set to the respective values for the resolved type (`a`). For this example, it will use defaults tuple_count=1, array_depth=0, role=NONE.

This function should only be called from `on_connection_type_resolve`.

Parameters
  • attribute_specs – list of (attribute, tuple_count, array_depth, role) of extended attributes to be resolved.

  • tuple_count ('None' for) –

  • array_depth

  • type'. (or role means 'use the resolved) –