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



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

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

#from_h(h) ⇒ Object



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

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



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

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



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

def get_preferred_display_base
  Babeltrace2.bt_field_class_integer_get_preferred_display_base(@handle)
end

#preferred_display_base=(preferred_display_base) ⇒ Object



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

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

#preferred_display_base_integerObject



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

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



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

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



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

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



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

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