class Babeltrace2::BTEventClass

Constants

LogLevel
SetEmfUriStatus
SetFieldClassStatus
SetNameStatus

Public Class Methods

from_h(trace_class, stream_class, h, stream_class_h) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 304
def self.from_h(trace_class, stream_class, h, stream_class_h)
  id = stream_class.assigns_automatic_event_class_id? ? nil : h[:id]
  o = self.new(stream_class: stream_class, id: id)
  o.name = h[:name] if h[:name]
  o.log_level = h[:log_level] if h[:log_level]
  o.emf_uri = h[:emf_uri] if h[:emf_uri]
  o.specific_context_field_class = BTFieldClass.from_h(trace_class,
    h[:specific_context_field_class], stream_class_h) if h[:specific_context_field_class]
  o.payload_field_class = BTFieldClass.from_h(trace_class,
    h[:payload_field_class], stream_class_h) if h[:payload_field_class]
  o.user_attributes = h[:user_attributes] if h[:user_attributes]
  h[:bt_event_class] = o
  o
end
new(handle = nil, retain: true, auto_release: true, stream_class: nil, id: nil) click to toggle source
Calls superclass method
# File lib/babeltrace2/trace-ir/event-class.rb, line 165
def initialize(handle = nil, retain: true, auto_release: true,
               stream_class: nil, id: nil)
  if handle
    super(handle, retain: retain, auto_release: auto_release)
  else
    handle = if id
        Babeltrace2.bt_event_class_create_with_id(stream_class, id)
      else
        Babeltrace2.bt_event_class_create(stream_class)
      end
    raise Babeltrace2.process_error if handle.null?
    super(handle)
  end
end

Public Instance Methods

emf_uri()
Alias for: get_emf_uri
emf_uri=(emf_uri) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 231
def emf_uri=(emf_uri)
  set_emf_uri(emf_uri)
  emf_uri
end
get_emf_uri() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 236
def get_emf_uri
  Babeltrace2.bt_event_class_get_emf_uri(@handle)
end
Also aliased as: emf_uri
get_id() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 186
def get_id
  Babeltrace2.bt_event_class_get_id(@handle)
end
Also aliased as: id
get_log_level() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 217
def get_log_level
  ptr = FFI::MemoryPointer.new(:int)
  res = Babeltrace2.bt_event_class_get_log_level(@handle, ptr)
  return nil if res == :BT_PROPERTY_AVAILABILITY_NOT_AVAILABLE
  BTEventClassLogLevel.from_native(ptr.read_int, nil)
end
Also aliased as: log_level
get_name() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 202
def get_name
  Babeltrace2.bt_event_class_get_name(@handle)
end
Also aliased as: name
get_payload_field_class() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 252
def get_payload_field_class
  handle = Babeltrace2.bt_event_class_borrow_payload_field_class(@handle)
  return nil if handle.null?
  BTFieldClass.from_handle(handle)
end
Also aliased as: payload_field_class
get_specific_context_field_class() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 270
def get_specific_context_field_class
  handle = Babeltrace2.bt_event_class_borrow_specific_context_field_class(@handle)
  return nil if handle.null?
  BTFieldClass.from_handle(handle)
end
Also aliased as: specific_context_field_class
get_stream_class() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 180
def get_stream_class
  handle = Babeltrace2.bt_event_class_borrow_stream_class(@handle)
  BTStreamClass.new(handle, retain: true)
end
Also aliased as: stream_class
get_user_attributes() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 287
def get_user_attributes
  BTValueMap.new(Babeltrace2.bt_event_class_borrow_user_attributes(@handle), retain: true)
end
Also aliased as: user_attributes
id()
Alias for: get_id
log_level()
Alias for: get_log_level
log_level=(log_level) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 212
def log_level=(log_level)
  set_log_level(log_level)
  log_level
end
name()
Alias for: get_name
name=(name) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 197
def name=(name)
  set_name(name)
  name
end
payload_field_class()
payload_field_class=(field_class) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 247
def payload_field_class=(field_class)
  set_payload_field_class(field_class)
  field_class
end
set_emf_uri(emf_uri) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 225
def set_emf_uri(emf_uri)
  res = Babeltrace2.bt_event_class_set_emf_uri(@handle, emf_uri)
  raise Babeltrace2.process_error(res) if res != :BT_EVENT_CLASS_SET_EMF_URI_STATUS_OK
  self
end
set_log_level(log_level) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 207
def set_log_level(log_level)
  Babeltrace2.bt_event_class_set_log_level(@handle, log_level)
  self
end
set_name(name) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 191
def set_name(name)
  res = Babeltrace2.bt_event_class_set_name(@handle, name)
  raise Babeltrace2.process_error(res) if res != :BT_EVENT_CLASS_SET_NAME_STATUS_OK
  self
end
set_payload_field_class(field_class) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 241
def set_payload_field_class(field_class)
  res = Babeltrace2.bt_event_class_set_payload_field_class(@handle, field_class)
  raise Babeltrace2.process_error(res) if res != :BT_EVENT_CLASS_SET_FIELD_CLASS_STATUS_OK
  self
end
set_specific_context_field_class(field_class) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 259
def set_specific_context_field_class(field_class)
  res = Babeltrace2.bt_event_class_set_specific_context_field_class(@handle, field_class)
  raise Babeltrace2.process_error(res) if res != :BT_EVENT_CLASS_SET_FIELD_CLASS_STATUS_OK
  self
end
set_user_attributes(user_attributes) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 277
def set_user_attributes(user_attributes)
  Babeltrace2.bt_event_class_set_user_attributes(@handle, BTValue.from_value(user_attributes))
  self
end
specific_context_field_class()
specific_context_field_class=(field_class) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 265
def specific_context_field_class=(field_class)
  set_specific_context_field_class(field_class)
  field_class
end
stream_class()
Alias for: get_stream_class
to_h() click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 292
def to_h
  res = { id: id }
  res[:name] = name if name
  res[:log_level] = log_level if log_level
  res[:emf_uri] = emf_uri if emf_uri
  res[:specific_context_field_class] = specific_context_field_class.to_h if specific_context_field_class
  res[:payload_field_class] = payload_field_class.to_h if payload_field_class
  user_attributes_value = user_attributes.value
  res[:user_attributes] = user_attributes_value if !user_attributes_value.empty?
  res
end
user_attributes()
Alias for: get_user_attributes
user_attributes=(user_attributes) click to toggle source
# File lib/babeltrace2/trace-ir/event-class.rb, line 282
def user_attributes=(user_attributes)
  set_user_attributes(user_attributes)
  user_attributes
end