#
# Copyright (c) 2017 Philippe Proulx <pproulx@efficios.com>
-from bt2 import native_bt, object, utils
-from bt2 import interrupter as bt2_interrupter
-from bt2 import connection as bt2_connection
-from bt2 import component as bt2_component
import functools
+
+from bt2 import mip as bt2_mip
from bt2 import port as bt2_port
+from bt2 import error as bt2_error
+from bt2 import utils as bt2_utils
+from bt2 import value as bt2_value
+from bt2 import object as bt2_object
from bt2 import logging as bt2_logging
-import bt2
+from bt2 import component as bt2_component
+from bt2 import native_bt
+from bt2 import connection as bt2_connection
+from bt2 import interrupter as bt2_interrupter
def _graph_port_added_listener_from_native(
user_listener(component, port)
-class Graph(object._SharedObject):
+class Graph(bt2_object._SharedObject):
@staticmethod
def _get_ref(ptr):
native_bt.graph_get_ref(ptr)
native_bt.graph_put_ref(ptr)
def __init__(self, mip_version=0):
- utils._check_uint64(mip_version)
+ bt2_utils._check_uint64(mip_version)
- if mip_version > bt2.get_maximal_mip_version():
+ if mip_version > bt2_mip.get_maximal_mip_version():
raise ValueError("unknown MIP version {}".format(mip_version))
ptr = native_bt.graph_create(mip_version)
if ptr is None:
- raise bt2._MemoryError("cannot create graph object")
+ raise bt2_error._MemoryError("cannot create graph object")
super().__init__(ptr)
)
)
- utils._check_str(name)
- utils._check_log_level(logging_level)
+ bt2_utils._check_str(name)
+ bt2_utils._check_log_level(logging_level)
base_cc_ptr = component_class._bt_component_class_ptr()
if obj is not None and not native_bt.bt2_is_python_component_class(base_cc_ptr):
raise ValueError("cannot pass a Python object to a non-Python component")
- if params is not None and not isinstance(params, (dict, bt2.MapValue)):
+ if params is not None and not isinstance(params, (dict, bt2_value.MapValue)):
raise TypeError("'params' parameter is not a 'dict' or a 'bt2.MapValue'.")
- params = bt2.create_value(params)
+ params = bt2_value.create_value(params)
params_ptr = params._ptr if params is not None else None
status, comp_ptr = add_fn(
self._ptr, cc_ptr, name, params_ptr, obj, logging_level
)
- utils._handle_func_status(status, "cannot add component to graph")
+ bt2_utils._handle_func_status(status, "cannot add component to graph")
assert comp_ptr
return bt2_component._create_component_from_const_ptr_and_get_ref(
comp_ptr, cc_type
)
def connect_ports(self, upstream_port, downstream_port):
- utils._check_type(upstream_port, bt2_port._OutputPortConst)
- utils._check_type(downstream_port, bt2_port._InputPortConst)
+ bt2_utils._check_type(upstream_port, bt2_port._OutputPortConst)
+ bt2_utils._check_type(downstream_port, bt2_port._InputPortConst)
status, conn_ptr = native_bt.graph_connect_ports(
self._ptr, upstream_port._ptr, downstream_port._ptr
)
- utils._handle_func_status(status, "cannot connect component ports within graph")
+ bt2_utils._handle_func_status(
+ status, "cannot connect component ports within graph"
+ )
assert conn_ptr
return bt2_connection._ConnectionConst._create_from_ptr_and_get_ref(conn_ptr)
listener_ids = fn(self._ptr, listener_from_native)
if listener_ids is None:
- raise bt2._Error("cannot add listener to graph object")
+ raise bt2_error._Error("cannot add listener to graph object")
# keep the partial's reference
self._listener_partials.append(listener_from_native)
def run_once(self):
status = native_bt.graph_run_once(self._ptr)
- utils._handle_func_status(status, "graph object could not run once")
+ bt2_utils._handle_func_status(status, "graph object could not run once")
def run(self):
status = native_bt.graph_run(self._ptr)
- utils._handle_func_status(status, "graph object stopped running")
+ bt2_utils._handle_func_status(status, "graph object stopped running")
def add_interrupter(self, interrupter):
- utils._check_type(interrupter, bt2_interrupter.Interrupter)
+ bt2_utils._check_type(interrupter, bt2_interrupter.Interrupter)
native_bt.graph_add_interrupter(self._ptr, interrupter._ptr)
@property