class Babeltrace2::BTClockClass

Constants

CyclesToNSFromOriginStatus

Public Class Methods

from_h(self_component, h) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 272
def self.from_h(self_component, h)
  o = self_component.create_clock_class
  o.name = h[:name] if h[:name]
  o.description = h[:description] if h[:description]
  o.frequency = h[:frequency] if h[:frequency]
  o.precision = h[:precision] if h[:precision]
  o.set_offset(*h[:offset]) if h[:offset]
  o.origin_is_unix_epoch = h[:origin_is_unix_epoch]
  o.uuid = BTUUID.from_string(h[:uuid]) if h[:uuid]
  o.user_attributes = h[:user_attributes] if h[:user_attributes]
  h[:bt_clock_class] = o
  o
end
new(handle = nil, retain: true, auto_release: true, self_component: nil) click to toggle source
Calls superclass method
# File lib/babeltrace2/trace-ir/clock-class.rb, line 116
def initialize(handle = nil, retain: true, auto_release: true,
               self_component: nil)
  if handle
    super(handle, retain: retain, auto_release: auto_release)
  else
    handle = Babeltrace2.bt_clock_class_create(self_component)
    raise Babeltrace2.process_error if handle.null?
    super(handle)
  end
end

Public Instance Methods

cycles_to_ns_from_origin(value) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 251
def cycles_to_ns_from_origin(value)
  ptr = FFI::MemoryPointer.new(:int64)
  res = Babeltrace2.bt_clock_class_cycles_to_ns_from_origin(@handle, value, ptr)
  raise Babeltrace2.process_error(res) if res != :BT_CLOCK_CLASS_CYCLES_TO_NS_FROM_ORIGIN_STATUS_OK
  ptr.read_int64
end
description()
Alias for: get_description
description=(description) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 208
def description=(description)
  set_description(description)
  description
end
frequency()
Alias for: get_frequency
frequency=(frequency) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 132
def frequency=(frequency)
  set_frequency(frequency)
  frequency
end
get_description() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 213
def get_description
  Babeltrace2.bt_clock_class_get_description(@handle)
end
Also aliased as: description
get_frequency() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 137
def get_frequency
  Babeltrace2.bt_clock_class_get_frequency(@handle)
end
Also aliased as: frequency
get_name() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 197
def get_name
  Babeltrace2.bt_clock_class_get_name(@handle)
end
Also aliased as: name
get_offset() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 147
def get_offset
  ptr1 = FFI::MemoryPointer.new(:int64)
  ptr2 = FFI::MemoryPointer.new(:uint64)
  Babeltrace2.bt_clock_class_get_offset(@handle, ptr1, ptr2)
  [ptr1.read_int64, ptr2.read_uint64]
end
Also aliased as: offset
get_precision() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 165
def get_precision
  Babeltrace2.bt_clock_class_get_precision(@handle)
end
Also aliased as: precision
get_user_attributes() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 245
def get_user_attributes
  handle = Babeltrace2.bt_clock_class_borrow_user_attributes(@handle)
  BTValueMap.new(handle, retain: true)
end
Also aliased as: user_attributes
get_uuid() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 228
def get_uuid
  uuid = Babeltrace2.bt_clock_class_get_uuid(@handle)
  return nil if uuid.null?
  uuid
end
Also aliased as: uuid
name()
Alias for: get_name
name=(name) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 192
def name=(name)
  set_name(name)
  name
end
offset()
Alias for: get_offset
origin_is_unix_epoch() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 181
def origin_is_unix_epoch
  Babeltrace2.bt_clock_class_origin_is_unix_epoch(@handle) != BT_FALSE
end
Also aliased as: origin_is_unix_epoch?
origin_is_unix_epoch=(origin_is_unix_epoch) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 176
def origin_is_unix_epoch=(origin_is_unix_epoch)
  set_origin_is_unix_epoch(origin_is_unix_epoch)
  origin_is_unix_epoch
end
origin_is_unix_epoch?()
precision()
Alias for: get_precision
precision=(precision) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 160
def precision=(precision)
  set_precision(precision)
  precision
end
set_description(description) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 202
def set_description(description)
  res = Babeltrace2.bt_clock_class_set_description(@handle, description)
  raise Babeltrace2.process_error(res) if res != :BT_CLOCK_CLASS_SET_DESCRIPTION_STATUS_OK
  self
end
set_frequency(frequency) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 127
def set_frequency(frequency)
  Babeltrace2.bt_clock_class_set_frequency(@handle, frequency)
  self
end
set_name(name) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 186
def set_name(name)
  res = Babeltrace2.bt_clock_class_set_name(@handle, name)
  raise Babeltrace2.process_error(res) if res != :BT_CLOCK_CLASS_SET_NAME_STATUS_OK
  self
end
set_offset(offset_seconds, offset_cycles) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 142
def set_offset(offset_seconds, offset_cycles)
  Babeltrace2.bt_clock_class_set_offset(@handle, offset_seconds, offset_cycles)
  self
end
set_origin_is_unix_epoch(origin_is_unix_epoch) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 170
def set_origin_is_unix_epoch(origin_is_unix_epoch)
  Babeltrace2.bt_clock_class_set_origin_is_unix_epoch(
    @handle, origin_is_unix_epoch ? BT_TRUE : BT_FALSE)
  self
end
set_precision(precision) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 155
def set_precision(precision)
  Babeltrace2.bt_clock_class_set_precision(@handle, precision)
  self
end
set_user_attributes(user_attributes) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 235
def set_user_attributes(user_attributes)
  Babeltrace2.bt_clock_class_set_user_attributes(@handle, BTValue.from_value(user_attributes))
  self
end
set_uuid(uuid) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 218
def set_uuid(uuid)
  Babeltrace2.bt_clock_class_set_uuid(@handle, uuid)
  self
end
to_h() click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 258
def to_h
  res = {}
  res[:name] = name if name
  res[:description] = description if description
  res[:frequency] = frequency
  res[:precision] = precision
  res[:offset] = offset
  res[:origin_is_unix_epoch] = origin_is_unix_epoch?
  res[:uuid] = uuid.to_s if uuid
  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/clock-class.rb, line 240
def user_attributes=(user_attributes)
  set_user_attributes(user_attributes)
  user_attributes
end
uuid()
Alias for: get_uuid
uuid=(uuid) click to toggle source
# File lib/babeltrace2/trace-ir/clock-class.rb, line 223
def uuid=(uuid)
  set_uuid(uuid)
  uuid
end