Babeltrace 2 C API 2.0.6
Open-source trace manipulation framework
Loading...
Searching...
No Matches
message-iterator-class.h
1#ifndef BABELTRACE2_GRAPH_MESSAGE_ITERATOR_CLASS_H
2#define BABELTRACE2_GRAPH_MESSAGE_ITERATOR_CLASS_H
3
4/*
5 * Copyright (c) 2019 EfficiOS Inc.
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy
8 * of this software and associated documentation files (the "Software"), to deal
9 * in the Software without restriction, including without limitation the rights
10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 * copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 * SOFTWARE.
24 */
25
26#ifndef __BT_IN_BABELTRACE_H
27# error "Please include <babeltrace2/babeltrace.h> instead."
28#endif
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
34
540
576 bt_self_message_iterator *self_message_iterator,
577 bt_bool *can_seek_beginning);
578
608
647 bt_self_message_iterator *self_message_iterator,
648 int64_t ns_from_origin, bt_bool *can_seek_ns_from_origin);
649
666typedef void
668 bt_self_message_iterator *self_message_iterator);
669
693
723 bt_self_message_iterator *self_message_iterator,
726
762
837 bt_self_message_iterator *self_message_iterator,
838 bt_message_array_const messages, uint64_t capacity,
839 uint64_t *count);
840
870
903 bt_self_message_iterator *self_message_iterator);
904
934
969 bt_self_message_iterator *self_message_iterator,
970 int64_t ns_from_origin);
971
996
1016
1039 bt_message_iterator_class *message_iterator_class,
1041
1064 bt_message_iterator_class *message_iterator_class,
1066
1100 bt_message_iterator_class *message_iterator_class,
1103
1139 bt_message_iterator_class *message_iterator_class,
1142
1166 const bt_message_iterator_class *message_iterator_class);
1167
1184 const bt_message_iterator_class *message_iterator_class);
1185
1201#define BT_MESSAGE_ITERATOR_CLASS_PUT_REF_AND_RESET(_message_iterator_class) \
1202 do { \
1203 bt_message_iterator_class_put_ref(_message_iterator_class); \
1204 (_message_iterator_class) = NULL; \
1205 } while (0)
1206
1233#define BT_MESSAGE_ITERATOR_CLASS_MOVE_MOVE_REF(_dst, _src) \
1234 do { \
1235 bt_message_iterator_class_put_ref(_dst); \
1236 (_dst) = (_src); \
1237 (_src) = NULL; \
1238 } while (0)
1239
1244#ifdef __cplusplus
1245}
1246#endif
1247
1248#endif /* BABELTRACE2_GRAPH_MESSAGE_ITERATOR_CLASS_H */
int bt_bool
Babeltrace&#160;2 boolean type.
Definition types.h:140
bt_message const ** bt_message_array_const
Array of constant messages.
Definition types.h:196
bt_message_iterator_class_initialize_method_status(* bt_message_iterator_class_initialize_method)(bt_self_message_iterator *self_message_iterator, bt_self_message_iterator_configuration *configuration, bt_self_component_port_output *port)
Message iterator initialization method.
Definition message-iterator-class.h:722
bt_message_iterator_class_initialize_method_status
Status codes for bt_message_iterator_class_initialize_method.
Definition message-iterator-class.h:674
bt_message_iterator_class_seek_ns_from_origin_method_status
Status codes for bt_message_iterator_class_seek_ns_from_origin_method.
Definition message-iterator-class.h:909
bt_message_iterator_class_set_method_status bt_message_iterator_class_set_seek_beginning_methods(bt_message_iterator_class *message_iterator_class, bt_message_iterator_class_seek_beginning_method seek_method, bt_message_iterator_class_can_seek_beginning_method can_seek_method)
Sets the optional "seek beginning" and "can seek beginning?" methods of the message iterator class me...
bt_message_iterator_class_can_seek_beginning_method_status(* bt_message_iterator_class_can_seek_beginning_method)(bt_self_message_iterator *self_message_iterator, bt_bool *can_seek_beginning)
Message iterator "can seek beginning?" method.
Definition message-iterator-class.h:575
void bt_message_iterator_class_put_ref(const bt_message_iterator_class *message_iterator_class)
Decrements the reference count of the message iterator class message_iterator_class.
bt_message_iterator_class * bt_message_iterator_class_create(bt_message_iterator_class_next_method next_method)
Creates a message iterator class having the "next" method method next_method.
bt_message_iterator_class_seek_beginning_method_status(* bt_message_iterator_class_seek_beginning_method)(bt_self_message_iterator *self_message_iterator)
Message iterator "seek beginning" method.
Definition message-iterator-class.h:902
bt_message_iterator_class_set_method_status
Status code for the bt_message_iterator_class_set_*_method() functions.
Definition message-iterator-class.h:1009
bt_message_iterator_class_can_seek_ns_from_origin_method_status(* bt_message_iterator_class_can_seek_ns_from_origin_method)(bt_self_message_iterator *self_message_iterator, int64_t ns_from_origin, bt_bool *can_seek_ns_from_origin)
Message iterator "can seek ns from origin?" method.
Definition message-iterator-class.h:646
bt_message_iterator_class_set_method_status bt_message_iterator_class_set_initialize_method(bt_message_iterator_class *message_iterator_class, bt_message_iterator_class_initialize_method method)
Sets the optional initialization method of the message iterator class message_iterator_class to metho...
struct bt_message_iterator_class bt_message_iterator_class
Message iterator class.
Definition types.h:73
bt_message_iterator_class_seek_beginning_method_status
Status codes for bt_message_iterator_class_seek_beginning_method.
Definition message-iterator-class.h:845
bt_message_iterator_class_seek_ns_from_origin_method_status(* bt_message_iterator_class_seek_ns_from_origin_method)(bt_self_message_iterator *self_message_iterator, int64_t ns_from_origin)
Message iterator "seek ns from origin" method.
Definition message-iterator-class.h:968
bt_message_iterator_class_set_method_status bt_message_iterator_class_set_finalize_method(bt_message_iterator_class *message_iterator_class, bt_message_iterator_class_finalize_method method)
Sets the optional finalization method of the message iterator class message_iterator_class to method.
bt_message_iterator_class_next_method_status(* bt_message_iterator_class_next_method)(bt_self_message_iterator *self_message_iterator, bt_message_array_const messages, uint64_t capacity, uint64_t *count)
Message iterator "next" (get next messages) method.
Definition message-iterator-class.h:836
bt_message_iterator_class_can_seek_beginning_method_status
Status codes for bt_message_iterator_class_can_seek_beginning_method.
Definition message-iterator-class.h:515
void bt_message_iterator_class_get_ref(const bt_message_iterator_class *message_iterator_class)
Increments the reference count of the message iterator class message_iterator_class.
void(* bt_message_iterator_class_finalize_method)(bt_self_message_iterator *self_message_iterator)
Message iterator finalization method.
Definition message-iterator-class.h:667
bt_message_iterator_class_next_method_status
Status codes for bt_message_iterator_class_next_method.
Definition message-iterator-class.h:731
bt_message_iterator_class_can_seek_ns_from_origin_method_status
Status codes for bt_message_iterator_class_can_seek_ns_from_origin_method.
Definition message-iterator-class.h:583
bt_message_iterator_class_set_method_status bt_message_iterator_class_set_seek_ns_from_origin_methods(bt_message_iterator_class *message_iterator_class, bt_message_iterator_class_seek_ns_from_origin_method seek_method, bt_message_iterator_class_can_seek_ns_from_origin_method can_seek_method)
Sets the optional "seek ns from origin" and "can seek ns from origin?" methods of the message iterato...
@ BT_MESSAGE_ITERATOR_CLASS_INITIALIZE_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition message-iterator-class.h:685
@ BT_MESSAGE_ITERATOR_CLASS_INITIALIZE_METHOD_STATUS_OK
Success.
Definition message-iterator-class.h:679
@ BT_MESSAGE_ITERATOR_CLASS_INITIALIZE_METHOD_STATUS_ERROR
User error.
Definition message-iterator-class.h:691
@ BT_MESSAGE_ITERATOR_CLASS_SEEK_NS_FROM_ORIGIN_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition message-iterator-class.h:926
@ BT_MESSAGE_ITERATOR_CLASS_SEEK_NS_FROM_ORIGIN_METHOD_STATUS_OK
Success.
Definition message-iterator-class.h:914
@ BT_MESSAGE_ITERATOR_CLASS_SEEK_NS_FROM_ORIGIN_METHOD_STATUS_ERROR
User error.
Definition message-iterator-class.h:932
@ BT_MESSAGE_ITERATOR_CLASS_SEEK_NS_FROM_ORIGIN_METHOD_STATUS_AGAIN
Try again.
Definition message-iterator-class.h:920
@ BT_MESSAGE_ITERATOR_CLASS_SET_METHOD_STATUS_OK
Success.
Definition message-iterator-class.h:1014
@ BT_MESSAGE_ITERATOR_CLASS_SEEK_BEGINNING_METHOD_STATUS_ERROR
User error.
Definition message-iterator-class.h:868
@ BT_MESSAGE_ITERATOR_CLASS_SEEK_BEGINNING_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition message-iterator-class.h:862
@ BT_MESSAGE_ITERATOR_CLASS_SEEK_BEGINNING_METHOD_STATUS_AGAIN
Try again.
Definition message-iterator-class.h:856
@ BT_MESSAGE_ITERATOR_CLASS_SEEK_BEGINNING_METHOD_STATUS_OK
Success.
Definition message-iterator-class.h:850
@ BT_MESSAGE_ITERATOR_CLASS_CAN_SEEK_BEGINNING_METHOD_STATUS_ERROR
User error.
Definition message-iterator-class.h:538
@ BT_MESSAGE_ITERATOR_CLASS_CAN_SEEK_BEGINNING_METHOD_STATUS_AGAIN
Try again.
Definition message-iterator-class.h:526
@ BT_MESSAGE_ITERATOR_CLASS_CAN_SEEK_BEGINNING_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition message-iterator-class.h:532
@ BT_MESSAGE_ITERATOR_CLASS_CAN_SEEK_BEGINNING_METHOD_STATUS_OK
Success.
Definition message-iterator-class.h:520
@ BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition message-iterator-class.h:754
@ BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_OK
Success.
Definition message-iterator-class.h:736
@ BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_END
End of iteration.
Definition message-iterator-class.h:742
@ BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_ERROR
User error.
Definition message-iterator-class.h:760
@ BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_AGAIN
Try again.
Definition message-iterator-class.h:748
@ BT_MESSAGE_ITERATOR_CLASS_CAN_SEEK_NS_FROM_ORIGIN_METHOD_STATUS_AGAIN
Try again.
Definition message-iterator-class.h:594
@ BT_MESSAGE_ITERATOR_CLASS_CAN_SEEK_NS_FROM_ORIGIN_METHOD_STATUS_OK
Success.
Definition message-iterator-class.h:588
@ BT_MESSAGE_ITERATOR_CLASS_CAN_SEEK_NS_FROM_ORIGIN_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition message-iterator-class.h:600
@ BT_MESSAGE_ITERATOR_CLASS_CAN_SEEK_NS_FROM_ORIGIN_METHOD_STATUS_ERROR
User error.
Definition message-iterator-class.h:606
struct bt_self_component_port_output bt_self_component_port_output
Self component output port.
Definition types.h:95
struct bt_self_message_iterator_configuration bt_self_message_iterator_configuration
Self message iterator configuration.
Definition types.h:101
struct bt_self_message_iterator bt_self_message_iterator
Self message iterator.
Definition types.h:100