mbdlyb_ui.functional.helpers
Copyright (c) 2023 - 2026 TNO-ESI All rights reserved.
Classes
Represent an editable affects relation. |
|
Represent an editable functional relation. |
|
Represent an editable indicates relation. |
|
Represent an editable observes relation. |
|
Represent an editable realizes relation. |
|
Represent an editable required for relation. |
|
Represent a named functional node state. |
|
Manage editable functional node states. |
|
Represent an editable subfunction of relation. |
|
Represent an editable tests relation. |
Functions
|
Build a nested tree entry with node identity and CPT metadata. |
|
Save a functional element and optionally navigate to its cluster. |
|
Render editable state names and controls for adding or removing states. |
Module Contents
- class mbdlyb_ui.functional.helpers.AffectsRelation(start_node: mbdlyb.gdb.GMBDElement | None = None, end_node: mbdlyb.gdb.GMBDElement | None = None, start_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, end_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, weight: float = 1.0)
Bases:
FunctionalRelationRepresent an editable affects relation.
- class mbdlyb_ui.functional.helpers.FunctionalRelation(start_node: mbdlyb.gdb.GMBDElement | None = None, end_node: mbdlyb.gdb.GMBDElement | None = None, start_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, end_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, weight: float = 1.0)
Bases:
mbdlyb_ui.helpers.RelationRepresent an editable functional relation.
- get_props() dict
Return the relation properties needed for persistence.
- Returns:
Properties to persist on the relation.
- weight: float
- class mbdlyb_ui.functional.helpers.IndicatesRelation(start_node: mbdlyb.gdb.GMBDElement | None = None, end_node: mbdlyb.gdb.GMBDElement | None = None, start_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, end_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, weight: float = 1.0)
Bases:
FunctionalRelationRepresent an editable indicates relation.
- class mbdlyb_ui.functional.helpers.ObservesRelation(start_node: mbdlyb.gdb.GMBDElement | None = None, end_node: mbdlyb.gdb.GMBDElement | None = None, start_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, end_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, weight: float = 1.0)
Bases:
FunctionalRelationRepresent an editable observes relation.
- class mbdlyb_ui.functional.helpers.RealizesRelation(start_node: mbdlyb.gdb.GMBDElement | None = None, end_node: mbdlyb.gdb.GMBDElement | None = None, start_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, end_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, weight: float = 1.0)
Bases:
FunctionalRelationRepresent an editable realizes relation.
- class mbdlyb_ui.functional.helpers.RequiredForRelation(start_node: mbdlyb.gdb.GMBDElement | None = None, end_node: mbdlyb.gdb.GMBDElement | None = None, start_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, end_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, weight: float = 1.0, operating_modes: list[str] | None = None)
Bases:
FunctionalRelationRepresent an editable required for relation.
- get_props() dict
Return the relation properties needed for persistence.
- Returns:
Properties to persist on the relation.
- operating_modes: list[str]
- class mbdlyb_ui.functional.helpers.StateTable(states: list[State])
Manage editable functional node states.
- add_state()
Append a uniquely named state and refresh the state editor.
- drop_state(state: State)
Remove a state and refresh the state editor.
- Parameters:
state – State entry to remove.
- classmethod from_list(l: list[str]) StateTable
Create editable state entries from stored names.
- Parameters:
l – Stored state or operating mode names to turn into entries.
- Returns:
Editable collection initialized from the stored values.
- to_list() list[str]
Extract state names from the editable entries.
- Returns:
Stored values represented by the editable entries.
- class mbdlyb_ui.functional.helpers.SubfunctionOfRelation(start_node: mbdlyb.gdb.GMBDElement | None = None, end_node: mbdlyb.gdb.GMBDElement | None = None, start_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, end_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, weight: float = 1.0)
Bases:
FunctionalRelationRepresent an editable subfunction of relation.
- class mbdlyb_ui.functional.helpers.TestsRelation(start_node: mbdlyb.gdb.GMBDElement | None = None, end_node: mbdlyb.gdb.GMBDElement | None = None, start_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, end_node_type: type[mbdlyb.gdb.GMBDElement] | None = None, weight: float = 1.0)
Bases:
FunctionalRelationRepresent an editable tests relation.
- mbdlyb_ui.functional.helpers.build_tree(node: mbdlyb.functional.gdb.GFunctionalNode | mbdlyb.functional.gdb.GCluster) dict
Build a nested tree entry with node identity and CPT metadata.
- Parameters:
node – Node whose identity, CPT status, and children are serialized.
- Returns:
Nested tree entry describing the node and its children.
- mbdlyb_ui.functional.helpers.save_new_object(obj: mbdlyb.gdb.GMBDElement, net: mbdlyb.functional.gdb.GCluster, disable_redirect: bool = False)
Save a functional element and optionally navigate to its cluster.
- Parameters:
obj – Functional element to add to the cluster.
net – Cluster containing the new model object.
disable_redirect – Whether to suppress navigation after saving.
- mbdlyb_ui.functional.helpers.state_table(state_table: StateTable, default_states: list[str])
Render editable state names and controls for adding or removing states.
- Parameters:
state_table – Editable collection of states.
default_states – Fallback state names shown when no custom states are set.