Class: Babeltrace2::BTFieldClass::Integer

Inherits:
Babeltrace2::BTFieldClass show all
Defined in:
lib/babeltrace2/trace-ir/field-class.rb

Defined Under Namespace

Classes: Signed, Unsigned

Constant Summary

Constants inherited from Babeltrace2::BTFieldClass

IntegerSigned, IntegerUnsigned, RealDoublePrecision, RealSinglePrecision, TYPE_MAP

Instance Attribute Summary

Attributes inherited from Babeltrace2::BTObject

#handle

Instance Method Summary collapse

Methods inherited from Babeltrace2::BTFieldClass

from_h, from_handle, #get_type, #get_user_attributes, #set_user_attributes, #type_is, #user_attributes=

Methods inherited from Babeltrace2::BTSharedObject

inherited, #initialize

Methods inherited from Babeltrace2::BTObject

#==, #initialize, #to_ptr

Constructor Details

This class inherits a constructor from Babeltrace2::BTSharedObject

Instance Method Details

#field_value_range=(n) ⇒ Object



316
317
318
319
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 316

def field_value_range=(n)
  set_field_value_range(n)
  n
end

#from_h(h) ⇒ Object



364
365
366
367
368
369
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 364

def from_h(h)
  super
  self.field_value_range = h[:field_value_range] if h[:field_value_range]
  self.preferred_display_base = h[:preferred_display_base] if h[:preferred_display_base]
  self
end

#get_field_value_rangeObject Also known as: field_value_range



321
322
323
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 321

def get_field_value_range
  Babeltrace2.bt_field_class_integer_get_field_value_range(@handle)
end

#get_preferred_display_baseObject Also known as: preferred_display_base



337
338
339
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 337

def get_preferred_display_base
  Babeltrace2.bt_field_class_integer_get_preferred_display_base(@handle)
end

#preferred_display_base=(preferred_display_base) ⇒ Object



332
333
334
335
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 332

def preferred_display_base=(preferred_display_base)
  set_preferred_display_base(preferred_display_base)
  preferred_display_base
end

#preferred_display_base_integerObject



342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 342

def preferred_display_base_integer
  case preferred_display_base
  when :BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_BINARY
    2
  when :BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_OCTAL
    8
  when :BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_DECIMAL
    10
  when :BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_HEXADECIMAL
    16
  else
    preferred_display_base
  end
end

#set_field_value_range(n) ⇒ Object



310
311
312
313
314
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 310

def set_field_value_range(n)
  raise "invalid range" if n < 0 || n > 64
  Babeltrace2.bt_field_class_integer_set_field_value_range(@handle, n)
  self
end

#set_preferred_display_base(preferred_display_base) ⇒ Object



326
327
328
329
330
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 326

def set_preferred_display_base(preferred_display_base)
  Babeltrace2.bt_field_class_integer_set_preferred_display_base(
    @handle, preferred_display_base)
  self
end

#to_hObject



357
358
359
360
361
362
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 357

def to_h
  res = super
  res[:field_value_range] = field_value_range
  res[:preferred_display_base] = preferred_display_base_integer
  res
end