class Babeltrace2::BTStreamClass
Constants
- SetDefaultClockClassStatus
- SetFieldClassStatus
- SetNameStatus
Public Class Methods
from_h(self_component, trace_class, h)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 455 def self.from_h(self_component, trace_class, h) id = trace_class.assigns_automatic_stream_class_id? ? nil : h[:id] o = trace_class.create_stream_class(id: id) o.default_clock_class = BTClockClass.from_h(self_component, h[:default_clock_class]) if h[:default_clock_class] o.set_supports_packets( h[:supports_packets], with_beginning_default_clock_snapshot: h[:packets_have_beginning_default_clock_snapshot], with_end_default_clock_snapshot: h[:packets_have_end_default_clock_snapshot]) o.set_supports_discarded_events(h[:supports_discarded_events], with_default_clock_snapshots: h[:discarded_events_have_default_clock_snapshots]) o.set_supports_discarded_packets(h[:supports_discarded_packets], with_default_clock_snapshots: h[:discarded_packets_have_default_clock_snapshots]) if h[:supports_packets] o.packet_context_field_class = BTFieldClass.from_h(trace_class, h[:packet_context_field_class], h) if h[:packet_context_field_class] o.event_common_context_field_class = BTFieldClass.from_h(trace_class, h[:event_common_context_field_class], h) if h[:event_common_context_field_class] o.assigns_automatic_event_class_id = h[:assigns_automatic_event_class_id] unless h[:assigns_automatic_event_class_id].nil? o.assigns_automatic_stream_id = h[:assigns_automatic_stream_id] unless h[:assigns_automatic_stream_id].nil? h[:event_classes].each_with_index { |v, i| h[:bt_current_event] = i; BTEventClass.from_h(trace_class, o, v, h) } h.delete(:bt_current_event) o.user_attributes = h[:user_attributes] if h[:user_attributes] h[:bt_stream_class] = o o end
locate_field_class(path, h)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 487 def self.locate_field_class(path, h) case path[0] when :event_payload_field_class h[:event_classes][h[:bt_current_event]][:payload_field_class].dig(*path[1..-1])[:bt_field_class] when :event_specific_context_field_class h[:event_classes][h[:bt_current_event]][:specific_context_field_class].dig(*path[1..-1])[:bt_field_class] else h.dig(*path)[:bt_field_class] end end
new(handle = nil, retain: true, auto_release: true, trace_class: nil, id: nil)
click to toggle source
Calls superclass method
# File lib/babeltrace2/trace-ir/stream-class.rb, line 193 def initialize(handle = nil, retain: true, auto_release: true, trace_class: nil, id: nil) if handle super(handle, retain: retain, auto_release: auto_release) else handle = if id Babeltrace2.bt_stream_class_create_with_id(trace_class, id) else Babeltrace2.bt_stream_class_create(trace_class) end raise Babeltrace2.process_error if handle.null? super(handle, retain: false) end end
Public Instance Methods
assigns_automatic_event_class_id()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 320 def assigns_automatic_event_class_id Babeltrace2.bt_stream_class_assigns_automatic_event_class_id(@handle) != BT_FALSE end
Also aliased as: assigns_automatic_event_class_id?
assigns_automatic_event_class_id=(assigns_automatic_event_class_id)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 315 def assigns_automatic_event_class_id=(assigns_automatic_event_class_id) set_assigns_automatic_event_class_id(assigns_automatic_event_class_id) assigns_automatic_event_class_id end
assigns_automatic_stream_id()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 336 def assigns_automatic_stream_id Babeltrace2.bt_stream_class_assigns_automatic_stream_id(@handle) != BT_FALSE end
Also aliased as: assigns_automatic_stream_id?
assigns_automatic_stream_id=(assigns_automatic_stream_id)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 331 def assigns_automatic_stream_id=(assigns_automatic_stream_id) set_assigns_automatic_stream_id(assigns_automatic_stream_id) assigns_automatic_stream_id end
create_event_class(id: nil)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 502 def create_event_class(id: nil) BTEventClass.new(stream_class: @handle, id: nil) end
create_stream(trace, id: nil)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 498 def create_stream(trace, id: nil) BTStream.new(stream_class: @handle, trace: trace, id: nil) end
default_clock_class=(clock_class)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 259 def default_clock_class=(clock_class) set_default_clock_class(clock_class) clock_class end
discarded_events_have_default_clock_snapshots()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 379 def discarded_events_have_default_clock_snapshots Babeltrace2.bt_stream_class_discarded_events_have_default_clock_snapshots(@handle) != BT_FALSE end
Also aliased as: discarded_events_have_default_clock_snapshots?
discarded_events_have_default_clock_snapshots?()
discarded_packets_have_default_clock_snapshots()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 397 def discarded_packets_have_default_clock_snapshots Babeltrace2.bt_stream_class_discarded_packets_have_default_clock_snapshots(@handle) != BT_FALSE end
Also aliased as: discarded_packets_have_default_clock_snapshots?
discarded_packets_have_default_clock_snapshots?()
event_common_context_field_class=(field_class)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 297 def event_common_context_field_class=(field_class) set_event_common_context_field_class(field_class) field_class end
get_default_clock_class()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 264 def get_default_clock_class handle = Babeltrace2.bt_stream_class_borrow_default_clock_class(@handle) return nil if handle.null? BTClockClass.new(handle, retain: true) end
Also aliased as: default_clock_class
get_event_class_by_id(id)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 226 def get_event_class_by_id(id) handle = Babeltrace2.bt_stream_class_borrow_event_class_by_id(@handle, id) return nil if handle.null? BTEventClass.new(handle, retain: true) end
get_event_class_by_index(index)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 218 def get_event_class_by_index(index) count = event_class_count index += count if count < 0 return nil if index >= count || index < 0 BTEventClass.new( Babeltrace2.bt_stream_class_borrow_event_class_by_index(@handle, index), retain: true) end
get_event_class_count()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 213 def get_event_class_count Babeltrace2.bt_stream_class_get_event_class_count(@handle) end
Also aliased as: event_class_count
get_event_common_context_field_class()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 302 def get_event_common_context_field_class handle = Babeltrace2.bt_stream_class_borrow_event_common_context_field_class(@handle) return nil if handle.null? BTFieldClass.from_handle(handle) end
Also aliased as: event_common_context_field_class
get_id()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 232 def get_id Babeltrace2.bt_stream_class_get_id(@handle) end
Also aliased as: id
get_name()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 248 def get_name Babeltrace2.bt_stream_class_get_name(@handle) end
Also aliased as: name
get_packet_context_field_class()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 283 def get_packet_context_field_class handle = Babeltrace2.bt_stream_class_borrow_packet_context_field_class(@handle) return nil if handle.null? BTFieldClass.from_handle(handle) end
Also aliased as: packet_context_field_class
get_trace_class()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 208 def get_trace_class BTTraceClass.new(Babeltrace2.bt_stream_class_borrow_trace_class(@handle), retain: true) end
Also aliased as: trace_class
get_user_attributes()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 412 def get_user_attributes BTValueMap.new(Babeltrace2.bt_stream_class_borrow_user_attributes(@handle), retain: true) end
Also aliased as: user_attributes
name=(name)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 243 def name=(name) set_name(name) name end
packet_context_field_class=(field_class)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 278 def packet_context_field_class=(field_class) set_packet_context_field_class(field_class) field_class end
packets_have_beginning_default_clock_snapshot()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 356 def packets_have_beginning_default_clock_snapshot Babeltrace2.bt_stream_class_packets_have_beginning_default_clock_snapshot(@handle) != BT_FALSE end
Also aliased as: packets_have_beginning_default_clock_snapshot?
packets_have_beginning_default_clock_snapshot?()
packets_have_end_default_clock_snapshot()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 361 def packets_have_end_default_clock_snapshot Babeltrace2.bt_stream_class_packets_have_end_default_clock_snapshot(@handle) != BT_FALSE end
Also aliased as: packets_have_end_default_clock_snapshot?
set_assigns_automatic_event_class_id(assigns_automatic_event_class_id)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 309 def set_assigns_automatic_event_class_id(assigns_automatic_event_class_id) Babeltrace2.bt_stream_class_set_assigns_automatic_event_class_id( @handle, assigns_automatic_event_class_id ? BT_TRUE : BT_FALSE) self end
set_assigns_automatic_stream_id(assigns_automatic_stream_id)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 325 def set_assigns_automatic_stream_id(assigns_automatic_stream_id) Babeltrace2.bt_stream_class_set_assigns_automatic_stream_id( @handle, assigns_automatic_stream_id ? BT_TRUE : BT_FALSE) self end
set_default_clock_class(clock_class)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 253 def set_default_clock_class(clock_class) res = Babeltrace2.bt_stream_class_set_default_clock_class(@handle, clock_class) raise Babeltrace2.process_error(res) if res != :BT_STREAM_CLASS_SET_DEFAULT_CLOCK_CLASS_STATUS_OK self end
set_event_common_context_field_class(field_class)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 290 def set_event_common_context_field_class(field_class) res = Babeltrace2.bt_stream_class_set_event_common_context_field_class( @handle, field_class) raise Babeltrace2.process_error(res) if res != :BT_STREAM_CLASS_SET_FIELD_CLASS_STATUS_OK self end
set_name(name)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 237 def set_name(name) res = Babeltrace2.bt_stream_class_set_name(@handle, name) raise Babeltrace2.process_error(res) if res != :BT_STREAM_CLASS_SET_NAME_STATUS_OK self end
set_packet_context_field_class(field_class)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 271 def set_packet_context_field_class(field_class) res = Babeltrace2.bt_stream_class_set_packet_context_field_class( @handle, field_class) raise Babeltrace2.process_error(res) if res != :BT_STREAM_CLASS_SET_FIELD_CLASS_STATUS_OK self end
set_supports_discarded_events(supports_discarded_events, with_default_clock_snapshots: false)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 366 def set_supports_discarded_events(supports_discarded_events, with_default_clock_snapshots: false) Babeltrace2.bt_stream_class_set_supports_discarded_events( @handle, supports_discarded_events ? BT_TRUE : BT_FALSE, with_default_clock_snapshots ? BT_TRUE : BT_FALSE) self end
set_supports_discarded_packets(supports_discarded_packets, with_default_clock_snapshots: false)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 384 def set_supports_discarded_packets(supports_discarded_packets, with_default_clock_snapshots: false) Babeltrace2.bt_stream_class_set_supports_discarded_packets( @handle, supports_discarded_packets ? BT_TRUE : BT_FALSE, with_default_clock_snapshots ? BT_TRUE : BT_FALSE) self end
set_supports_packets(supports_packets, with_beginning_default_clock_snapshot: false, with_end_default_clock_snapshot: false)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 341 def set_supports_packets(supports_packets, with_beginning_default_clock_snapshot: false, with_end_default_clock_snapshot: false) Babeltrace2.bt_stream_class_set_supports_packets(@handle, supports_packets ? BT_TRUE : BT_FALSE, with_beginning_default_clock_snapshot ? BT_TRUE : BT_FALSE, with_end_default_clock_snapshot ? BT_TRUE : BT_FALSE) self end
set_user_attributes(user_attributes)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 402 def set_user_attributes(user_attributes) Babeltrace2.bt_stream_class_set_user_attributes(@handle, BTValue.from_value(user_attributes)) self end
supports_discarded_events()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 374 def supports_discarded_events Babeltrace2.bt_stream_class_supports_discarded_events(@handle) != BT_FALSE end
Also aliased as: supports_discarded_events?
supports_discarded_packets()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 392 def supports_discarded_packets Babeltrace2.bt_stream_class_supports_discarded_packets(@handle) != BT_FALSE end
Also aliased as: supports_discarded_packets?
supports_packets()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 351 def supports_packets Babeltrace2.bt_stream_class_supports_packets(@handle) != BT_FALSE end
Also aliased as: supports_packets?
to_h()
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 417 def to_h res = { id: id, supports_packets: supports_packets? } if supports_packets? res[:packets_have_beginning_default_clock_snapshot] = packets_have_beginning_default_clock_snapshot? res[:packets_have_end_default_clock_snapshot] = packets_have_end_default_clock_snapshot? end res[:supports_discarded_events] = supports_discarded_events? res[:discarded_events_have_default_clock_snapshots] = discarded_events_have_default_clock_snapshots? if supports_discarded_events? if supports_packets? res[:supports_discarded_packets] = supports_discarded_packets? if supports_discarded_packets? res[:discarded_packets_have_default_clock_snapshots] = discarded_packets_have_default_clock_snapshots? end end if default_clock_class res[:default_clock_class] = default_clock_class.to_h end if supports_packets? && packet_context_field_class res[:packet_context_field_class] = packet_context_field_class.to_h end if event_common_context_field_class res[:event_common_context_field_class] = event_common_context_field_class.to_h end res[:assigns_automatic_event_class_id] = assigns_automatic_event_class_id? res[:assigns_automatic_stream_id] = assigns_automatic_stream_id? res[:event_classes] = event_class_count.times.collect { |i| get_event_class_by_index(i).to_h } user_attributes_value = user_attributes.value res[:user_attributes] = user_attributes_value if !user_attributes_value.empty? res end
user_attributes=(user_attributes)
click to toggle source
# File lib/babeltrace2/trace-ir/stream-class.rb, line 407 def user_attributes=(user_attributes) set_user_attributes(user_attributes) user_attributes end