ctf.fs source: add `get-metadata-info` query info action
[babeltrace.git] / plugins / ctf / fs / fs.h
index 30665a33bce881f008cf1a886d295abdd4ae5507..936cfdd0184e3c9990615e2ec8c479b7ee63648d 100644 (file)
  */
 
 #include <babeltrace/babeltrace-internal.h>
-#include <babeltrace/plugin/component.h>
+#include <babeltrace/component/component.h>
+#include "data-stream.h"
 
-#define CTF_FS_COMPONENT_NAME "fs"
 #define CTF_FS_COMPONENT_DESCRIPTION \
        "Component used to read a CTF trace located on a file system."
 
-static bool ctf_fs_debug;
+BT_HIDDEN
+extern bool ctf_fs_debug;
 
 struct bt_notification_heap;
 
@@ -59,6 +60,8 @@ struct ctf_fs_stream {
        struct bt_ctf_stream *stream;
        /* FIXME There should be many and ctf_fs_stream should not own them. */
        struct bt_ctf_notif_iter *notif_iter;
+       /* A stream is assumed to be indexed. */
+       struct index index;
        void *mmap_addr;
        /* Max length of chunk to mmap() when updating the current mapping. */
        size_t mmap_max_len;
@@ -104,6 +107,27 @@ struct ctf_fs_component {
 
 BT_HIDDEN
 enum bt_component_status ctf_fs_init(struct bt_component *source,
-               struct bt_value *params);
+               struct bt_value *params, void *init_method_data);
+
+BT_HIDDEN
+void ctf_fs_destroy(struct bt_component *component);
+
+BT_HIDDEN
+enum bt_notification_iterator_status ctf_fs_iterator_init(
+               struct bt_component *source,
+               struct bt_notification_iterator *it,
+               void *init_method_data);
+
+void ctf_fs_iterator_destroy(struct bt_notification_iterator *it);
+
+enum bt_notification_iterator_status ctf_fs_iterator_next(
+               struct bt_notification_iterator *iterator);
+
+struct bt_notification *ctf_fs_iterator_get(
+               struct bt_notification_iterator *iterator);
+
+BT_HIDDEN
+struct bt_value *ctf_fs_query_info(struct bt_component_class *comp_class,
+               const char *action, struct bt_value *params);
 
 #endif /* BABELTRACE_PLUGIN_CTF_FS_H */
This page took 0.028 seconds and 4 git commands to generate.