Class: Babeltrace2::BTPacket

Inherits:
BTSharedObject show all
Defined in:
lib/babeltrace2/trace-ir/packet.rb

Instance Attribute Summary

Attributes inherited from BTObject

#handle

Instance Method Summary collapse

Methods inherited from BTSharedObject

inherited

Methods inherited from BTObject

#==, #to_ptr

Constructor Details

#initialize(handle = nil, retain: true, auto_release: true, stream: nil) ⇒ BTPacket

Returns a new instance of BTPacket.



34
35
36
37
38
39
40
41
42
43
# File 'lib/babeltrace2/trace-ir/packet.rb', line 34

def initialize(handle = nil, retain: true, auto_release: true,
               stream: nil)
  if handle
    super(handle, retain: retain, auto_release: auto_release)
  else
    handle = Babeltrace2.bt_packet_create(stream)
    raise Babeltrace2.process_error if handle.null?
    super(handle)
  end
end

Instance Method Details

#get_context_fieldObject Also known as: context_field



50
51
52
53
54
# File 'lib/babeltrace2/trace-ir/packet.rb', line 50

def get_context_field
  handle = Babeltrace2.bt_packet_borrow_context_field(@handle)
  return nil if handle.null?
  BTField.from_handle(handle)
end

#get_streamObject Also known as: stream



45
46
47
# File 'lib/babeltrace2/trace-ir/packet.rb', line 45

def get_stream
  BTStream.new(Babeltrace2.bt_packet_borrow_stream(@handle), retain: true)
end