Ejemplo n.º 1
0
    def __init__(self, event, cc_prio_map=None):
        utils._check_type(event, bt2.event._Event)

        if cc_prio_map is not None:
            utils._check_type(cc_prio_map, bt2.clock_class_priority_map.ClockClassPriorityMap)
            cc_prio_map_ptr = cc_prio_map._ptr
        else:
            cc_prio_map_ptr = None

        ptr = native_bt.message_event_create(event._ptr, cc_prio_map_ptr)

        if ptr is None:
            raise bt2.CreationError('cannot create event message object')

        super().__init__(ptr)
Ejemplo n.º 2
0
    def __init__(self, event, cc_prio_map=None):
        utils._check_type(event, bt2.event._Event)

        if cc_prio_map is not None:
            utils._check_type(
                cc_prio_map,
                bt2.clock_class_priority_map.ClockClassPriorityMap)
            cc_prio_map_ptr = cc_prio_map._ptr
        else:
            cc_prio_map_ptr = None

        ptr = native_bt.message_event_create(event._ptr, cc_prio_map_ptr)

        if ptr is None:
            raise bt2.CreationError('cannot create event message object')

        super().__init__(ptr)
Ejemplo n.º 3
0
    def _create_event_message(self,
                              event_class,
                              parent,
                              default_clock_snapshot=None):
        utils._check_type(event_class, bt2_event_class._EventClass)

        if event_class.stream_class.supports_packets:
            utils._check_type(parent, bt2_packet._Packet)
        else:
            utils._check_type(parent, bt2_stream._Stream)

        if default_clock_snapshot is not None:
            if event_class.stream_class.default_clock_class is None:
                raise ValueError(
                    'event messages in this stream must not have a default clock snapshot'
                )

            utils._check_uint64(default_clock_snapshot)

            if event_class.stream_class.supports_packets:
                ptr = native_bt.message_event_create_with_packet_and_default_clock_snapshot(
                    self._bt_ptr, event_class._ptr, parent._ptr,
                    default_clock_snapshot)
            else:
                ptr = native_bt.message_event_create_with_default_clock_snapshot(
                    self._bt_ptr, event_class._ptr, parent._ptr,
                    default_clock_snapshot)
        else:
            if event_class.stream_class.default_clock_class is not None:
                raise ValueError(
                    'event messages in this stream must have a default clock snapshot'
                )

            if event_class.stream_class.supports_packets:
                ptr = native_bt.message_event_create_with_packet(
                    self._bt_ptr, event_class._ptr, parent._ptr)
            else:
                ptr = native_bt.message_event_create(self._bt_ptr,
                                                     event_class._ptr,
                                                     parent._ptr)

        if ptr is None:
            raise bt2._MemoryError('cannot create event message object')

        return bt2_message._EventMessage(ptr)