child_nodes#

Node.child_nodes(*, recursive: bool = False, leavesonly: bool = False, settingsonly: bool = False, streamingonly: bool = False, subscribedonly: bool = False, basechannelonly: bool = False, excludestreaming: bool = False, excludevectors: bool = False) Generator[Node, None, None][source]#

Generator for all child nodes that matches the filters.

If the nodes does not contain any child nodes the generator will only contain the node itself (if it matches the filters).

Warning

The Data Server supports only the asterisk wildcard. For all other wildcards the matching child nodes can be generated manually within the nodetree.

Enabling additional flags how ever require that each node that matches the wildcard needs to be checked in a separate request by the Data Server which can cause a severe latency. Therefore one needs to enable the full_wildcard flag in order to support the manual generation of the matching child nodes.

Examples

>>> child_nodes = nodetree.demods[0].child_nodes()
>>> next(child_nodes)
/dev1234/demods/0/freq
Parameters:
  • recursive (bool) – Returns the nodes recursively (default: False)

  • leavesonly (bool) – Returns only nodes that are leaves, which means they are at the outermost level of the tree (default: False).

  • settingsonly (bool) – Returns only nodes which are marked as setting (default: False).

  • streamingonly (bool) – Returns only streaming nodes (default: False).

  • subscribedonly (bool) – Returns only subscribed nodes (default: False).

  • basechannelonly (bool) – Return only one instance of a node in case of multiple channels (default: False).

  • excludestreaming (bool) – Exclude streaming nodes (default: False).

  • excludevectors (bool) – Exclude vector nodes (default: False).

Returns:

Generator of all child nodes that match the filters

Return type:

Generator[Node, None, None]