babeltrace2 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/babeltrace2.gemspec +13 -0
  4. data/lib/babeltrace2.rb +49 -0
  5. data/lib/babeltrace2/error-reporting.rb +432 -0
  6. data/lib/babeltrace2/func-status.rb +26 -0
  7. data/lib/babeltrace2/graph/component-class-dev.rb +801 -0
  8. data/lib/babeltrace2/graph/component-class.rb +134 -0
  9. data/lib/babeltrace2/graph/component-descriptor-set.rb +78 -0
  10. data/lib/babeltrace2/graph/component.rb +362 -0
  11. data/lib/babeltrace2/graph/connection.rb +35 -0
  12. data/lib/babeltrace2/graph/graph.rb +523 -0
  13. data/lib/babeltrace2/graph/interrupter.rb +57 -0
  14. data/lib/babeltrace2/graph/message-iterator-class.rb +374 -0
  15. data/lib/babeltrace2/graph/message-iterator.rb +253 -0
  16. data/lib/babeltrace2/graph/message.rb +721 -0
  17. data/lib/babeltrace2/graph/port.rb +124 -0
  18. data/lib/babeltrace2/graph/private-query-executor.rb +4 -0
  19. data/lib/babeltrace2/graph/query-executor.rb +142 -0
  20. data/lib/babeltrace2/graph/self-component-class.rb +37 -0
  21. data/lib/babeltrace2/graph/self-component-port.rb +35 -0
  22. data/lib/babeltrace2/graph/self-component.rb +264 -0
  23. data/lib/babeltrace2/graph/self-message-iterator.rb +147 -0
  24. data/lib/babeltrace2/integer-range-set.rb +275 -0
  25. data/lib/babeltrace2/logging-defs.rb +19 -0
  26. data/lib/babeltrace2/logging.rb +77 -0
  27. data/lib/babeltrace2/plugin/plugin-dev.rb +335 -0
  28. data/lib/babeltrace2/plugin/plugin-loading.rb +459 -0
  29. data/lib/babeltrace2/trace-ir/clock-class.rb +258 -0
  30. data/lib/babeltrace2/trace-ir/clock-snapshot.rb +45 -0
  31. data/lib/babeltrace2/trace-ir/event-class.rb +292 -0
  32. data/lib/babeltrace2/trace-ir/event.rb +91 -0
  33. data/lib/babeltrace2/trace-ir/field-class.rb +1416 -0
  34. data/lib/babeltrace2/trace-ir/field-path.rb +123 -0
  35. data/lib/babeltrace2/trace-ir/field.rb +871 -0
  36. data/lib/babeltrace2/trace-ir/packet.rb +57 -0
  37. data/lib/babeltrace2/trace-ir/stream-class.rb +425 -0
  38. data/lib/babeltrace2/trace-ir/stream.rb +137 -0
  39. data/lib/babeltrace2/trace-ir/trace-class.rb +343 -0
  40. data/lib/babeltrace2/trace-ir/trace.rb +321 -0
  41. data/lib/babeltrace2/types.rb +667 -0
  42. data/lib/babeltrace2/util.rb +23 -0
  43. data/lib/babeltrace2/value.rb +869 -0
  44. data/lib/babeltrace2/version.rb +126 -0
  45. metadata +105 -0
@@ -0,0 +1,721 @@
1
+ module Babeltrace2
2
+ BT_MESSAGE_TYPE_STREAM_BEGINNING = 1 << 0
3
+ BT_MESSAGE_TYPE_STREAM_END = 1 << 1
4
+ BT_MESSAGE_TYPE_EVENT = 1 << 2
5
+ BT_MESSAGE_TYPE_PACKET_BEGINNING = 1 << 3
6
+ BT_MESSAGE_TYPE_PACKET_END = 1 << 4
7
+ BT_MESSAGE_TYPE_DISCARDED_EVENTS = 1 << 5
8
+ BT_MESSAGE_TYPE_DISCARDED_PACKETS = 1 << 6
9
+ BT_MESSAGE_TYPE_MESSAGE_ITERATOR_INACTIVITY = 1 << 7
10
+ BTMessageType = enum :bt_message_type,
11
+ [ :BT_MESSAGE_TYPE_STREAM_BEGINNING,
12
+ BT_MESSAGE_TYPE_STREAM_BEGINNING,
13
+ :BT_MESSAGE_TYPE_STREAM_END,
14
+ BT_MESSAGE_TYPE_STREAM_END,
15
+ :BT_MESSAGE_TYPE_EVENT,
16
+ BT_MESSAGE_TYPE_EVENT,
17
+ :BT_MESSAGE_TYPE_PACKET_BEGINNING,
18
+ BT_MESSAGE_TYPE_PACKET_BEGINNING,
19
+ :BT_MESSAGE_TYPE_PACKET_END,
20
+ BT_MESSAGE_TYPE_PACKET_END,
21
+ :BT_MESSAGE_TYPE_DISCARDED_EVENTS,
22
+ BT_MESSAGE_TYPE_DISCARDED_EVENTS,
23
+ :BT_MESSAGE_TYPE_DISCARDED_PACKETS,
24
+ BT_MESSAGE_TYPE_DISCARDED_PACKETS,
25
+ :BT_MESSAGE_TYPE_MESSAGE_ITERATOR_INACTIVITY,
26
+ BT_MESSAGE_TYPE_MESSAGE_ITERATOR_INACTIVITY ]
27
+
28
+ attach_function :bt_message_get_type,
29
+ [ :bt_message_handle ],
30
+ :bt_message_type
31
+
32
+ attach_function :bt_message_get_ref,
33
+ [ :bt_message_handle ],
34
+ :void
35
+
36
+ attach_function :bt_message_put_ref,
37
+ [ :bt_message_handle ],
38
+ :void
39
+
40
+ class BTMessage < BTSharedObject
41
+ Type = BTMessageType
42
+ @get_ref = :bt_message_get_ref
43
+ @put_ref = :bt_message_put_ref
44
+
45
+ def self.from_handle(handle, retain: true, auto_release: true)
46
+ case Babeltrace2.bt_message_get_type(handle)
47
+ when :BT_MESSAGE_TYPE_STREAM_BEGINNING
48
+ StreamBeginning
49
+ when :BT_MESSAGE_TYPE_STREAM_END
50
+ StreamEnd
51
+ when :BT_MESSAGE_TYPE_EVENT
52
+ Event
53
+ when :BT_MESSAGE_TYPE_PACKET_BEGINNING
54
+ PacketBeginning
55
+ when :BT_MESSAGE_TYPE_PACKET_END
56
+ PacketEnd
57
+ when :BT_MESSAGE_TYPE_DISCARDED_EVENTS
58
+ DiscardedEvents
59
+ when :BT_MESSAGE_TYPE_DISCARDED_PACKETS
60
+ DiscardedPackets
61
+ when :BT_MESSAGE_TYPE_MESSAGE_ITERATOR_INACTIVITY
62
+ MessageIteratorInactivity
63
+ else
64
+ raise Error.new("unknown message type")
65
+ end.new(handle, retain: retain, auto_release: auto_release)
66
+ end
67
+
68
+ def get_type
69
+ Babeltrace2.bt_message_get_type(@handle)
70
+ end
71
+ alias type get_type
72
+ end
73
+
74
+ BT_MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_KNOWN = 1
75
+ BT_MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_UNKNOWN = 0
76
+ BTMessageStreamClockSnapshotState = enum :bt_message_stream_clock_snapshot_state,
77
+ [ :BT_MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_KNOWN,
78
+ BT_MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_KNOWN,
79
+ :BT_MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_UNKNOWN,
80
+ BT_MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_UNKNOWN ]
81
+
82
+ attach_function :bt_message_stream_beginning_create,
83
+ [ :bt_self_message_iterator_handle,
84
+ :bt_stream_handle ],
85
+ :bt_message_handle
86
+
87
+ attach_function :bt_message_stream_beginning_borrow_stream,
88
+ [ :bt_message_handle ],
89
+ :bt_stream_handle
90
+
91
+ attach_function :bt_message_stream_beginning_borrow_stream_const,
92
+ [ :bt_message_handle ],
93
+ :bt_stream_handle
94
+
95
+ attach_function :bt_message_stream_beginning_set_default_clock_snapshot,
96
+ [ :bt_message_handle, :uint64_t ],
97
+ :void
98
+
99
+ attach_function :bt_message_stream_beginning_borrow_default_clock_snapshot_const,
100
+ [ :bt_message_handle, :pointer ],
101
+ :bt_message_stream_clock_snapshot_state
102
+
103
+ attach_function :bt_message_stream_beginning_borrow_stream_class_default_clock_class_const,
104
+ [ :bt_message_handle ],
105
+ :bt_clock_class_handle
106
+
107
+ class BTMessage
108
+ StreamClockSnapshotState = BTMessageStreamClockSnapshotState
109
+ class StreamBeginning < BTMessage
110
+ def initialize(handle = nil, retain: true, auto_release: true,
111
+ self_message_iterator: nil, stream: nil)
112
+ if handle
113
+ super(handle, retain: retain, auto_release: auto_release)
114
+ else
115
+ handle = Babeltrace2.bt_message_stream_beginning_create(
116
+ self_message_iterator, stream)
117
+ raise Babeltrace2.process_error if handle.null?
118
+ super(handle)
119
+ end
120
+ end
121
+
122
+ def get_stream
123
+ handle = Babeltrace2.bt_message_stream_beginning_borrow_stream(@handle)
124
+ BTStream.new(handle, retain: true, auto_release: true)
125
+ end
126
+ alias stream get_stream
127
+
128
+ def set_default_clock_snapshot(value)
129
+ Babeltrace2.bt_message_stream_beginning_set_default_clock_snapshot(@handle, value)
130
+ self
131
+ end
132
+
133
+ def default_clock_snapshot=(value)
134
+ Babeltrace2.bt_message_stream_beginning_set_default_clock_snapshot(@handle, value)
135
+ value
136
+ end
137
+
138
+ def get_default_clock_snapshot
139
+ ptr = FFI::MemoryPointer.new(:pointer)
140
+ res = Babeltrace2.bt_message_stream_beginning_borrow_default_clock_snapshot_const(@handle, ptr)
141
+ return nil if res == :BT_MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_UNKNOWN
142
+ BTClockSnapshot.new(BTClockSnapshotHandle.new(ptr.read_pointer))
143
+ end
144
+ alias default_clock_snapshot get_default_clock_snapshot
145
+
146
+ def get_stream_class_default_clock_class
147
+ handle = Babeltrace2.bt_message_stream_beginning_borrow_stream_class_default_clock_class_const(@handle)
148
+ BTClockClass.new(handle, retain: true, auto_release: true)
149
+ end
150
+ alias stream_class_default_clock_class get_stream_class_default_clock_class
151
+ end
152
+ end
153
+ BTMessageStreamBeginning = BTMessage::StreamBeginning
154
+
155
+ attach_function :bt_message_stream_end_create,
156
+ [ :bt_self_message_iterator_handle,
157
+ :bt_stream_handle ],
158
+ :bt_message_handle
159
+
160
+ attach_function :bt_message_stream_end_borrow_stream,
161
+ [ :bt_message_handle ],
162
+ :bt_stream_handle
163
+
164
+ attach_function :bt_message_stream_end_borrow_stream_const,
165
+ [ :bt_message_handle ],
166
+ :bt_stream_handle
167
+
168
+ attach_function :bt_message_stream_end_set_default_clock_snapshot,
169
+ [ :bt_message_handle, :uint64_t ],
170
+ :void
171
+
172
+ attach_function :bt_message_stream_end_borrow_default_clock_snapshot_const,
173
+ [ :bt_message_handle, :pointer ],
174
+ :bt_message_stream_clock_snapshot_state
175
+
176
+ attach_function :bt_message_stream_end_borrow_stream_class_default_clock_class_const,
177
+ [ :bt_message_handle ],
178
+ :bt_clock_class_handle
179
+
180
+ class BTMessage
181
+ class StreamEnd < BTMessage
182
+ def initialize(handle = nil, retain: true, auto_release: true,
183
+ self_message_iterator: nil, stream: nil)
184
+ if handle
185
+ super(handle, retain: retain, auto_release: auto_release)
186
+ else
187
+ handle = Babeltrace2.bt_message_stream_end_create(
188
+ self_message_iterator, stream)
189
+ raise Babeltrace2.process_error if handle.null?
190
+ super(handle)
191
+ end
192
+ end
193
+
194
+ def get_stream
195
+ handle = Babeltrace2.bt_message_stream_end_borrow_stream(@handle)
196
+ BTStream.new(handle, retain: true, auto_release: true)
197
+ end
198
+ alias stream get_stream
199
+
200
+ def set_default_clock_snapshot(value)
201
+ Babeltrace2.bt_message_stream_end_set_default_clock_snapshot(@handle, value)
202
+ self
203
+ end
204
+
205
+ def default_clock_snapshot=(value)
206
+ Babeltrace2.bt_message_stream_end_set_default_clock_snapshot(@handle, value)
207
+ value
208
+ end
209
+
210
+ def get_default_clock_snapshot
211
+ ptr = FFI::MemoryPointer.new(:pointer)
212
+ res = Babeltrace2.bt_message_stream_end_borrow_default_clock_snapshot_const(@handle, ptr)
213
+ return nil if res == :BT_MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_UNKNOWN
214
+ BTClockSnapshot.new(BTClockSnapshotHandle.new(ptr.read_pointer))
215
+ end
216
+ alias default_clock_snapshot get_default_clock_snapshot
217
+
218
+ def get_stream_class_default_clock_class
219
+ handle = Babeltrace2.bt_message_stream_end_borrow_stream_class_default_clock_class_const(@handle)
220
+ BTClockClass.new(handle, retain: true, auto_release: true)
221
+ end
222
+ alias stream_class_default_clock_class get_stream_class_default_clock_class
223
+ end
224
+ end
225
+ BTMessageStreamEnd = BTMessage::StreamEnd
226
+
227
+ attach_function :bt_message_event_create,
228
+ [ :bt_self_message_iterator_handle,
229
+ :bt_event_class_handle,
230
+ :bt_stream_handle ],
231
+ :bt_message_handle
232
+
233
+ attach_function :bt_message_event_create_with_default_clock_snapshot,
234
+ [ :bt_self_message_iterator_handle,
235
+ :bt_event_class_handle,
236
+ :bt_stream_handle, :uint64 ],
237
+ :bt_message_handle
238
+
239
+ attach_function :bt_message_event_create_with_packet,
240
+ [ :bt_self_message_iterator_handle,
241
+ :bt_event_class_handle,
242
+ :bt_packet_handle ],
243
+ :bt_message_handle
244
+
245
+ attach_function :bt_message_event_create_with_packet_and_default_clock_snapshot,
246
+ [ :bt_self_message_iterator_handle,
247
+ :bt_event_class_handle,
248
+ :bt_packet_handle, :uint64 ],
249
+ :bt_message_handle
250
+
251
+ attach_function :bt_message_event_borrow_event,
252
+ [ :bt_message_handle ],
253
+ :bt_event_handle
254
+
255
+ attach_function :bt_message_event_borrow_event_const,
256
+ [ :bt_message_handle ],
257
+ :bt_event_handle
258
+
259
+ attach_function :bt_message_event_borrow_default_clock_snapshot_const,
260
+ [ :bt_message_handle ],
261
+ :bt_clock_snapshot_handle
262
+
263
+ attach_function :bt_message_event_borrow_stream_class_default_clock_class_const,
264
+ [ :bt_message_handle ],
265
+ :bt_clock_class_handle
266
+
267
+ class BTMessage
268
+ class Event < BTMessage
269
+ def initialize(handle = nil, retain: true, auto_release: true,
270
+ self_message_iterator: nil, event_class: nil, stream: nil,
271
+ clock_snapshot_value: nil, packet: nil)
272
+ if handle
273
+ super(handle, retain: retain, auto_release: auto_release)
274
+ else
275
+ handle = if clock_snapshot_value
276
+ if packet
277
+ Babeltrace2.bt_message_event_create_with_packet_and_default_clock_snapshot(
278
+ self_message_iterator, event_class, packet, clock_snapshot_value)
279
+ else
280
+ Babeltrace2.bt_message_event_create_with_default_clock_snapshot(
281
+ self_message_iterator, event_class, stream, clock_snapshot_value)
282
+ end
283
+ else
284
+ if packet
285
+ Babeltrace2.bt_message_event_create_with_packet(
286
+ self_message_iterator, event_class, packet)
287
+ else
288
+ Babeltrace2.bt_message_event_create(
289
+ self_message_iterator, event_class, stream)
290
+ end
291
+ end
292
+ raise Babeltrace2.process_error if handle.null?
293
+ super(handle)
294
+ end
295
+ end
296
+
297
+ def get_event
298
+ handle = Babeltrace2.bt_message_event_borrow_event(@handle)
299
+ BTEvent.new(handle)
300
+ end
301
+ alias event get_event
302
+
303
+ def get_default_clock_snapshot
304
+ handle = Babeltrace2.bt_message_event_borrow_default_clock_snapshot_const(@handle)
305
+ BTClockSnapshot.new(handle)
306
+ end
307
+ alias default_clock_snapshot get_default_clock_snapshot
308
+
309
+ def get_stream_class_default_clock_class
310
+ handle = Babeltrace2.bt_message_event_borrow_stream_class_default_clock_class_const(@handle)
311
+ BTClockClass.new(handle, retain: true, auto_release: true)
312
+ end
313
+ alias stream_class_default_clock_class get_stream_class_default_clock_class
314
+ end
315
+ end
316
+ BTMessageEvent = BTMessage::Event
317
+
318
+ attach_function :bt_message_packet_beginning_create,
319
+ [ :bt_self_message_iterator_handle,
320
+ :bt_packet_handle ],
321
+ :bt_message_handle
322
+
323
+ attach_function :bt_message_packet_beginning_create_with_default_clock_snapshot,
324
+ [ :bt_self_message_iterator_handle,
325
+ :bt_packet_handle, :uint64 ],
326
+ :bt_message_handle
327
+
328
+ attach_function :bt_message_packet_beginning_borrow_packet,
329
+ [ :bt_message_handle ],
330
+ :bt_packet_handle
331
+
332
+ attach_function :bt_message_packet_beginning_borrow_packet_const,
333
+ [ :bt_message_handle ],
334
+ :bt_packet_handle
335
+
336
+ attach_function :bt_message_packet_beginning_borrow_default_clock_snapshot_const,
337
+ [ :bt_message_handle ],
338
+ :bt_clock_snapshot_handle
339
+
340
+ attach_function :bt_message_packet_beginning_borrow_stream_class_default_clock_class_const,
341
+ [ :bt_message_handle ],
342
+ :bt_clock_class_handle
343
+
344
+ class BTMessage
345
+ class PacketBeginning < BTMessage
346
+ def initialize(handle = nil, retain: true, auto_release: true,
347
+ self_message_iterator: nil, packet: nil, clock_snapshot_value: nil)
348
+ if handle
349
+ super(handle, retain: retain, auto_release: auto_release)
350
+ else
351
+ handle = if clock_snapshot_value
352
+ Babeltrace2.bt_message_packet_beginning_create_with_default_clock_snapshot(
353
+ self_message_iterator, packet, clock_snapshot_value)
354
+ else
355
+ Babeltrace2.bt_message_packet_beginning_create(
356
+ self_message_iterator, packet)
357
+ end
358
+ raise Babeltrace2.process_error if handle.null?
359
+ super(handle)
360
+ end
361
+ end
362
+
363
+ def get_packet
364
+ handle = Babeltrace2.bt_message_packet_beginning_borrow_packet(@handle)
365
+ BTPacket.new(handle, retain: true, auto_release: true)
366
+ end
367
+ alias packet get_packet
368
+
369
+ def get_default_clock_snapshot
370
+ handle = Babeltrace2.bt_message_packet_beginning_borrow_default_clock_snapshot_const(@handle)
371
+ BTClockSnapshot.new(handle)
372
+ end
373
+ alias default_clock_snapshot get_default_clock_snapshot
374
+
375
+ def get_stream_class_default_clock_class
376
+ handle = Babeltrace2.bt_message_packet_beginning_borrow_stream_class_default_clock_class_const(@handle)
377
+ BTClockClass.new(handle, retain: true, auto_release: true)
378
+ end
379
+ alias stream_class_default_clock_class get_stream_class_default_clock_class
380
+ end
381
+ end
382
+ BTMessagePacketBeginning = BTMessage::PacketBeginning
383
+
384
+ attach_function :bt_message_packet_end_create,
385
+ [ :bt_self_message_iterator_handle,
386
+ :bt_packet_handle ],
387
+ :bt_message_handle
388
+
389
+ attach_function :bt_message_packet_end_create_with_default_clock_snapshot,
390
+ [ :bt_self_message_iterator_handle,
391
+ :bt_packet_handle, :uint64 ],
392
+ :bt_message_handle
393
+
394
+ attach_function :bt_message_packet_end_borrow_packet,
395
+ [ :bt_message_handle ],
396
+ :bt_packet_handle
397
+
398
+ attach_function :bt_message_packet_end_borrow_packet_const,
399
+ [ :bt_message_handle ],
400
+ :bt_packet_handle
401
+
402
+ attach_function :bt_message_packet_end_borrow_default_clock_snapshot_const,
403
+ [ :bt_message_handle ],
404
+ :bt_clock_snapshot_handle
405
+
406
+ attach_function :bt_message_packet_end_borrow_stream_class_default_clock_class_const,
407
+ [ :bt_message_handle ],
408
+ :bt_clock_class_handle
409
+
410
+ class BTMessage
411
+ class PacketEnd < BTMessage
412
+ def initialize(handle = nil, retain: true, auto_release: true,
413
+ self_message_iterator: nil, packet: nil, clock_snapshot_value: nil)
414
+ if handle
415
+ super(handle, retain: retain, auto_release: auto_release)
416
+ else
417
+ handle = if clock_snapshot_value
418
+ Babeltrace2.bt_message_packet_end_create_with_default_clock_snapshot(
419
+ self_message_iterator, packet, clock_snapshot_value)
420
+ else
421
+ Babeltrace2.bt_message_packet_end_create(
422
+ self_message_iterator, packet)
423
+ end
424
+ raise Babeltrace2.process_error if handle.null?
425
+ super(handle)
426
+ end
427
+ end
428
+
429
+ def get_packet
430
+ handle = Babeltrace2.bt_message_packet_end_borrow_packet(@handle)
431
+ BTPacket.new(handle, retain: true, auto_release: true)
432
+ end
433
+ alias packet get_packet
434
+
435
+ def get_default_clock_snapshot
436
+ handle = Babeltrace2.bt_message_packet_end_borrow_default_clock_snapshot_const(@handle)
437
+ BTClockSnapshot.new(handle)
438
+ end
439
+ alias default_clock_snapshot get_default_clock_snapshot
440
+
441
+ def get_stream_class_default_clock_class
442
+ handle = Babeltrace2.bt_message_packet_end_borrow_stream_class_default_clock_class_const(@handle)
443
+ BTClockClass.new(handle, retain: true, auto_release: true)
444
+ end
445
+ alias stream_class_default_clock_class get_stream_class_default_clock_class
446
+ end
447
+ end
448
+ BTMessagePacketEnd = BTMessage::PacketEnd
449
+
450
+ attach_function :bt_message_discarded_events_create,
451
+ [ :bt_self_message_iterator_handle,
452
+ :bt_stream_handle ],
453
+ :bt_message_handle
454
+
455
+ attach_function :bt_message_discarded_events_create_with_default_clock_snapshots,
456
+ [ :bt_self_message_iterator_handle,
457
+ :bt_stream_handle, :uint64, :uint64 ],
458
+ :bt_message_handle
459
+
460
+ attach_function :bt_message_discarded_events_borrow_stream,
461
+ [ :bt_message_handle ],
462
+ :bt_stream_handle
463
+
464
+ attach_function :bt_message_discarded_events_borrow_stream_const,
465
+ [ :bt_message_handle ],
466
+ :bt_stream_handle
467
+
468
+ attach_function :bt_message_discarded_events_borrow_beginning_default_clock_snapshot_const,
469
+ [ :bt_message_handle ],
470
+ :bt_clock_snapshot_handle
471
+
472
+ attach_function :bt_message_discarded_events_borrow_end_default_clock_snapshot_const,
473
+ [ :bt_message_handle ],
474
+ :bt_clock_snapshot_handle
475
+
476
+ attach_function :bt_message_discarded_events_borrow_stream_class_default_clock_class_const,
477
+ [ :bt_message_handle ],
478
+ :bt_clock_class_handle
479
+
480
+ attach_function :bt_message_discarded_events_set_count,
481
+ [ :bt_message_handle, :uint64 ],
482
+ :void
483
+
484
+ attach_function :bt_message_discarded_events_get_count,
485
+ [ :bt_message_handle, :pointer ],
486
+ :bt_property_availability
487
+
488
+ class BTMessage
489
+ class DiscardedEvents < BTMessage
490
+ def initialize(handle = nil, retain: true, auto_release: true,
491
+ self_message_iterator: nil, stream: nil,
492
+ beginning_clock_snapshot_value: nil,
493
+ end_clock_snapshot_value: nil)
494
+ if handle
495
+ super(handle, retain: retain, auto_release: auto_release)
496
+ else
497
+ handle = if beginning_clock_snapshot_value && end_clock_snapshot_value
498
+ Babeltrace2.bt_message_discarded_events_create_with_default_clock_snapshots(
499
+ self_message_iterator, stream,
500
+ beginning_clock_snapshot_value, end_clock_snapshot_value)
501
+ else
502
+ Babeltrace2.bt_message_discarded_events_create(
503
+ self_message_iterator, stream)
504
+ end
505
+ raise Babeltrace2.process_error if handle.null?
506
+ super(handle)
507
+ end
508
+ end
509
+
510
+ def get_stream
511
+ handle = Babeltrace2.bt_message_discarded_events_borrow_stream(@handle)
512
+ BTStream.new(handle, retain: true, auto_release: true)
513
+ end
514
+ alias stream get_stream
515
+
516
+ def get_beginning_default_clock_snapshot
517
+ handle = Babeltrace2.bt_message_discarded_events_borrow_beginning_default_clock_snapshot_const(@handle)
518
+ BTClockSnapshot.new(handle)
519
+ end
520
+ alias beginning_default_clock_snapshot get_beginning_default_clock_snapshot
521
+
522
+ def get_end_default_clock_snapshot
523
+ handle = Babeltrace2.bt_message_discarded_events_borrow_end_default_clock_snapshot_const(@handle)
524
+ BTClockSnapshot.new(handle)
525
+ end
526
+ alias end_default_clock_snapshot get_end_default_clock_snapshot
527
+
528
+ def get_stream_class_default_clock_class
529
+ handle = Babeltrace2.bt_message_discarded_events_borrow_stream_class_default_clock_class_const(@handle)
530
+ BTClockClass.new(handle, retain: true, auto_release: true)
531
+ end
532
+ alias stream_class_default_clock_class get_stream_class_default_clock_class
533
+
534
+ def set_count(count)
535
+ Babeltrace2.bt_message_discarded_events_set_count(@handle, count)
536
+ self
537
+ end
538
+
539
+ def count=(count)
540
+ set_count(count)
541
+ count
542
+ end
543
+
544
+ def get_count
545
+ ptr = FFI::MemoryPointer.new(:pointer)
546
+ res = Babeltrace2.bt_message_discarded_events_get_count(@handle, ptr)
547
+ return nil if res == :BT_PROPERTY_AVAILABILITY_NOT_AVAILABLE
548
+ ptr.read_uint64
549
+ end
550
+ alias count get_count
551
+ end
552
+ end
553
+ BTMessageDiscardedEvents = BTMessage::DiscardedEvents
554
+
555
+ attach_function :bt_message_discarded_packets_create,
556
+ [ :bt_self_message_iterator_handle,
557
+ :bt_stream_handle ],
558
+ :bt_message_handle
559
+
560
+ attach_function :bt_message_discarded_packets_create_with_default_clock_snapshots,
561
+ [ :bt_self_message_iterator_handle,
562
+ :bt_stream_handle, :uint64, :uint64 ],
563
+ :bt_message_handle
564
+
565
+ attach_function :bt_message_discarded_packets_borrow_stream,
566
+ [ :bt_message_handle ],
567
+ :bt_stream_handle
568
+
569
+ attach_function :bt_message_discarded_packets_borrow_stream_const,
570
+ [ :bt_message_handle ],
571
+ :bt_stream_handle
572
+
573
+ attach_function :bt_message_discarded_packets_borrow_beginning_default_clock_snapshot_const,
574
+ [ :bt_message_handle ],
575
+ :bt_clock_snapshot_handle
576
+
577
+ attach_function :bt_message_discarded_packets_borrow_end_default_clock_snapshot_const,
578
+ [ :bt_message_handle ],
579
+ :bt_clock_snapshot_handle
580
+
581
+ attach_function :bt_message_discarded_packets_borrow_stream_class_default_clock_class_const,
582
+ [ :bt_message_handle ],
583
+ :bt_clock_class_handle
584
+
585
+ attach_function :bt_message_discarded_packets_set_count,
586
+ [ :bt_message_handle, :uint64 ],
587
+ :void
588
+
589
+ attach_function :bt_message_discarded_packets_get_count,
590
+ [ :bt_message_handle, :pointer ],
591
+ :bt_property_availability
592
+
593
+ class BTMessage
594
+ class DiscardedPackets < BTMessage
595
+ def initialize(handle = nil, retain: true, auto_release: true,
596
+ self_message_iterator: nil, stream: nil,
597
+ beginning_clock_snapshot_value: nil,
598
+ end_clock_snapshot_value: nil)
599
+ if handle
600
+ super(handle, retain: retain, auto_release: auto_release)
601
+ else
602
+ handle = if beginning_clock_snapshot_value && end_clock_snapshot_value
603
+ Babeltrace2.bt_message_discarded_packets_create_with_default_clock_snapshots(
604
+ self_message_iterator, stream,
605
+ beginning_clock_snapshot_value, end_clock_snapshot_value)
606
+ else
607
+ Babeltrace2.bt_message_discarded_packets_create(
608
+ self_message_iterator, stream)
609
+ end
610
+ raise Babeltrace2.process_error if handle.null?
611
+ super(handle)
612
+ end
613
+ end
614
+
615
+ def get_stream
616
+ handle = Babeltrace2.bt_message_discarded_packets_borrow_stream(@handle)
617
+ BTStream.new(handle, retain: true, auto_release: true)
618
+ end
619
+ alias stream get_stream
620
+
621
+ def get_beginning_default_clock_snapshot
622
+ handle = Babeltrace2.bt_message_discarded_packets_borrow_beginning_default_clock_snapshot_const(@handle)
623
+ BTClockSnapshot.new(handle)
624
+ end
625
+ alias beginning_default_clock_snapshot get_beginning_default_clock_snapshot
626
+
627
+ def get_end_default_clock_snapshot
628
+ handle = Babeltrace2.bt_message_discarded_packets_borrow_end_default_clock_snapshot_const(@handle)
629
+ BTClockSnapshot.new(handle)
630
+ end
631
+ alias end_default_clock_snapshot get_end_default_clock_snapshot
632
+
633
+ def get_stream_class_default_clock_class
634
+ handle = Babeltrace2.bt_message_discarded_packets_borrow_stream_class_default_clock_class_const(@handle)
635
+ BTClockClass.new(handle, retain: true, auto_release: true)
636
+ end
637
+ alias stream_class_default_clock_class get_stream_class_default_clock_class
638
+
639
+ def set_count(count)
640
+ Babeltrace2.bt_message_discarded_packets_set_count(@handle, count)
641
+ self
642
+ end
643
+
644
+ def count=(count)
645
+ set_count(count)
646
+ count
647
+ end
648
+
649
+ def get_count
650
+ ptr = FFI::MemoryPointer.new(:pointer)
651
+ res = Babeltrace2.bt_message_discarded_packets_get_count(@handle, ptr)
652
+ return nil if res == :BT_PROPERTY_AVAILABILITY_NOT_AVAILABLE
653
+ ptr.read_uint64
654
+ end
655
+ alias count get_count
656
+ end
657
+ end
658
+ BTMessageDiscardedPackets = BTMessage::DiscardedPackets
659
+
660
+ attach_function :bt_message_message_iterator_inactivity_create,
661
+ [ :bt_self_message_iterator_handle,
662
+ :bt_clock_class_handle,
663
+ :uint64 ],
664
+ :bt_message_handle
665
+
666
+ attach_function :bt_message_message_iterator_inactivity_borrow_clock_snapshot_const,
667
+ [ :bt_message_handle ],
668
+ :bt_clock_snapshot_handle
669
+
670
+ class BTMessage
671
+ class MessageIteratorInactivity < BTMessage
672
+ def initialize(handle = nil, retain: true, auto_release: true,
673
+ self_message_iterator: nil, clock_class: nil,
674
+ clock_snapshot_value: nil)
675
+ if handle
676
+ super(handle, retain: retain, auto_release: auto_release)
677
+ else
678
+ handle = Babeltrace2.bt_message_message_iterator_inactivity_create(
679
+ self_message_iterator, clock_class, clock_snapshot_value)
680
+ raise Babeltrace2.process_error if handle.null?
681
+ super(handle)
682
+ end
683
+ end
684
+
685
+ def get_clock_snapshot
686
+ handle = Babeltrace2.bt_message_message_iterator_inactivity_borrow_clock_snapshot_const(@handle)
687
+ BTClockSnapshot.new(handle)
688
+ end
689
+ alias clock_snapshot get_clock_snapshot
690
+ end
691
+ end
692
+ BTMessageMessageIteratorInactivity = BTMessage::MessageIteratorInactivity
693
+
694
+ BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_OK = BT_FUNC_STATUS_OK
695
+ BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_NO_MATCH = BT_FUNC_STATUS_NO_MATCH
696
+ BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_MEMORY_ERROR = BT_FUNC_STATUS_MEMORY_ERROR
697
+ BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_ERROR = BT_FUNC_STATUS_ERROR
698
+ BTGetGreatestOperativeMipVersionStatus =
699
+ enum :bt_get_greatest_operative_mip_version_status,
700
+ [ :BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_OK,
701
+ BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_OK,
702
+ :BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_NO_MATCH,
703
+ BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_NO_MATCH,
704
+ :BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_MEMORY_ERROR,
705
+ BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_MEMORY_ERROR,
706
+ :BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_ERROR,
707
+ BT_GET_GREATEST_OPERATIVE_MIP_VERSION_STATUS_ERROR ]
708
+
709
+ attach_function :bt_get_greatest_operative_mip_version,
710
+ [ :bt_component_descriptor_set_handle,
711
+ :bt_logging_level, :pointer ],
712
+ :bt_get_greatest_operative_mip_version_status
713
+
714
+ attach_function :bt_get_maximal_mip_version,
715
+ [],
716
+ :uint64
717
+
718
+ alias get_maximal_mip_version bt_get_maximal_mip_version
719
+ alias maximal_mip_version get_maximal_mip_version
720
+
721
+ end