Bundle
- class omni.graph.core.Bundle(attribute_name: str, read_only: bool)
Bases:
object
—– FOR USE BY GENERATED CODE ONLY —–
Deferred implementation of the bundle concept
Methods
__init__
(attribute_name, read_only)Initialize the access points for the bundle attribute
attribute_by_name
(attribute_name)Get an attribute by name from the underlying buffer or the buffer masking it.
clear
()Empties out the bundle contents
create_attribute
(name, type_desc)Create an attribute inside the buffered bundle data structure
from_accessor
(bundle_contents)-------- FOR GENERATED CODE USE ONLY -------- Convert a BundleContents object to a python Bundle.
insert
(to_insert)Insert new content in the existing bundle
remove
(attribute_name)Removes the attribute with the given name from the bundle, silently succeeding if it is not in the bundle.
Attributes
Returns the list of interface objects corresponding to the attributes contained within the bundle
Does the bundle content exist and is it valid
The bundle's name
exposes the runtime bundle accessor.
Returns the number of attributes within this bundle, 0 if the bundle is not valid
Is the underlying bundle valid, or None if it does not even exist
- __init__(attribute_name: str, read_only: bool)
Initialize the access points for the bundle attribute
- Parameters
attribute_name – the bundle’s name. This name will only be used if the bundle is nested.
read_only – Is the bundle data read-only?
- attribute_by_name(attribute_name: str) Optional[RuntimeAttribute]
Get an attribute by name from the underlying buffer or the buffer masking it.
- Parameters
attribute_name – the attribute being queried.
- Returns
the named attribute within the bundle, or None if no such attribute exists in the bundle
- clear()
Empties out the bundle contents
- Raises
og.OmniGraphError – if the bundle is not writable
- create_attribute(name: str, type_desc: type) OmniAttribute
Create an attribute inside the buffered bundle data structure
- Parameters
name – name of the attribute to create
type_desc – python type object of the attribute to create. Accepts all Omnigraph types. Will attempt to convert non-omnigraph types, but raise an error if it fails.
- Returns
the OmniAttribute it created.
- Raises
OmniGraphError if no type conversion was found. –
- classmethod from_accessor(bundle_contents: BundleContents)
——– FOR GENERATED CODE USE ONLY ——– Convert a BundleContents object to a python Bundle.
- Parameters
bundle_contents – the graph object representing the bundle
- insert(to_insert: Union[Bundle, OmniAttribute, Tuple[OmniAttribute, str], Tuple[Type, str]])
Insert new content in the existing bundle
- Parameters
to_insert –
Object to insert. It can be one of three different types of object:
Bundle: Another bundle, whose contents are entirely copied into this one
RuntimeAttribute: A single attribute from another bundle to be copied with the same name
(RuntimeAttribute, str): A single attribute from another bundle and the name to use for the copy
AttributeDescription: Information required to create a brand new typed attribute
- Returns
Attribute object of the new attribute if inserting an attribute, else None
- remove(attribute_name: str)
Removes the attribute with the given name from the bundle, silently succeeding if it is not in the bundle.
- Parameters
attribute_name – attribute to be deleted.
- property attribute_names: List[OmniAttribute]
Returns the list of interface objects corresponding to the attributes contained within the bundle
- property is_runtime_resident
Does the bundle content exist and is it valid
- Type
bool
- property name
The bundle’s name
- property runtime_accessor: BundleContents
exposes the runtime bundle accessor.
- Returns
the BundleContents object if it exists, None otherwise.
- property size: int
Returns the number of attributes within this bundle, 0 if the bundle is not valid
- Type
int
- property valid: Optional[bool]
Is the underlying bundle valid, or None if it does not even exist
- Type
bool