Re-format new C++ files
[babeltrace.git] / src / plugins / ctf / common / bfcr / bfcr.cpp
index b745dd05d120edf85314e9735448ff0de32942c2..d1495a617187dc096a46ee7b9e076d2f600fc9ce 100644 (file)
@@ -8,8 +8,8 @@
  */
 
 #define BT_COMP_LOG_SELF_COMP (bfcr->self_comp)
-#define BT_LOG_OUTPUT_LEVEL (bfcr->log_level)
-#define BT_LOG_TAG "PLUGIN/CTF/BFCR"
+#define BT_LOG_OUTPUT_LEVEL   (bfcr->log_level)
+#define BT_LOG_TAG            "PLUGIN/CTF/BFCR"
 #include "logging/comp-logging.h"
 
 #include <stdlib.h>
 #include "bfcr.hpp"
 #include "../metadata/ctf-meta.hpp"
 
-#define DIV8(_x)                       ((_x) >> 3)
-#define BYTES_TO_BITS(_x)              ((_x) * 8)
-#define BITS_TO_BYTES_FLOOR(_x)                DIV8(_x)
-#define BITS_TO_BYTES_CEIL(_x)         DIV8((_x) + 7)
-#define IN_BYTE_OFFSET(_at)            ((_at) & 7)
+#define DIV8(_x)                ((_x) >> 3)
+#define BYTES_TO_BITS(_x)       ((_x) *8)
+#define BITS_TO_BYTES_FLOOR(_x) DIV8(_x)
+#define BITS_TO_BYTES_CEIL(_x)  DIV8((_x) + 7)
+#define IN_BYTE_OFFSET(_at)     ((_at) &7)
 
 /* A visit stack entry */
-struct stack_entry {
-       /*
-        * Current class of base field, one of:
-        *
-        *   * Structure
-        *   * Array
-        *   * Sequence
-        *   * Variant
-        */
-       struct ctf_field_class *base_class;
-
-       /* Length of base field (always 1 for a variant class) */
-       int64_t base_len;
-
-       /* Index of next field to read */
-       int64_t index;
+struct stack_entry
+{
+    /*
+     * Current class of base field, one of:
+     *
+     *   * Structure
+     *   * Array
+     *   * Sequence
+     *   * Variant
+     */
+    struct ctf_field_class *base_class;
+
+    /* Length of base field (always 1 for a variant class) */
+    int64_t base_len;
+
+    /* Index of next field to read */
+    int64_t index;
 };
 
 struct bt_bfcr;
 
 /* Visit stack */
-struct stack {
-       struct bt_bfcr *bfcr;
+struct stack
+{
+    struct bt_bfcr *bfcr;
 
-       /* Entries (struct stack_entry) */
-       GArray *entries;
+    /* Entries (struct stack_entry) */
+    GArray *entries;
 
-       /* Number of active entries */
-       size_t size;
+    /* Number of active entries */
+    size_t size;
 };
 
 /* Reading states */
-enum bfcr_state {
-       BFCR_STATE_NEXT_FIELD,
-       BFCR_STATE_ALIGN_BASIC,
-       BFCR_STATE_ALIGN_COMPOUND,
-       BFCR_STATE_READ_BASIC_BEGIN,
-       BFCR_STATE_READ_BASIC_CONTINUE,
-       BFCR_STATE_DONE,
+enum bfcr_state
+{
+    BFCR_STATE_NEXT_FIELD,
+    BFCR_STATE_ALIGN_BASIC,
+    BFCR_STATE_ALIGN_COMPOUND,
+    BFCR_STATE_READ_BASIC_BEGIN,
+    BFCR_STATE_READ_BASIC_CONTINUE,
+    BFCR_STATE_DONE,
 };
 
 /* Binary class reader */
-struct bt_bfcr {
-       bt_logging_level log_level;
-
-       /* Weak */
-       bt_self_component *self_comp;
-
-       /* BFCR stack */
-       struct stack *stack;
-
-       /* Current basic field class */
-       struct ctf_field_class *cur_basic_field_class;
-
-       /* Current state */
-       enum bfcr_state state;
-
-       /*
-        * Last basic field class's byte order.
-        *
-        * This is used to detect errors since two contiguous basic
-        * classes for which the common boundary is not the boundary of
-        * a byte cannot have different byte orders.
-        *
-        * This is set to CTF_BYTE_ORDER_UNKNOWN on reset and when the last
-        * basic field class was a string class.
-        */
-       enum ctf_byte_order last_bo;
-
-       /* Current byte order (copied to last_bo after a successful read) */
-       enum ctf_byte_order cur_bo;
-
-       /* Stitch buffer infos */
-       struct {
-               /* Stitch buffer */
-               uint8_t buf[16];
-
-               /* Offset, within stitch buffer, of first bit */
-               size_t offset;
-
-               /* Length (bits) of data in stitch buffer from offset */
-               size_t at;
-       } stitch;
-
-       /* User buffer infos */
-       struct {
-               /* Address */
-               const uint8_t *addr;
-
-               /* Offset of data from address (bits) */
-               size_t offset;
-
-               /* Current position from offset (bits) */
-               size_t at;
-
-               /* Offset of offset within whole packet (bits) */
-               size_t packet_offset;
-
-               /* Data size in buffer (bits) */
-               size_t sz;
-
-               /* Buffer size (bytes) */
-               size_t buf_sz;
-       } buf;
-
-       /* User stuff */
-       struct {
-               /* Callback functions */
-               struct bt_bfcr_cbs cbs;
-
-               /* Private data */
-               void *data;
-       } user;
+struct bt_bfcr
+{
+    bt_logging_level log_level;
+
+    /* Weak */
+    bt_self_component *self_comp;
+
+    /* BFCR stack */
+    struct stack *stack;
+
+    /* Current basic field class */
+    struct ctf_field_class *cur_basic_field_class;
+
+    /* Current state */
+    enum bfcr_state state;
+
+    /*
+     * Last basic field class's byte order.
+     *
+     * This is used to detect errors since two contiguous basic
+     * classes for which the common boundary is not the boundary of
+     * a byte cannot have different byte orders.
+     *
+     * This is set to CTF_BYTE_ORDER_UNKNOWN on reset and when the last
+     * basic field class was a string class.
+     */
+    enum ctf_byte_order last_bo;
+
+    /* Current byte order (copied to last_bo after a successful read) */
+    enum ctf_byte_order cur_bo;
+
+    /* Stitch buffer infos */
+    struct
+    {
+        /* Stitch buffer */
+        uint8_t buf[16];
+
+        /* Offset, within stitch buffer, of first bit */
+        size_t offset;
+
+        /* Length (bits) of data in stitch buffer from offset */
+        size_t at;
+    } stitch;
+
+    /* User buffer infos */
+    struct
+    {
+        /* Address */
+        const uint8_t *addr;
+
+        /* Offset of data from address (bits) */
+        size_t offset;
+
+        /* Current position from offset (bits) */
+        size_t at;
+
+        /* Offset of offset within whole packet (bits) */
+        size_t packet_offset;
+
+        /* Data size in buffer (bits) */
+        size_t sz;
+
+        /* Buffer size (bytes) */
+        size_t buf_sz;
+    } buf;
+
+    /* User stuff */
+    struct
+    {
+        /* Callback functions */
+        struct bt_bfcr_cbs cbs;
+
+        /* Private data */
+        void *data;
+    } user;
 };
 
-static inline
-const char *bfcr_state_string(enum bfcr_state state)
+static inline const char *bfcr_state_string(enum bfcr_state state)
 {
-       switch (state) {
-       case BFCR_STATE_NEXT_FIELD:
-               return "NEXT_FIELD";
-       case BFCR_STATE_ALIGN_BASIC:
-               return "ALIGN_BASIC";
-       case BFCR_STATE_ALIGN_COMPOUND:
-               return "ALIGN_COMPOUND";
-       case BFCR_STATE_READ_BASIC_BEGIN:
-               return "READ_BASIC_BEGIN";
-       case BFCR_STATE_READ_BASIC_CONTINUE:
-               return "READ_BASIC_CONTINUE";
-       case BFCR_STATE_DONE:
-               return "DONE";
-       }
-
-       bt_common_abort();
+    switch (state) {
+    case BFCR_STATE_NEXT_FIELD:
+        return "NEXT_FIELD";
+    case BFCR_STATE_ALIGN_BASIC:
+        return "ALIGN_BASIC";
+    case BFCR_STATE_ALIGN_COMPOUND:
+        return "ALIGN_COMPOUND";
+    case BFCR_STATE_READ_BASIC_BEGIN:
+        return "READ_BASIC_BEGIN";
+    case BFCR_STATE_READ_BASIC_CONTINUE:
+        return "READ_BASIC_CONTINUE";
+    case BFCR_STATE_DONE:
+        return "DONE";
+    }
+
+    bt_common_abort();
 }
 
-static
-struct stack *stack_new(struct bt_bfcr *bfcr)
+static struct stack *stack_new(struct bt_bfcr *bfcr)
 {
-       struct stack *stack = NULL;
+    struct stack *stack = NULL;
 
-       stack = g_new0(struct stack, 1);
-       if (!stack) {
-               BT_COMP_LOGE_STR("Failed to allocate one stack.");
-               goto error;
-       }
+    stack = g_new0(struct stack, 1);
+    if (!stack) {
+        BT_COMP_LOGE_STR("Failed to allocate one stack.");
+        goto error;
+    }
 
-       stack->bfcr = bfcr;
-       stack->entries = g_array_new(FALSE, TRUE, sizeof(struct stack_entry));
-       if (!stack->entries) {
-               BT_COMP_LOGE_STR("Failed to allocate a GArray.");
-               goto error;
-       }
+    stack->bfcr = bfcr;
+    stack->entries = g_array_new(FALSE, TRUE, sizeof(struct stack_entry));
+    if (!stack->entries) {
+        BT_COMP_LOGE_STR("Failed to allocate a GArray.");
+        goto error;
+    }
 
-       BT_COMP_LOGD("Created stack: addr=%p", stack);
-       return stack;
+    BT_COMP_LOGD("Created stack: addr=%p", stack);
+    return stack;
 
 error:
-       g_free(stack);
-       return NULL;
+    g_free(stack);
+    return NULL;
 }
 
-static
-void stack_destroy(struct stack *stack)
+static void stack_destroy(struct stack *stack)
 {
-       struct bt_bfcr *bfcr;
+    struct bt_bfcr *bfcr;
 
-       if (!stack) {
-               return;
-       }
+    if (!stack) {
+        return;
+    }
 
-       bfcr = stack->bfcr;
-       BT_COMP_LOGD("Destroying stack: addr=%p", stack);
+    bfcr = stack->bfcr;
+    BT_COMP_LOGD("Destroying stack: addr=%p", stack);
 
-       if (stack->entries) {
-               g_array_free(stack->entries, TRUE);
-       }
+    if (stack->entries) {
+        g_array_free(stack->entries, TRUE);
+    }
 
-       g_free(stack);
+    g_free(stack);
 }
 
-static
-int stack_push(struct stack *stack, struct ctf_field_class *base_class,
-       size_t base_len)
+static int stack_push(struct stack *stack, struct ctf_field_class *base_class, size_t base_len)
 {
-       struct stack_entry *entry;
-       struct bt_bfcr *bfcr;
-
-       BT_ASSERT_DBG(stack);
-       BT_ASSERT_DBG(base_class);
-       bfcr = stack->bfcr;
-       BT_COMP_LOGT("Pushing field class on stack: stack-addr=%p, "
-               "fc-addr=%p, fc-type=%d, base-length=%zu, "
-               "stack-size-before=%zu, stack-size-after=%zu",
-               stack, base_class, base_class->type,
-               base_len, stack->size, stack->size + 1);
-
-       if (stack->entries->len == stack->size) {
-               g_array_set_size(stack->entries, stack->size + 1);
-       }
-
-       entry = &g_array_index(stack->entries, struct stack_entry, stack->size);
-       entry->base_class = base_class;
-       entry->base_len = base_len;
-       entry->index = 0;
-       stack->size++;
-       return 0;
+    struct stack_entry *entry;
+    struct bt_bfcr *bfcr;
+
+    BT_ASSERT_DBG(stack);
+    BT_ASSERT_DBG(base_class);
+    bfcr = stack->bfcr;
+    BT_COMP_LOGT("Pushing field class on stack: stack-addr=%p, "
+                 "fc-addr=%p, fc-type=%d, base-length=%zu, "
+                 "stack-size-before=%zu, stack-size-after=%zu",
+                 stack, base_class, base_class->type, base_len, stack->size, stack->size + 1);
+
+    if (stack->entries->len == stack->size) {
+        g_array_set_size(stack->entries, stack->size + 1);
+    }
+
+    entry = &g_array_index(stack->entries, struct stack_entry, stack->size);
+    entry->base_class = base_class;
+    entry->base_len = base_len;
+    entry->index = 0;
+    stack->size++;
+    return 0;
 }
 
-static inline
-int64_t get_compound_field_class_length(struct bt_bfcr *bfcr,
-               struct ctf_field_class *fc)
+static inline int64_t get_compound_field_class_length(struct bt_bfcr *bfcr,
+                                                      struct ctf_field_class *fc)
 {
-       int64_t length;
-
-       switch (fc->type) {
-       case CTF_FIELD_CLASS_TYPE_STRUCT:
-       {
-               ctf_field_class_struct *struct_fc = ctf_field_class_as_struct(fc);
-
-               length = (int64_t) struct_fc->members->len;
-               break;
-       }
-       case CTF_FIELD_CLASS_TYPE_VARIANT:
-       {
-               /* Variant field classes always "contain" a single class */
-               length = 1;
-               break;
-       }
-       case CTF_FIELD_CLASS_TYPE_ARRAY:
-       {
-               struct ctf_field_class_array *array_fc = ctf_field_class_as_array(fc);
-
-               length = (int64_t) array_fc->length;
-               break;
-       }
-       case CTF_FIELD_CLASS_TYPE_SEQUENCE:
-               length = bfcr->user.cbs.query.get_sequence_length(fc,
-                       bfcr->user.data);
-               break;
-       default:
-               bt_common_abort();
-       }
-
-       return length;
+    int64_t length;
+
+    switch (fc->type) {
+    case CTF_FIELD_CLASS_TYPE_STRUCT:
+    {
+        ctf_field_class_struct *struct_fc = ctf_field_class_as_struct(fc);
+
+        length = (int64_t) struct_fc->members->len;
+        break;
+    }
+    case CTF_FIELD_CLASS_TYPE_VARIANT:
+    {
+        /* Variant field classes always "contain" a single class */
+        length = 1;
+        break;
+    }
+    case CTF_FIELD_CLASS_TYPE_ARRAY:
+    {
+        struct ctf_field_class_array *array_fc = ctf_field_class_as_array(fc);
+
+        length = (int64_t) array_fc->length;
+        break;
+    }
+    case CTF_FIELD_CLASS_TYPE_SEQUENCE:
+        length = bfcr->user.cbs.query.get_sequence_length(fc, bfcr->user.data);
+        break;
+    default:
+        bt_common_abort();
+    }
+
+    return length;
 }
 
-static
-int stack_push_with_len(struct bt_bfcr *bfcr, struct ctf_field_class *base_class)
+static int stack_push_with_len(struct bt_bfcr *bfcr, struct ctf_field_class *base_class)
 {
-       int ret;
-       int64_t length = get_compound_field_class_length(bfcr, base_class);
+    int ret;
+    int64_t length = get_compound_field_class_length(bfcr, base_class);
 
-       if (length < 0) {
-               BT_COMP_LOGW("Cannot get compound field class's field count: "
-                       "bfcr-addr=%p, fc-addr=%p, fc-type=%d",
-                       bfcr, base_class, base_class->type);
-               ret = BT_BFCR_STATUS_ERROR;
-               goto end;
-       }
+    if (length < 0) {
+        BT_COMP_LOGW("Cannot get compound field class's field count: "
+                     "bfcr-addr=%p, fc-addr=%p, fc-type=%d",
+                     bfcr, base_class, base_class->type);
+        ret = BT_BFCR_STATUS_ERROR;
+        goto end;
+    }
 
-       ret = stack_push(bfcr->stack, base_class, (size_t) length);
+    ret = stack_push(bfcr->stack, base_class, (size_t) length);
 
 end:
-       return ret;
+    return ret;
 }
 
-static inline
-unsigned int stack_size(struct stack *stack)
+static inline unsigned int stack_size(struct stack *stack)
 {
-       BT_ASSERT_DBG(stack);
-       return stack->size;
+    BT_ASSERT_DBG(stack);
+    return stack->size;
 }
 
-static
-void stack_pop(struct stack *stack)
+static void stack_pop(struct stack *stack)
 {
-       struct bt_bfcr *bfcr;
-
-       BT_ASSERT_DBG(stack);
-       BT_ASSERT_DBG(stack_size(stack));
-       bfcr = stack->bfcr;
-       BT_COMP_LOGT("Popping from stack: "
-               "stack-addr=%p, stack-size-before=%u, stack-size-after=%u",
-               stack, stack->entries->len, stack->entries->len - 1);
-       stack->size--;
+    struct bt_bfcr *bfcr;
+
+    BT_ASSERT_DBG(stack);
+    BT_ASSERT_DBG(stack_size(stack));
+    bfcr = stack->bfcr;
+    BT_COMP_LOGT("Popping from stack: "
+                 "stack-addr=%p, stack-size-before=%u, stack-size-after=%u",
+                 stack, stack->entries->len, stack->entries->len - 1);
+    stack->size--;
 }
 
-static inline
-bool stack_empty(struct stack *stack)
+static inline bool stack_empty(struct stack *stack)
 {
-       return stack_size(stack) == 0;
+    return stack_size(stack) == 0;
 }
 
-static
-void stack_clear(struct stack *stack)
+static void stack_clear(struct stack *stack)
 {
-       BT_ASSERT_DBG(stack);
-       stack->size = 0;
+    BT_ASSERT_DBG(stack);
+    stack->size = 0;
 }
 
-static inline
-struct stack_entry *stack_top(struct stack *stack)
+static inline struct stack_entry *stack_top(struct stack *stack)
 {
-       BT_ASSERT_DBG(stack);
-       BT_ASSERT_DBG(stack_size(stack));
-       return &g_array_index(stack->entries, struct stack_entry,
-               stack->size - 1);
+    BT_ASSERT_DBG(stack);
+    BT_ASSERT_DBG(stack_size(stack));
+    return &g_array_index(stack->entries, struct stack_entry, stack->size - 1);
 }
 
-static inline
-size_t available_bits(struct bt_bfcr *bfcr)
+static inline size_t available_bits(struct bt_bfcr *bfcr)
 {
-       return bfcr->buf.sz - bfcr->buf.at;
+    return bfcr->buf.sz - bfcr->buf.at;
 }
 
-static inline
-void consume_bits(struct bt_bfcr *bfcr, size_t incr)
+static inline void consume_bits(struct bt_bfcr *bfcr, size_t incr)
 {
-       BT_COMP_LOGT("Advancing cursor: bfcr-addr=%p, cur-before=%zu, cur-after=%zu",
-               bfcr, bfcr->buf.at, bfcr->buf.at + incr);
-       bfcr->buf.at += incr;
+    BT_COMP_LOGT("Advancing cursor: bfcr-addr=%p, cur-before=%zu, cur-after=%zu", bfcr,
+                 bfcr->buf.at, bfcr->buf.at + incr);
+    bfcr->buf.at += incr;
 }
 
-static inline
-bool has_enough_bits(struct bt_bfcr *bfcr, size_t sz)
+static inline bool has_enough_bits(struct bt_bfcr *bfcr, size_t sz)
 {
-       return available_bits(bfcr) >= sz;
+    return available_bits(bfcr) >= sz;
 }
 
-static inline
-bool at_least_one_bit_left(struct bt_bfcr *bfcr)
+static inline bool at_least_one_bit_left(struct bt_bfcr *bfcr)
 {
-       return has_enough_bits(bfcr, 1);
+    return has_enough_bits(bfcr, 1);
 }
 
-static inline
-size_t packet_at(struct bt_bfcr *bfcr)
+static inline size_t packet_at(struct bt_bfcr *bfcr)
 {
-       return bfcr->buf.packet_offset + bfcr->buf.at;
+    return bfcr->buf.packet_offset + bfcr->buf.at;
 }
 
-static inline
-size_t buf_at_from_addr(struct bt_bfcr *bfcr)
+static inline size_t buf_at_from_addr(struct bt_bfcr *bfcr)
 {
-       /*
-        * Considering this:
-        *
-        *     ====== offset ===== (17)
-        *
-        *     xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
-        *     ^
-        *     addr (0)           ==== at ==== (12)
-        *
-        * We want this:
-        *
-        *     =============================== (29)
-        */
-       return bfcr->buf.offset + bfcr->buf.at;
+    /*
+     * Considering this:
+     *
+     *     ====== offset ===== (17)
+     *
+     *     xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
+     *     ^
+     *     addr (0)           ==== at ==== (12)
+     *
+     * We want this:
+     *
+     *     =============================== (29)
+     */
+    return bfcr->buf.offset + bfcr->buf.at;
 }
 
-static
-void stitch_reset(struct bt_bfcr *bfcr)
+static void stitch_reset(struct bt_bfcr *bfcr)
 {
-       bfcr->stitch.offset = 0;
-       bfcr->stitch.at = 0;
+    bfcr->stitch.offset = 0;
+    bfcr->stitch.at = 0;
 }
 
-static inline
-size_t stitch_at_from_addr(struct bt_bfcr *bfcr)
+static inline size_t stitch_at_from_addr(struct bt_bfcr *bfcr)
 {
-       return bfcr->stitch.offset + bfcr->stitch.at;
+    return bfcr->stitch.offset + bfcr->stitch.at;
 }
 
-static
-void stitch_append_from_buf(struct bt_bfcr *bfcr, size_t sz)
+static void stitch_append_from_buf(struct bt_bfcr *bfcr, size_t sz)
 {
-       size_t stitch_byte_at;
-       size_t buf_byte_at;
-       size_t nb_bytes;
-
-       if (sz == 0) {
-               return;
-       }
-
-       stitch_byte_at =
-               BITS_TO_BYTES_FLOOR(stitch_at_from_addr(bfcr));
-       buf_byte_at = BITS_TO_BYTES_FLOOR(buf_at_from_addr(bfcr));
-       nb_bytes = BITS_TO_BYTES_CEIL(sz);
-       BT_ASSERT(nb_bytes > 0);
-       BT_ASSERT(bfcr->buf.addr);
-       memcpy(&bfcr->stitch.buf[stitch_byte_at], &bfcr->buf.addr[buf_byte_at],
-               nb_bytes);
-       bfcr->stitch.at += sz;
-       consume_bits(bfcr, sz);
+    size_t stitch_byte_at;
+    size_t buf_byte_at;
+    size_t nb_bytes;
+
+    if (sz == 0) {
+        return;
+    }
+
+    stitch_byte_at = BITS_TO_BYTES_FLOOR(stitch_at_from_addr(bfcr));
+    buf_byte_at = BITS_TO_BYTES_FLOOR(buf_at_from_addr(bfcr));
+    nb_bytes = BITS_TO_BYTES_CEIL(sz);
+    BT_ASSERT(nb_bytes > 0);
+    BT_ASSERT(bfcr->buf.addr);
+    memcpy(&bfcr->stitch.buf[stitch_byte_at], &bfcr->buf.addr[buf_byte_at], nb_bytes);
+    bfcr->stitch.at += sz;
+    consume_bits(bfcr, sz);
 }
 
-static
-void stitch_append_from_remaining_buf(struct bt_bfcr *bfcr)
+static void stitch_append_from_remaining_buf(struct bt_bfcr *bfcr)
 {
-       stitch_append_from_buf(bfcr, available_bits(bfcr));
+    stitch_append_from_buf(bfcr, available_bits(bfcr));
 }
 
-static
-void stitch_set_from_remaining_buf(struct bt_bfcr *bfcr)
+static void stitch_set_from_remaining_buf(struct bt_bfcr *bfcr)
 {
-       stitch_reset(bfcr);
-       bfcr->stitch.offset = IN_BYTE_OFFSET(buf_at_from_addr(bfcr));
-       stitch_append_from_remaining_buf(bfcr);
+    stitch_reset(bfcr);
+    bfcr->stitch.offset = IN_BYTE_OFFSET(buf_at_from_addr(bfcr));
+    stitch_append_from_remaining_buf(bfcr);
 }
 
-static inline
-void read_unsigned_bitfield(struct bt_bfcr *bfcr, const uint8_t *buf, size_t at,
-               unsigned int field_size, enum ctf_byte_order bo,
-               uint64_t *v)
+static inline void read_unsigned_bitfield(struct bt_bfcr *bfcr, const uint8_t *buf, size_t at,
+                                          unsigned int field_size, enum ctf_byte_order bo,
+                                          uint64_t *v)
 {
-       switch (bo) {
-       case CTF_BYTE_ORDER_BIG:
-               bt_bitfield_read_be(buf, uint8_t, at, field_size, v);
-               break;
-       case CTF_BYTE_ORDER_LITTLE:
-               bt_bitfield_read_le(buf, uint8_t, at, field_size, v);
-               break;
-       default:
-               bt_common_abort();
-       }
-
-       BT_COMP_LOGT("Read unsigned bit array: cur=%zu, size=%u, "
-               "bo=%d, val=%" PRIu64, at, field_size, bo, *v);
+    switch (bo) {
+    case CTF_BYTE_ORDER_BIG:
+        bt_bitfield_read_be(buf, uint8_t, at, field_size, v);
+        break;
+    case CTF_BYTE_ORDER_LITTLE:
+        bt_bitfield_read_le(buf, uint8_t, at, field_size, v);
+        break;
+    default:
+        bt_common_abort();
+    }
+
+    BT_COMP_LOGT("Read unsigned bit array: cur=%zu, size=%u, "
+                 "bo=%d, val=%" PRIu64,
+                 at, field_size, bo, *v);
 }
 
-static inline
-void read_signed_bitfield(struct bt_bfcr *bfcr, const uint8_t *buf, size_t at,
-               unsigned int field_size, enum ctf_byte_order bo, int64_t *v)
+static inline void read_signed_bitfield(struct bt_bfcr *bfcr, const uint8_t *buf, size_t at,
+                                        unsigned int field_size, enum ctf_byte_order bo, int64_t *v)
 {
-       switch (bo) {
-       case CTF_BYTE_ORDER_BIG:
-               bt_bitfield_read_be(buf, uint8_t, at, field_size, v);
-               break;
-       case CTF_BYTE_ORDER_LITTLE:
-               bt_bitfield_read_le(buf, uint8_t, at, field_size, v);
-               break;
-       default:
-               bt_common_abort();
-       }
-
-       BT_COMP_LOGT("Read signed bit array: cur=%zu, size=%u, "
-               "bo=%d, val=%" PRId64, at, field_size, bo, *v);
+    switch (bo) {
+    case CTF_BYTE_ORDER_BIG:
+        bt_bitfield_read_be(buf, uint8_t, at, field_size, v);
+        break;
+    case CTF_BYTE_ORDER_LITTLE:
+        bt_bitfield_read_le(buf, uint8_t, at, field_size, v);
+        break;
+    default:
+        bt_common_abort();
+    }
+
+    BT_COMP_LOGT("Read signed bit array: cur=%zu, size=%u, "
+                 "bo=%d, val=%" PRId64,
+                 at, field_size, bo, *v);
 }
 
-typedef enum bt_bfcr_status (* read_basic_and_call_cb_t)(struct bt_bfcr *,
-               const uint8_t *, size_t);
+typedef enum bt_bfcr_status (*read_basic_and_call_cb_t)(struct bt_bfcr *, const uint8_t *, size_t);
 
-static inline
-enum bt_bfcr_status validate_contiguous_bo(struct bt_bfcr *bfcr,
-               enum ctf_byte_order next_bo)
+static inline enum bt_bfcr_status validate_contiguous_bo(struct bt_bfcr *bfcr,
+                                                         enum ctf_byte_order next_bo)
 {
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-
-       /* Always valid when at a byte boundary */
-       if (packet_at(bfcr) % 8 == 0) {
-               goto end;
-       }
-
-       /* Always valid if last byte order is unknown */
-       if (bfcr->last_bo == CTF_BYTE_ORDER_UNKNOWN) {
-               goto end;
-       }
-
-       /* Always valid if next byte order is unknown */
-       if (next_bo == CTF_BYTE_ORDER_UNKNOWN) {
-               goto end;
-       }
-
-       /* Make sure last byte order is compatible with the next byte order */
-       switch (bfcr->last_bo) {
-       case CTF_BYTE_ORDER_BIG:
-               if (next_bo != CTF_BYTE_ORDER_BIG) {
-                       status = BT_BFCR_STATUS_ERROR;
-               }
-               break;
-       case CTF_BYTE_ORDER_LITTLE:
-               if (next_bo != CTF_BYTE_ORDER_LITTLE) {
-                       status = BT_BFCR_STATUS_ERROR;
-               }
-               break;
-       default:
-               status = BT_BFCR_STATUS_ERROR;
-       }
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+
+    /* Always valid when at a byte boundary */
+    if (packet_at(bfcr) % 8 == 0) {
+        goto end;
+    }
+
+    /* Always valid if last byte order is unknown */
+    if (bfcr->last_bo == CTF_BYTE_ORDER_UNKNOWN) {
+        goto end;
+    }
+
+    /* Always valid if next byte order is unknown */
+    if (next_bo == CTF_BYTE_ORDER_UNKNOWN) {
+        goto end;
+    }
+
+    /* Make sure last byte order is compatible with the next byte order */
+    switch (bfcr->last_bo) {
+    case CTF_BYTE_ORDER_BIG:
+        if (next_bo != CTF_BYTE_ORDER_BIG) {
+            status = BT_BFCR_STATUS_ERROR;
+        }
+        break;
+    case CTF_BYTE_ORDER_LITTLE:
+        if (next_bo != CTF_BYTE_ORDER_LITTLE) {
+            status = BT_BFCR_STATUS_ERROR;
+        }
+        break;
+    default:
+        status = BT_BFCR_STATUS_ERROR;
+    }
 
 end:
-       if (status < 0) {
-               BT_COMP_LOGW("Cannot read bit array: two different byte orders not at a byte boundary: "
-                       "bfcr-addr=%p, last-bo=%d, next-bo=%d",
-                       bfcr, bfcr->last_bo, next_bo);
-       }
+    if (status < 0) {
+        BT_COMP_LOGW("Cannot read bit array: two different byte orders not at a byte boundary: "
+                     "bfcr-addr=%p, last-bo=%d, next-bo=%d",
+                     bfcr, bfcr->last_bo, next_bo);
+    }
 
-       return status;
+    return status;
 }
 
-static
-enum bt_bfcr_status read_basic_float_and_call_cb(struct bt_bfcr *bfcr,
-               const uint8_t *buf, size_t at)
+static enum bt_bfcr_status read_basic_float_and_call_cb(struct bt_bfcr *bfcr, const uint8_t *buf,
+                                                        size_t at)
 {
-       double dblval;
-       unsigned int field_size;
-       enum ctf_byte_order bo;
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-       ctf_field_class_float *fc = ctf_field_class_as_float(bfcr->cur_basic_field_class);
-
-       BT_ASSERT_DBG(fc);
-       field_size = fc->base.size;
-       bo = fc->base.byte_order;
-       bfcr->cur_bo = bo;
-
-       switch (field_size) {
-       case 32:
-       {
-               uint64_t v;
-               union {
-                       uint32_t u;
-                       float f;
-               } f32;
-
-               read_unsigned_bitfield(bfcr, buf, at, field_size, bo, &v);
-               f32.u = (uint32_t) v;
-               dblval = (double) f32.f;
-               break;
-       }
-       case 64:
-       {
-               union {
-                       uint64_t u;
-                       double d;
-               } f64;
-
-               read_unsigned_bitfield(bfcr, buf, at, field_size, bo, &f64.u);
-               dblval = f64.d;
-               break;
-       }
-       default:
-               /* Only 32-bit and 64-bit fields are supported currently */
-               bt_common_abort();
-       }
-
-       BT_COMP_LOGT("Read floating point number value: bfcr=%p, cur=%zu, val=%f",
-               bfcr, at, dblval);
-
-       if (bfcr->user.cbs.classes.floating_point) {
-               BT_COMP_LOGT("Calling user function (floating point number).");
-               status = bfcr->user.cbs.classes.floating_point(dblval,
-                       bfcr->cur_basic_field_class, bfcr->user.data);
-               BT_COMP_LOGT("User function returned: status=%s",
-                       bt_bfcr_status_string(status));
-               if (status != BT_BFCR_STATUS_OK) {
-                       BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s",
-                               bfcr, bt_bfcr_status_string(status));
-               }
-       }
-
-       return status;
+    double dblval;
+    unsigned int field_size;
+    enum ctf_byte_order bo;
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+    ctf_field_class_float *fc = ctf_field_class_as_float(bfcr->cur_basic_field_class);
+
+    BT_ASSERT_DBG(fc);
+    field_size = fc->base.size;
+    bo = fc->base.byte_order;
+    bfcr->cur_bo = bo;
+
+    switch (field_size) {
+    case 32:
+    {
+        uint64_t v;
+        union
+        {
+            uint32_t u;
+            float f;
+        } f32;
+
+        read_unsigned_bitfield(bfcr, buf, at, field_size, bo, &v);
+        f32.u = (uint32_t) v;
+        dblval = (double) f32.f;
+        break;
+    }
+    case 64:
+    {
+        union
+        {
+            uint64_t u;
+            double d;
+        } f64;
+
+        read_unsigned_bitfield(bfcr, buf, at, field_size, bo, &f64.u);
+        dblval = f64.d;
+        break;
+    }
+    default:
+        /* Only 32-bit and 64-bit fields are supported currently */
+        bt_common_abort();
+    }
+
+    BT_COMP_LOGT("Read floating point number value: bfcr=%p, cur=%zu, val=%f", bfcr, at, dblval);
+
+    if (bfcr->user.cbs.classes.floating_point) {
+        BT_COMP_LOGT("Calling user function (floating point number).");
+        status = bfcr->user.cbs.classes.floating_point(dblval, bfcr->cur_basic_field_class,
+                                                       bfcr->user.data);
+        BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+        if (status != BT_BFCR_STATUS_OK) {
+            BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s", bfcr,
+                         bt_bfcr_status_string(status));
+        }
+    }
+
+    return status;
 }
 
-static inline
-enum bt_bfcr_status read_basic_int_and_call_cb(struct bt_bfcr *bfcr,
-               const uint8_t *buf, size_t at)
+static inline enum bt_bfcr_status read_basic_int_and_call_cb(struct bt_bfcr *bfcr,
+                                                             const uint8_t *buf, size_t at)
 {
-       unsigned int field_size;
-       enum ctf_byte_order bo;
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-       ctf_field_class_int *fc = ctf_field_class_as_int(bfcr->cur_basic_field_class);
-
-       field_size = fc->base.size;
-       bo = fc->base.byte_order;
-
-       /*
-        * Update current byte order now because we could be reading
-        * the integer value of an enumeration class, and thus we know
-        * here the actual supporting integer class's byte order.
-        */
-       bfcr->cur_bo = bo;
-
-       if (fc->is_signed) {
-               int64_t v;
-
-               read_signed_bitfield(bfcr, buf, at, field_size, bo, &v);
-
-               if (bfcr->user.cbs.classes.signed_int) {
-                       BT_COMP_LOGT("Calling user function (signed integer).");
-                       status = bfcr->user.cbs.classes.signed_int(v,
-                               bfcr->cur_basic_field_class, bfcr->user.data);
-                       BT_COMP_LOGT("User function returned: status=%s",
-                               bt_bfcr_status_string(status));
-                       if (status != BT_BFCR_STATUS_OK) {
-                               BT_COMP_LOGW("User function failed: "
-                                       "bfcr-addr=%p, status=%s",
-                                       bfcr, bt_bfcr_status_string(status));
-                       }
-               }
-       } else {
-               uint64_t v;
-
-               read_unsigned_bitfield(bfcr, buf, at, field_size, bo, &v);
-
-               if (bfcr->user.cbs.classes.unsigned_int) {
-                       BT_COMP_LOGT("Calling user function (unsigned integer).");
-                       status = bfcr->user.cbs.classes.unsigned_int(v,
-                               bfcr->cur_basic_field_class, bfcr->user.data);
-                       BT_COMP_LOGT("User function returned: status=%s",
-                               bt_bfcr_status_string(status));
-                       if (status != BT_BFCR_STATUS_OK) {
-                               BT_COMP_LOGW("User function failed: "
-                                       "bfcr-addr=%p, status=%s",
-                                       bfcr, bt_bfcr_status_string(status));
-                       }
-               }
-       }
-
-       return status;
+    unsigned int field_size;
+    enum ctf_byte_order bo;
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+    ctf_field_class_int *fc = ctf_field_class_as_int(bfcr->cur_basic_field_class);
+
+    field_size = fc->base.size;
+    bo = fc->base.byte_order;
+
+    /*
+     * Update current byte order now because we could be reading
+     * the integer value of an enumeration class, and thus we know
+     * here the actual supporting integer class's byte order.
+     */
+    bfcr->cur_bo = bo;
+
+    if (fc->is_signed) {
+        int64_t v;
+
+        read_signed_bitfield(bfcr, buf, at, field_size, bo, &v);
+
+        if (bfcr->user.cbs.classes.signed_int) {
+            BT_COMP_LOGT("Calling user function (signed integer).");
+            status =
+                bfcr->user.cbs.classes.signed_int(v, bfcr->cur_basic_field_class, bfcr->user.data);
+            BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+            if (status != BT_BFCR_STATUS_OK) {
+                BT_COMP_LOGW("User function failed: "
+                             "bfcr-addr=%p, status=%s",
+                             bfcr, bt_bfcr_status_string(status));
+            }
+        }
+    } else {
+        uint64_t v;
+
+        read_unsigned_bitfield(bfcr, buf, at, field_size, bo, &v);
+
+        if (bfcr->user.cbs.classes.unsigned_int) {
+            BT_COMP_LOGT("Calling user function (unsigned integer).");
+            status = bfcr->user.cbs.classes.unsigned_int(v, bfcr->cur_basic_field_class,
+                                                         bfcr->user.data);
+            BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+            if (status != BT_BFCR_STATUS_OK) {
+                BT_COMP_LOGW("User function failed: "
+                             "bfcr-addr=%p, status=%s",
+                             bfcr, bt_bfcr_status_string(status));
+            }
+        }
+    }
+
+    return status;
 }
 
-static inline
-enum bt_bfcr_status read_bit_array_class_and_call_continue(struct bt_bfcr *bfcr,
-               read_basic_and_call_cb_t read_basic_and_call_cb)
+static inline enum bt_bfcr_status
+read_bit_array_class_and_call_continue(struct bt_bfcr *bfcr,
+                                       read_basic_and_call_cb_t read_basic_and_call_cb)
 {
-       size_t available;
-       size_t needed_bits;
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-       ctf_field_class_bit_array *fc = ctf_field_class_as_bit_array(bfcr->cur_basic_field_class);
-
-       if (!at_least_one_bit_left(bfcr)) {
-               BT_COMP_LOGT("Reached end of data: bfcr-addr=%p", bfcr);
-               status = BT_BFCR_STATUS_EOF;
-               goto end;
-       }
-
-       available = available_bits(bfcr);
-       needed_bits = fc->size - bfcr->stitch.at;
-       BT_COMP_LOGT("Continuing basic field decoding: "
-               "bfcr-addr=%p, field-size=%u, needed-size=%zu, "
-               "available-size=%zu",
-               bfcr, fc->size, needed_bits, available);
-       if (needed_bits <= available) {
-               /* We have all the bits; append to stitch, then decode */
-               stitch_append_from_buf(bfcr, needed_bits);
-               status = read_basic_and_call_cb(bfcr, bfcr->stitch.buf,
-                       bfcr->stitch.offset);
-               if (status != BT_BFCR_STATUS_OK) {
-                       BT_COMP_LOGW("Cannot read basic field: "
-                               "bfcr-addr=%p, fc-addr=%p, status=%s",
-                               bfcr, bfcr->cur_basic_field_class,
-                               bt_bfcr_status_string(status));
-                       goto end;
-               }
-
-               if (stack_empty(bfcr->stack)) {
-                       /* Root is a basic class */
-                       bfcr->state = BFCR_STATE_DONE;
-               } else {
-                       /* Go to next field */
-                       stack_top(bfcr->stack)->index++;
-                       bfcr->state = BFCR_STATE_NEXT_FIELD;
-                       bfcr->last_bo = bfcr->cur_bo;
-               }
-               goto end;
-       }
-
-       /* We are here; it means we don't have enough data to decode this */
-       BT_COMP_LOGT_STR("Not enough data to read the next basic field: appending to stitch buffer.");
-       stitch_append_from_remaining_buf(bfcr);
-       status = BT_BFCR_STATUS_EOF;
+    size_t available;
+    size_t needed_bits;
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+    ctf_field_class_bit_array *fc = ctf_field_class_as_bit_array(bfcr->cur_basic_field_class);
+
+    if (!at_least_one_bit_left(bfcr)) {
+        BT_COMP_LOGT("Reached end of data: bfcr-addr=%p", bfcr);
+        status = BT_BFCR_STATUS_EOF;
+        goto end;
+    }
+
+    available = available_bits(bfcr);
+    needed_bits = fc->size - bfcr->stitch.at;
+    BT_COMP_LOGT("Continuing basic field decoding: "
+                 "bfcr-addr=%p, field-size=%u, needed-size=%zu, "
+                 "available-size=%zu",
+                 bfcr, fc->size, needed_bits, available);
+    if (needed_bits <= available) {
+        /* We have all the bits; append to stitch, then decode */
+        stitch_append_from_buf(bfcr, needed_bits);
+        status = read_basic_and_call_cb(bfcr, bfcr->stitch.buf, bfcr->stitch.offset);
+        if (status != BT_BFCR_STATUS_OK) {
+            BT_COMP_LOGW("Cannot read basic field: "
+                         "bfcr-addr=%p, fc-addr=%p, status=%s",
+                         bfcr, bfcr->cur_basic_field_class, bt_bfcr_status_string(status));
+            goto end;
+        }
+
+        if (stack_empty(bfcr->stack)) {
+            /* Root is a basic class */
+            bfcr->state = BFCR_STATE_DONE;
+        } else {
+            /* Go to next field */
+            stack_top(bfcr->stack)->index++;
+            bfcr->state = BFCR_STATE_NEXT_FIELD;
+            bfcr->last_bo = bfcr->cur_bo;
+        }
+        goto end;
+    }
+
+    /* We are here; it means we don't have enough data to decode this */
+    BT_COMP_LOGT_STR("Not enough data to read the next basic field: appending to stitch buffer.");
+    stitch_append_from_remaining_buf(bfcr);
+    status = BT_BFCR_STATUS_EOF;
 
 end:
-       return status;
+    return status;
 }
 
-static inline
-enum bt_bfcr_status read_bit_array_class_and_call_begin(struct bt_bfcr *bfcr,
-               read_basic_and_call_cb_t read_basic_and_call_cb)
+static inline enum bt_bfcr_status
+read_bit_array_class_and_call_begin(struct bt_bfcr *bfcr,
+                                    read_basic_and_call_cb_t read_basic_and_call_cb)
 {
-       size_t available;
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-       ctf_field_class_bit_array *fc = ctf_field_class_as_bit_array(bfcr->cur_basic_field_class);
-
-       if (!at_least_one_bit_left(bfcr)) {
-               BT_COMP_LOGT("Reached end of data: bfcr-addr=%p", bfcr);
-               status = BT_BFCR_STATUS_EOF;
-               goto end;
-       }
-
-       status = validate_contiguous_bo(bfcr, fc->byte_order);
-       if (status != BT_BFCR_STATUS_OK) {
-               /* validate_contiguous_bo() logs errors */
-               goto end;
-       }
-
-       available = available_bits(bfcr);
-
-       if (fc->size <= available) {
-               /* We have all the bits; decode and set now */
-               BT_ASSERT_DBG(bfcr->buf.addr);
-               status = read_basic_and_call_cb(bfcr, bfcr->buf.addr,
-                       buf_at_from_addr(bfcr));
-               if (status != BT_BFCR_STATUS_OK) {
-                       BT_COMP_LOGW("Cannot read basic field: "
-                               "bfcr-addr=%p, fc-addr=%p, status=%s",
-                               bfcr, bfcr->cur_basic_field_class,
-                               bt_bfcr_status_string(status));
-                       goto end;
-               }
-
-               consume_bits(bfcr, fc->size);
-
-               if (stack_empty(bfcr->stack)) {
-                       /* Root is a basic class */
-                       bfcr->state = BFCR_STATE_DONE;
-               } else {
-                       /* Go to next field */
-                       stack_top(bfcr->stack)->index++;
-                       bfcr->state = BFCR_STATE_NEXT_FIELD;
-                       bfcr->last_bo = bfcr->cur_bo;
-               }
-
-               goto end;
-       }
-
-       /* We are here; it means we don't have enough data to decode this */
-       BT_COMP_LOGT_STR("Not enough data to read the next basic field: setting stitch buffer.");
-       stitch_set_from_remaining_buf(bfcr);
-       bfcr->state = BFCR_STATE_READ_BASIC_CONTINUE;
-       status = BT_BFCR_STATUS_EOF;
+    size_t available;
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+    ctf_field_class_bit_array *fc = ctf_field_class_as_bit_array(bfcr->cur_basic_field_class);
+
+    if (!at_least_one_bit_left(bfcr)) {
+        BT_COMP_LOGT("Reached end of data: bfcr-addr=%p", bfcr);
+        status = BT_BFCR_STATUS_EOF;
+        goto end;
+    }
+
+    status = validate_contiguous_bo(bfcr, fc->byte_order);
+    if (status != BT_BFCR_STATUS_OK) {
+        /* validate_contiguous_bo() logs errors */
+        goto end;
+    }
+
+    available = available_bits(bfcr);
+
+    if (fc->size <= available) {
+        /* We have all the bits; decode and set now */
+        BT_ASSERT_DBG(bfcr->buf.addr);
+        status = read_basic_and_call_cb(bfcr, bfcr->buf.addr, buf_at_from_addr(bfcr));
+        if (status != BT_BFCR_STATUS_OK) {
+            BT_COMP_LOGW("Cannot read basic field: "
+                         "bfcr-addr=%p, fc-addr=%p, status=%s",
+                         bfcr, bfcr->cur_basic_field_class, bt_bfcr_status_string(status));
+            goto end;
+        }
+
+        consume_bits(bfcr, fc->size);
+
+        if (stack_empty(bfcr->stack)) {
+            /* Root is a basic class */
+            bfcr->state = BFCR_STATE_DONE;
+        } else {
+            /* Go to next field */
+            stack_top(bfcr->stack)->index++;
+            bfcr->state = BFCR_STATE_NEXT_FIELD;
+            bfcr->last_bo = bfcr->cur_bo;
+        }
+
+        goto end;
+    }
+
+    /* We are here; it means we don't have enough data to decode this */
+    BT_COMP_LOGT_STR("Not enough data to read the next basic field: setting stitch buffer.");
+    stitch_set_from_remaining_buf(bfcr);
+    bfcr->state = BFCR_STATE_READ_BASIC_CONTINUE;
+    status = BT_BFCR_STATUS_EOF;
 
 end:
-       return status;
+    return status;
 }
 
-static inline
-enum bt_bfcr_status read_basic_int_class_and_call_begin(
-               struct bt_bfcr *bfcr)
+static inline enum bt_bfcr_status read_basic_int_class_and_call_begin(struct bt_bfcr *bfcr)
 {
-       return read_bit_array_class_and_call_begin(bfcr, read_basic_int_and_call_cb);
+    return read_bit_array_class_and_call_begin(bfcr, read_basic_int_and_call_cb);
 }
 
-static inline
-enum bt_bfcr_status read_basic_int_class_and_call_continue(
-               struct bt_bfcr *bfcr)
+static inline enum bt_bfcr_status read_basic_int_class_and_call_continue(struct bt_bfcr *bfcr)
 {
-       return read_bit_array_class_and_call_continue(bfcr,
-               read_basic_int_and_call_cb);
+    return read_bit_array_class_and_call_continue(bfcr, read_basic_int_and_call_cb);
 }
 
-static inline
-enum bt_bfcr_status read_basic_float_class_and_call_begin(
-               struct bt_bfcr *bfcr)
+static inline enum bt_bfcr_status read_basic_float_class_and_call_begin(struct bt_bfcr *bfcr)
 {
-       return read_bit_array_class_and_call_begin(bfcr,
-               read_basic_float_and_call_cb);
+    return read_bit_array_class_and_call_begin(bfcr, read_basic_float_and_call_cb);
 }
 
-static inline
-enum bt_bfcr_status read_basic_float_class_and_call_continue(
-               struct bt_bfcr *bfcr)
+static inline enum bt_bfcr_status read_basic_float_class_and_call_continue(struct bt_bfcr *bfcr)
 {
-       return read_bit_array_class_and_call_continue(bfcr,
-               read_basic_float_and_call_cb);
+    return read_bit_array_class_and_call_continue(bfcr, read_basic_float_and_call_cb);
 }
 
-static inline
-enum bt_bfcr_status read_basic_string_class_and_call(
-               struct bt_bfcr *bfcr, bool begin)
+static inline enum bt_bfcr_status read_basic_string_class_and_call(struct bt_bfcr *bfcr, bool begin)
 {
-       size_t buf_at_bytes;
-       const uint8_t *result;
-       size_t available_bytes;
-       const uint8_t *first_chr;
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-
-       if (!at_least_one_bit_left(bfcr)) {
-               BT_COMP_LOGT("Reached end of data: bfcr-addr=%p", bfcr);
-               status = BT_BFCR_STATUS_EOF;
-               goto end;
-       }
-
-       BT_ASSERT_DBG(buf_at_from_addr(bfcr) % 8 == 0);
-       available_bytes = BITS_TO_BYTES_FLOOR(available_bits(bfcr));
-       buf_at_bytes = BITS_TO_BYTES_FLOOR(buf_at_from_addr(bfcr));
-       BT_ASSERT_DBG(bfcr->buf.addr);
-       first_chr = &bfcr->buf.addr[buf_at_bytes];
-       result = (const uint8_t *) memchr(first_chr, '\0', available_bytes);
-
-       if (begin && bfcr->user.cbs.classes.string_begin) {
-               BT_COMP_LOGT("Calling user function (string, beginning).");
-               status = bfcr->user.cbs.classes.string_begin(
-                       bfcr->cur_basic_field_class, bfcr->user.data);
-               BT_COMP_LOGT("User function returned: status=%s",
-                       bt_bfcr_status_string(status));
-               if (status != BT_BFCR_STATUS_OK) {
-                       BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s",
-                               bfcr, bt_bfcr_status_string(status));
-                       goto end;
-               }
-       }
-
-       if (!result) {
-               /* No null character yet */
-               if (bfcr->user.cbs.classes.string) {
-                       BT_COMP_LOGT("Calling user function (substring).");
-                       status = bfcr->user.cbs.classes.string(
-                               (const char *) first_chr,
-                               available_bytes, bfcr->cur_basic_field_class,
-                               bfcr->user.data);
-                       BT_COMP_LOGT("User function returned: status=%s",
-                               bt_bfcr_status_string(status));
-                       if (status != BT_BFCR_STATUS_OK) {
-                               BT_COMP_LOGW("User function failed: "
-                                       "bfcr-addr=%p, status=%s",
-                                       bfcr, bt_bfcr_status_string(status));
-                               goto end;
-                       }
-               }
-
-               consume_bits(bfcr, BYTES_TO_BITS(available_bytes));
-               bfcr->state = BFCR_STATE_READ_BASIC_CONTINUE;
-               status = BT_BFCR_STATUS_EOF;
-       } else {
-               /* Found the null character */
-               size_t result_len = (size_t) (result - first_chr);
-
-               if (bfcr->user.cbs.classes.string && result_len) {
-                       BT_COMP_LOGT("Calling user function (substring).");
-                       status = bfcr->user.cbs.classes.string(
-                               (const char *) first_chr,
-                               result_len, bfcr->cur_basic_field_class,
-                               bfcr->user.data);
-                       BT_COMP_LOGT("User function returned: status=%s",
-                               bt_bfcr_status_string(status));
-                       if (status != BT_BFCR_STATUS_OK) {
-                               BT_COMP_LOGW("User function failed: "
-                                       "bfcr-addr=%p, status=%s",
-                                       bfcr, bt_bfcr_status_string(status));
-                               goto end;
-                       }
-               }
-
-               if (bfcr->user.cbs.classes.string_end) {
-                       BT_COMP_LOGT("Calling user function (string, end).");
-                       status = bfcr->user.cbs.classes.string_end(
-                               bfcr->cur_basic_field_class, bfcr->user.data);
-                       BT_COMP_LOGT("User function returned: status=%s",
-                               bt_bfcr_status_string(status));
-                       if (status != BT_BFCR_STATUS_OK) {
-                               BT_COMP_LOGW("User function failed: "
-                                       "bfcr-addr=%p, status=%s",
-                                       bfcr, bt_bfcr_status_string(status));
-                               goto end;
-                       }
-               }
-
-               consume_bits(bfcr, BYTES_TO_BITS(result_len + 1));
-
-               if (stack_empty(bfcr->stack)) {
-                       /* Root is a basic class */
-                       bfcr->state = BFCR_STATE_DONE;
-               } else {
-                       /* Go to next field */
-                       stack_top(bfcr->stack)->index++;
-                       bfcr->state = BFCR_STATE_NEXT_FIELD;
-                       bfcr->last_bo = bfcr->cur_bo;
-               }
-       }
+    size_t buf_at_bytes;
+    const uint8_t *result;
+    size_t available_bytes;
+    const uint8_t *first_chr;
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+
+    if (!at_least_one_bit_left(bfcr)) {
+        BT_COMP_LOGT("Reached end of data: bfcr-addr=%p", bfcr);
+        status = BT_BFCR_STATUS_EOF;
+        goto end;
+    }
+
+    BT_ASSERT_DBG(buf_at_from_addr(bfcr) % 8 == 0);
+    available_bytes = BITS_TO_BYTES_FLOOR(available_bits(bfcr));
+    buf_at_bytes = BITS_TO_BYTES_FLOOR(buf_at_from_addr(bfcr));
+    BT_ASSERT_DBG(bfcr->buf.addr);
+    first_chr = &bfcr->buf.addr[buf_at_bytes];
+    result = (const uint8_t *) memchr(first_chr, '\0', available_bytes);
+
+    if (begin && bfcr->user.cbs.classes.string_begin) {
+        BT_COMP_LOGT("Calling user function (string, beginning).");
+        status = bfcr->user.cbs.classes.string_begin(bfcr->cur_basic_field_class, bfcr->user.data);
+        BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+        if (status != BT_BFCR_STATUS_OK) {
+            BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s", bfcr,
+                         bt_bfcr_status_string(status));
+            goto end;
+        }
+    }
+
+    if (!result) {
+        /* No null character yet */
+        if (bfcr->user.cbs.classes.string) {
+            BT_COMP_LOGT("Calling user function (substring).");
+            status = bfcr->user.cbs.classes.string((const char *) first_chr, available_bytes,
+                                                   bfcr->cur_basic_field_class, bfcr->user.data);
+            BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+            if (status != BT_BFCR_STATUS_OK) {
+                BT_COMP_LOGW("User function failed: "
+                             "bfcr-addr=%p, status=%s",
+                             bfcr, bt_bfcr_status_string(status));
+                goto end;
+            }
+        }
+
+        consume_bits(bfcr, BYTES_TO_BITS(available_bytes));
+        bfcr->state = BFCR_STATE_READ_BASIC_CONTINUE;
+        status = BT_BFCR_STATUS_EOF;
+    } else {
+        /* Found the null character */
+        size_t result_len = (size_t) (result - first_chr);
+
+        if (bfcr->user.cbs.classes.string && result_len) {
+            BT_COMP_LOGT("Calling user function (substring).");
+            status = bfcr->user.cbs.classes.string((const char *) first_chr, result_len,
+                                                   bfcr->cur_basic_field_class, bfcr->user.data);
+            BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+            if (status != BT_BFCR_STATUS_OK) {
+                BT_COMP_LOGW("User function failed: "
+                             "bfcr-addr=%p, status=%s",
+                             bfcr, bt_bfcr_status_string(status));
+                goto end;
+            }
+        }
+
+        if (bfcr->user.cbs.classes.string_end) {
+            BT_COMP_LOGT("Calling user function (string, end).");
+            status =
+                bfcr->user.cbs.classes.string_end(bfcr->cur_basic_field_class, bfcr->user.data);
+            BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+            if (status != BT_BFCR_STATUS_OK) {
+                BT_COMP_LOGW("User function failed: "
+                             "bfcr-addr=%p, status=%s",
+                             bfcr, bt_bfcr_status_string(status));
+                goto end;
+            }
+        }
+
+        consume_bits(bfcr, BYTES_TO_BITS(result_len + 1));
+
+        if (stack_empty(bfcr->stack)) {
+            /* Root is a basic class */
+            bfcr->state = BFCR_STATE_DONE;
+        } else {
+            /* Go to next field */
+            stack_top(bfcr->stack)->index++;
+            bfcr->state = BFCR_STATE_NEXT_FIELD;
+            bfcr->last_bo = bfcr->cur_bo;
+        }
+    }
 
 end:
-       return status;
+    return status;
 }
 
-static inline
-enum bt_bfcr_status read_basic_begin_state(struct bt_bfcr *bfcr)
+static inline enum bt_bfcr_status read_basic_begin_state(struct bt_bfcr *bfcr)
 {
-       enum bt_bfcr_status status;
-
-       BT_ASSERT_DBG(bfcr->cur_basic_field_class);
-
-       switch (bfcr->cur_basic_field_class->type) {
-       case CTF_FIELD_CLASS_TYPE_INT:
-       case CTF_FIELD_CLASS_TYPE_ENUM:
-               status = read_basic_int_class_and_call_begin(bfcr);
-               break;
-       case CTF_FIELD_CLASS_TYPE_FLOAT:
-               status = read_basic_float_class_and_call_begin(bfcr);
-               break;
-       case CTF_FIELD_CLASS_TYPE_STRING:
-               status = read_basic_string_class_and_call(bfcr, true);
-               break;
-       default:
-               bt_common_abort();
-       }
-
-       return status;
+    enum bt_bfcr_status status;
+
+    BT_ASSERT_DBG(bfcr->cur_basic_field_class);
+
+    switch (bfcr->cur_basic_field_class->type) {
+    case CTF_FIELD_CLASS_TYPE_INT:
+    case CTF_FIELD_CLASS_TYPE_ENUM:
+        status = read_basic_int_class_and_call_begin(bfcr);
+        break;
+    case CTF_FIELD_CLASS_TYPE_FLOAT:
+        status = read_basic_float_class_and_call_begin(bfcr);
+        break;
+    case CTF_FIELD_CLASS_TYPE_STRING:
+        status = read_basic_string_class_and_call(bfcr, true);
+        break;
+    default:
+        bt_common_abort();
+    }
+
+    return status;
 }
 
-static inline
-enum bt_bfcr_status read_basic_continue_state(struct bt_bfcr *bfcr)
+static inline enum bt_bfcr_status read_basic_continue_state(struct bt_bfcr *bfcr)
 {
-       enum bt_bfcr_status status;
-
-       BT_ASSERT_DBG(bfcr->cur_basic_field_class);
-
-       switch (bfcr->cur_basic_field_class->type) {
-       case CTF_FIELD_CLASS_TYPE_INT:
-       case CTF_FIELD_CLASS_TYPE_ENUM:
-               status = read_basic_int_class_and_call_continue(bfcr);
-               break;
-       case CTF_FIELD_CLASS_TYPE_FLOAT:
-               status = read_basic_float_class_and_call_continue(bfcr);
-               break;
-       case CTF_FIELD_CLASS_TYPE_STRING:
-               status = read_basic_string_class_and_call(bfcr, false);
-               break;
-       default:
-               bt_common_abort();
-       }
-
-       return status;
+    enum bt_bfcr_status status;
+
+    BT_ASSERT_DBG(bfcr->cur_basic_field_class);
+
+    switch (bfcr->cur_basic_field_class->type) {
+    case CTF_FIELD_CLASS_TYPE_INT:
+    case CTF_FIELD_CLASS_TYPE_ENUM:
+        status = read_basic_int_class_and_call_continue(bfcr);
+        break;
+    case CTF_FIELD_CLASS_TYPE_FLOAT:
+        status = read_basic_float_class_and_call_continue(bfcr);
+        break;
+    case CTF_FIELD_CLASS_TYPE_STRING:
+        status = read_basic_string_class_and_call(bfcr, false);
+        break;
+    default:
+        bt_common_abort();
+    }
+
+    return status;
 }
 
-static inline
-size_t bits_to_skip_to_align_to(struct bt_bfcr *bfcr, size_t align)
+static inline size_t bits_to_skip_to_align_to(struct bt_bfcr *bfcr, size_t align)
 {
-       size_t aligned_packet_at;
+    size_t aligned_packet_at;
 
-       aligned_packet_at = BT_ALIGN(packet_at(bfcr), align);
-       return aligned_packet_at - packet_at(bfcr);
+    aligned_packet_at = BT_ALIGN(packet_at(bfcr), align);
+    return aligned_packet_at - packet_at(bfcr);
 }
 
-static inline
-enum bt_bfcr_status align_class_state(struct bt_bfcr *bfcr,
-               struct ctf_field_class *field_class, enum bfcr_state next_state)
+static inline enum bt_bfcr_status align_class_state(struct bt_bfcr *bfcr,
+                                                    struct ctf_field_class *field_class,
+                                                    enum bfcr_state next_state)
 {
-       unsigned int field_alignment;
-       size_t skip_bits;
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-
-       /* Get field's alignment */
-       field_alignment = field_class->alignment;
-
-       /*
-        * 0 means "undefined" for variants; what we really want is 1
-        * (always aligned)
-        */
-       BT_ASSERT_DBG(field_alignment >= 1);
-
-       /* Compute how many bits we need to skip */
-       skip_bits = bits_to_skip_to_align_to(bfcr, (size_t) field_alignment);
-
-       /* Nothing to skip? aligned */
-       if (skip_bits == 0) {
-               bfcr->state = next_state;
-               goto end;
-       }
-
-       /* Make sure there's at least one bit left */
-       if (!at_least_one_bit_left(bfcr)) {
-               status = BT_BFCR_STATUS_EOF;
-               goto end;
-       }
-
-       /* Consume as many bits as possible in what's left */
-       consume_bits(bfcr, MIN(available_bits(bfcr), skip_bits));
-
-       /* Are we done now? */
-       skip_bits = bits_to_skip_to_align_to(bfcr, field_alignment);
-       if (skip_bits == 0) {
-               /* Yes: go to next state */
-               bfcr->state = next_state;
-               goto end;
-       } else {
-               /* No: need more data */
-               BT_COMP_LOGT("Reached end of data when aligning: bfcr-addr=%p", bfcr);
-               status = BT_BFCR_STATUS_EOF;
-       }
+    unsigned int field_alignment;
+    size_t skip_bits;
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+
+    /* Get field's alignment */
+    field_alignment = field_class->alignment;
+
+    /*
+     * 0 means "undefined" for variants; what we really want is 1
+     * (always aligned)
+     */
+    BT_ASSERT_DBG(field_alignment >= 1);
+
+    /* Compute how many bits we need to skip */
+    skip_bits = bits_to_skip_to_align_to(bfcr, (size_t) field_alignment);
+
+    /* Nothing to skip? aligned */
+    if (skip_bits == 0) {
+        bfcr->state = next_state;
+        goto end;
+    }
+
+    /* Make sure there's at least one bit left */
+    if (!at_least_one_bit_left(bfcr)) {
+        status = BT_BFCR_STATUS_EOF;
+        goto end;
+    }
+
+    /* Consume as many bits as possible in what's left */
+    consume_bits(bfcr, MIN(available_bits(bfcr), skip_bits));
+
+    /* Are we done now? */
+    skip_bits = bits_to_skip_to_align_to(bfcr, field_alignment);
+    if (skip_bits == 0) {
+        /* Yes: go to next state */
+        bfcr->state = next_state;
+        goto end;
+    } else {
+        /* No: need more data */
+        BT_COMP_LOGT("Reached end of data when aligning: bfcr-addr=%p", bfcr);
+        status = BT_BFCR_STATUS_EOF;
+    }
 
 end:
-       return status;
+    return status;
 }
 
-static inline
-enum bt_bfcr_status next_field_state(struct bt_bfcr *bfcr)
+static inline enum bt_bfcr_status next_field_state(struct bt_bfcr *bfcr)
 {
-       int ret;
-       struct stack_entry *top;
-       struct ctf_field_class *next_field_class = NULL;
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-
-       if (stack_empty(bfcr->stack)) {
-               goto end;
-       }
-
-       top = stack_top(bfcr->stack);
-
-       /* Are we done with this base class? */
-       while (top->index == top->base_len) {
-               if (bfcr->user.cbs.classes.compound_end) {
-                       BT_COMP_LOGT("Calling user function (compound, end).");
-                       status = bfcr->user.cbs.classes.compound_end(
-                               top->base_class, bfcr->user.data);
-                       BT_COMP_LOGT("User function returned: status=%s",
-                               bt_bfcr_status_string(status));
-                       if (status != BT_BFCR_STATUS_OK) {
-                               BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s",
-                                       bfcr, bt_bfcr_status_string(status));
-                               goto end;
-                       }
-               }
-
-               stack_pop(bfcr->stack);
-
-               /* Are we done with the root class? */
-               if (stack_empty(bfcr->stack)) {
-                       bfcr->state = BFCR_STATE_DONE;
-                       goto end;
-               }
-
-               top = stack_top(bfcr->stack);
-               top->index++;
-       }
-
-       /* Get next field's class */
-       switch (top->base_class->type) {
-       case CTF_FIELD_CLASS_TYPE_STRUCT:
-               next_field_class = ctf_field_class_struct_borrow_member_by_index(
-                       ctf_field_class_as_struct(top->base_class), (uint64_t) top->index)->fc;
-               break;
-       case CTF_FIELD_CLASS_TYPE_ARRAY:
-       case CTF_FIELD_CLASS_TYPE_SEQUENCE:
-       {
-               ctf_field_class_array_base *array_fc =
-                       ctf_field_class_as_array_base(top->base_class);
-
-               next_field_class = array_fc->elem_fc;
-               break;
-       }
-       case CTF_FIELD_CLASS_TYPE_VARIANT:
-               /* Variant classes are dynamic: the user should know! */
-               next_field_class =
-                       bfcr->user.cbs.query.borrow_variant_selected_field_class(
-                               top->base_class, bfcr->user.data);
-               break;
-       default:
-               break;
-       }
-
-       if (!next_field_class) {
-               BT_COMP_LOGW("Cannot get the field class of the next field: "
-                       "bfcr-addr=%p, base-fc-addr=%p, base-fc-type=%d, "
-                       "index=%" PRId64,
-                       bfcr, top->base_class, top->base_class->type,
-                       top->index);
-               status = BT_BFCR_STATUS_ERROR;
-               goto end;
-       }
-
-       if (next_field_class->is_compound) {
-               if (bfcr->user.cbs.classes.compound_begin) {
-                       BT_COMP_LOGT("Calling user function (compound, begin).");
-                       status = bfcr->user.cbs.classes.compound_begin(
-                               next_field_class, bfcr->user.data);
-                       BT_COMP_LOGT("User function returned: status=%s",
-                               bt_bfcr_status_string(status));
-                       if (status != BT_BFCR_STATUS_OK) {
-                               BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s",
-                                       bfcr, bt_bfcr_status_string(status));
-                               goto end;
-                       }
-               }
-
-               ret = stack_push_with_len(bfcr, next_field_class);
-               if (ret) {
-                       /* stack_push_with_len() logs errors */
-                       status = BT_BFCR_STATUS_ERROR;
-                       goto end;
-               }
-
-               /* Next state: align a compound class */
-               bfcr->state = BFCR_STATE_ALIGN_COMPOUND;
-       } else {
-               /* Replace current basic field class */
-               BT_COMP_LOGT("Replacing current basic field class: "
-                       "bfcr-addr=%p, cur-basic-fc-addr=%p, "
-                       "next-basic-fc-addr=%p",
-                       bfcr, bfcr->cur_basic_field_class, next_field_class);
-               bfcr->cur_basic_field_class = next_field_class;
-
-               /* Next state: align a basic class */
-               bfcr->state = BFCR_STATE_ALIGN_BASIC;
-       }
+    int ret;
+    struct stack_entry *top;
+    struct ctf_field_class *next_field_class = NULL;
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+
+    if (stack_empty(bfcr->stack)) {
+        goto end;
+    }
+
+    top = stack_top(bfcr->stack);
+
+    /* Are we done with this base class? */
+    while (top->index == top->base_len) {
+        if (bfcr->user.cbs.classes.compound_end) {
+            BT_COMP_LOGT("Calling user function (compound, end).");
+            status = bfcr->user.cbs.classes.compound_end(top->base_class, bfcr->user.data);
+            BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+            if (status != BT_BFCR_STATUS_OK) {
+                BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s", bfcr,
+                             bt_bfcr_status_string(status));
+                goto end;
+            }
+        }
+
+        stack_pop(bfcr->stack);
+
+        /* Are we done with the root class? */
+        if (stack_empty(bfcr->stack)) {
+            bfcr->state = BFCR_STATE_DONE;
+            goto end;
+        }
+
+        top = stack_top(bfcr->stack);
+        top->index++;
+    }
+
+    /* Get next field's class */
+    switch (top->base_class->type) {
+    case CTF_FIELD_CLASS_TYPE_STRUCT:
+        next_field_class = ctf_field_class_struct_borrow_member_by_index(
+                               ctf_field_class_as_struct(top->base_class), (uint64_t) top->index)
+                               ->fc;
+        break;
+    case CTF_FIELD_CLASS_TYPE_ARRAY:
+    case CTF_FIELD_CLASS_TYPE_SEQUENCE:
+    {
+        ctf_field_class_array_base *array_fc = ctf_field_class_as_array_base(top->base_class);
+
+        next_field_class = array_fc->elem_fc;
+        break;
+    }
+    case CTF_FIELD_CLASS_TYPE_VARIANT:
+        /* Variant classes are dynamic: the user should know! */
+        next_field_class = bfcr->user.cbs.query.borrow_variant_selected_field_class(
+            top->base_class, bfcr->user.data);
+        break;
+    default:
+        break;
+    }
+
+    if (!next_field_class) {
+        BT_COMP_LOGW("Cannot get the field class of the next field: "
+                     "bfcr-addr=%p, base-fc-addr=%p, base-fc-type=%d, "
+                     "index=%" PRId64,
+                     bfcr, top->base_class, top->base_class->type, top->index);
+        status = BT_BFCR_STATUS_ERROR;
+        goto end;
+    }
+
+    if (next_field_class->is_compound) {
+        if (bfcr->user.cbs.classes.compound_begin) {
+            BT_COMP_LOGT("Calling user function (compound, begin).");
+            status = bfcr->user.cbs.classes.compound_begin(next_field_class, bfcr->user.data);
+            BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(status));
+            if (status != BT_BFCR_STATUS_OK) {
+                BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s", bfcr,
+                             bt_bfcr_status_string(status));
+                goto end;
+            }
+        }
+
+        ret = stack_push_with_len(bfcr, next_field_class);
+        if (ret) {
+            /* stack_push_with_len() logs errors */
+            status = BT_BFCR_STATUS_ERROR;
+            goto end;
+        }
+
+        /* Next state: align a compound class */
+        bfcr->state = BFCR_STATE_ALIGN_COMPOUND;
+    } else {
+        /* Replace current basic field class */
+        BT_COMP_LOGT("Replacing current basic field class: "
+                     "bfcr-addr=%p, cur-basic-fc-addr=%p, "
+                     "next-basic-fc-addr=%p",
+                     bfcr, bfcr->cur_basic_field_class, next_field_class);
+        bfcr->cur_basic_field_class = next_field_class;
+
+        /* Next state: align a basic class */
+        bfcr->state = BFCR_STATE_ALIGN_BASIC;
+    }
 
 end:
-       return status;
+    return status;
 }
 
-static inline
-enum bt_bfcr_status handle_state(struct bt_bfcr *bfcr)
+static inline enum bt_bfcr_status handle_state(struct bt_bfcr *bfcr)
 {
-       enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
-
-       BT_COMP_LOGT("Handling state: bfcr-addr=%p, state=%s",
-               bfcr, bfcr_state_string(bfcr->state));
-
-       switch (bfcr->state) {
-       case BFCR_STATE_NEXT_FIELD:
-               status = next_field_state(bfcr);
-               break;
-       case BFCR_STATE_ALIGN_BASIC:
-               status = align_class_state(bfcr, bfcr->cur_basic_field_class,
-                       BFCR_STATE_READ_BASIC_BEGIN);
-               break;
-       case BFCR_STATE_ALIGN_COMPOUND:
-               status = align_class_state(bfcr, stack_top(bfcr->stack)->base_class,
-                       BFCR_STATE_NEXT_FIELD);
-               break;
-       case BFCR_STATE_READ_BASIC_BEGIN:
-               status = read_basic_begin_state(bfcr);
-               break;
-       case BFCR_STATE_READ_BASIC_CONTINUE:
-               status = read_basic_continue_state(bfcr);
-               break;
-       case BFCR_STATE_DONE:
-               break;
-       }
-
-       BT_COMP_LOGT("Handled state: bfcr-addr=%p, status=%s",
-               bfcr, bt_bfcr_status_string(status));
-       return status;
+    enum bt_bfcr_status status = BT_BFCR_STATUS_OK;
+
+    BT_COMP_LOGT("Handling state: bfcr-addr=%p, state=%s", bfcr, bfcr_state_string(bfcr->state));
+
+    switch (bfcr->state) {
+    case BFCR_STATE_NEXT_FIELD:
+        status = next_field_state(bfcr);
+        break;
+    case BFCR_STATE_ALIGN_BASIC:
+        status = align_class_state(bfcr, bfcr->cur_basic_field_class, BFCR_STATE_READ_BASIC_BEGIN);
+        break;
+    case BFCR_STATE_ALIGN_COMPOUND:
+        status = align_class_state(bfcr, stack_top(bfcr->stack)->base_class, BFCR_STATE_NEXT_FIELD);
+        break;
+    case BFCR_STATE_READ_BASIC_BEGIN:
+        status = read_basic_begin_state(bfcr);
+        break;
+    case BFCR_STATE_READ_BASIC_CONTINUE:
+        status = read_basic_continue_state(bfcr);
+        break;
+    case BFCR_STATE_DONE:
+        break;
+    }
+
+    BT_COMP_LOGT("Handled state: bfcr-addr=%p, status=%s", bfcr, bt_bfcr_status_string(status));
+    return status;
 }
 
 BT_HIDDEN
-struct bt_bfcr *bt_bfcr_create(struct bt_bfcr_cbs cbs, void *data,
-               bt_logging_level log_level, bt_self_component *self_comp)
+struct bt_bfcr *bt_bfcr_create(struct bt_bfcr_cbs cbs, void *data, bt_logging_level log_level,
+                               bt_self_component *self_comp)
 {
-       struct bt_bfcr *bfcr;
-
-       BT_COMP_LOG_CUR_LVL(BT_LOG_DEBUG, log_level, self_comp,
-               "Creating binary field class reader (BFCR).");
-       bfcr = g_new0(struct bt_bfcr, 1);
-       if (!bfcr) {
-               BT_COMP_LOG_CUR_LVL(BT_LOG_ERROR, log_level, self_comp,
-                       "Failed to allocate one binary class reader.");
-               goto end;
-       }
-
-       bfcr->log_level = log_level;
-       bfcr->self_comp = self_comp;
-       bfcr->stack = stack_new(bfcr);
-       if (!bfcr->stack) {
-               BT_COMP_LOGE_STR("Cannot create BFCR's stack.");
-               bt_bfcr_destroy(bfcr);
-               bfcr = NULL;
-               goto end;
-       }
-
-       bfcr->state = BFCR_STATE_NEXT_FIELD;
-       bfcr->user.cbs = cbs;
-       bfcr->user.data = data;
-       BT_COMP_LOGD("Created BFCR: addr=%p", bfcr);
+    struct bt_bfcr *bfcr;
+
+    BT_COMP_LOG_CUR_LVL(BT_LOG_DEBUG, log_level, self_comp,
+                        "Creating binary field class reader (BFCR).");
+    bfcr = g_new0(struct bt_bfcr, 1);
+    if (!bfcr) {
+        BT_COMP_LOG_CUR_LVL(BT_LOG_ERROR, log_level, self_comp,
+                            "Failed to allocate one binary class reader.");
+        goto end;
+    }
+
+    bfcr->log_level = log_level;
+    bfcr->self_comp = self_comp;
+    bfcr->stack = stack_new(bfcr);
+    if (!bfcr->stack) {
+        BT_COMP_LOGE_STR("Cannot create BFCR's stack.");
+        bt_bfcr_destroy(bfcr);
+        bfcr = NULL;
+        goto end;
+    }
+
+    bfcr->state = BFCR_STATE_NEXT_FIELD;
+    bfcr->user.cbs = cbs;
+    bfcr->user.data = data;
+    BT_COMP_LOGD("Created BFCR: addr=%p", bfcr);
 
 end:
-       return bfcr;
+    return bfcr;
 }
 
 BT_HIDDEN
 void bt_bfcr_destroy(struct bt_bfcr *bfcr)
 {
-       if (bfcr->stack) {
-               stack_destroy(bfcr->stack);
-       }
+    if (bfcr->stack) {
+        stack_destroy(bfcr->stack);
+    }
 
-       BT_COMP_LOGD("Destroying BFCR: addr=%p", bfcr);
-       g_free(bfcr);
+    BT_COMP_LOGD("Destroying BFCR: addr=%p", bfcr);
+    g_free(bfcr);
 }
 
-static
-void reset(struct bt_bfcr *bfcr)
+static void reset(struct bt_bfcr *bfcr)
 {
-       BT_COMP_LOGD("Resetting BFCR: addr=%p", bfcr);
-       stack_clear(bfcr->stack);
-       stitch_reset(bfcr);
-       bfcr->buf.addr = NULL;
-       bfcr->last_bo = CTF_BYTE_ORDER_UNKNOWN;
+    BT_COMP_LOGD("Resetting BFCR: addr=%p", bfcr);
+    stack_clear(bfcr->stack);
+    stitch_reset(bfcr);
+    bfcr->buf.addr = NULL;
+    bfcr->last_bo = CTF_BYTE_ORDER_UNKNOWN;
 }
 
-static
-void update_packet_offset(struct bt_bfcr *bfcr)
+static void update_packet_offset(struct bt_bfcr *bfcr)
 {
-       BT_COMP_LOGT("Updating packet offset for next call: "
-               "bfcr-addr=%p, cur-packet-offset=%zu, next-packet-offset=%zu",
-               bfcr, bfcr->buf.packet_offset,
-               bfcr->buf.packet_offset + bfcr->buf.at);
-       bfcr->buf.packet_offset += bfcr->buf.at;
+    BT_COMP_LOGT("Updating packet offset for next call: "
+                 "bfcr-addr=%p, cur-packet-offset=%zu, next-packet-offset=%zu",
+                 bfcr, bfcr->buf.packet_offset, bfcr->buf.packet_offset + bfcr->buf.at);
+    bfcr->buf.packet_offset += bfcr->buf.at;
 }
 
 BT_HIDDEN
-size_t bt_bfcr_start(struct bt_bfcr *bfcr,
-       struct ctf_field_class *cls, const uint8_t *buf,
-       size_t offset, size_t packet_offset, size_t sz,
-       enum bt_bfcr_status *status)
+size_t bt_bfcr_start(struct bt_bfcr *bfcr, struct ctf_field_class *cls, const uint8_t *buf,
+                     size_t offset, size_t packet_offset, size_t sz, enum bt_bfcr_status *status)
 {
-       BT_ASSERT_DBG(bfcr);
-       BT_ASSERT_DBG(BYTES_TO_BITS(sz) >= offset);
-       reset(bfcr);
-       bfcr->buf.addr = buf;
-       bfcr->buf.offset = offset;
-       bfcr->buf.at = 0;
-       bfcr->buf.packet_offset = packet_offset;
-       bfcr->buf.buf_sz = sz;
-       bfcr->buf.sz = BYTES_TO_BITS(sz) - offset;
-       *status = BT_BFCR_STATUS_OK;
-
-       BT_COMP_LOGT("Starting decoding: bfcr-addr=%p, fc-addr=%p, "
-               "buf-addr=%p, buf-size=%zu, offset=%zu, "
-               "packet-offset=%zu",
-               bfcr, cls, buf, sz, offset, packet_offset);
-
-       /* Set root class */
-       if (cls->is_compound) {
-               /* Compound class: push on visit stack */
-               int stack_ret;
-
-               if (bfcr->user.cbs.classes.compound_begin) {
-                       BT_COMP_LOGT("Calling user function (compound, begin).");
-                       *status = bfcr->user.cbs.classes.compound_begin(
-                               cls, bfcr->user.data);
-                       BT_COMP_LOGT("User function returned: status=%s",
-                               bt_bfcr_status_string(*status));
-                       if (*status != BT_BFCR_STATUS_OK) {
-                               BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s",
-                                       bfcr, bt_bfcr_status_string(*status));
-                               goto end;
-                       }
-               }
-
-               stack_ret = stack_push_with_len(bfcr, cls);
-               if (stack_ret) {
-                       /* stack_push_with_len() logs errors */
-                       *status = BT_BFCR_STATUS_ERROR;
-                       goto end;
-               }
-
-               bfcr->state = BFCR_STATE_ALIGN_COMPOUND;
-       } else {
-               /* Basic class: set as current basic class */
-               bfcr->cur_basic_field_class = cls;
-               bfcr->state = BFCR_STATE_ALIGN_BASIC;
-       }
-
-       /* Run the machine! */
-       BT_COMP_LOGT_STR("Running the state machine.");
-
-       while (true) {
-               *status = handle_state(bfcr);
-               if (*status != BT_BFCR_STATUS_OK ||
-                               bfcr->state == BFCR_STATE_DONE) {
-                       break;
-               }
-       }
-
-       /* Update packet offset for next time */
-       update_packet_offset(bfcr);
+    BT_ASSERT_DBG(bfcr);
+    BT_ASSERT_DBG(BYTES_TO_BITS(sz) >= offset);
+    reset(bfcr);
+    bfcr->buf.addr = buf;
+    bfcr->buf.offset = offset;
+    bfcr->buf.at = 0;
+    bfcr->buf.packet_offset = packet_offset;
+    bfcr->buf.buf_sz = sz;
+    bfcr->buf.sz = BYTES_TO_BITS(sz) - offset;
+    *status = BT_BFCR_STATUS_OK;
+
+    BT_COMP_LOGT("Starting decoding: bfcr-addr=%p, fc-addr=%p, "
+                 "buf-addr=%p, buf-size=%zu, offset=%zu, "
+                 "packet-offset=%zu",
+                 bfcr, cls, buf, sz, offset, packet_offset);
+
+    /* Set root class */
+    if (cls->is_compound) {
+        /* Compound class: push on visit stack */
+        int stack_ret;
+
+        if (bfcr->user.cbs.classes.compound_begin) {
+            BT_COMP_LOGT("Calling user function (compound, begin).");
+            *status = bfcr->user.cbs.classes.compound_begin(cls, bfcr->user.data);
+            BT_COMP_LOGT("User function returned: status=%s", bt_bfcr_status_string(*status));
+            if (*status != BT_BFCR_STATUS_OK) {
+                BT_COMP_LOGW("User function failed: bfcr-addr=%p, status=%s", bfcr,
+                             bt_bfcr_status_string(*status));
+                goto end;
+            }
+        }
+
+        stack_ret = stack_push_with_len(bfcr, cls);
+        if (stack_ret) {
+            /* stack_push_with_len() logs errors */
+            *status = BT_BFCR_STATUS_ERROR;
+            goto end;
+        }
+
+        bfcr->state = BFCR_STATE_ALIGN_COMPOUND;
+    } else {
+        /* Basic class: set as current basic class */
+        bfcr->cur_basic_field_class = cls;
+        bfcr->state = BFCR_STATE_ALIGN_BASIC;
+    }
+
+    /* Run the machine! */
+    BT_COMP_LOGT_STR("Running the state machine.");
+
+    while (true) {
+        *status = handle_state(bfcr);
+        if (*status != BT_BFCR_STATUS_OK || bfcr->state == BFCR_STATE_DONE) {
+            break;
+        }
+    }
+
+    /* Update packet offset for next time */
+    update_packet_offset(bfcr);
 
 end:
-       return bfcr->buf.at;
+    return bfcr->buf.at;
 }
 
 BT_HIDDEN
 size_t bt_bfcr_continue(struct bt_bfcr *bfcr, const uint8_t *buf, size_t sz,
-               enum bt_bfcr_status *status)
+                        enum bt_bfcr_status *status)
 {
-       BT_ASSERT_DBG(bfcr);
-       BT_ASSERT_DBG(buf);
-       BT_ASSERT_DBG(sz > 0);
-       bfcr->buf.addr = buf;
-       bfcr->buf.offset = 0;
-       bfcr->buf.at = 0;
-       bfcr->buf.buf_sz = sz;
-       bfcr->buf.sz = BYTES_TO_BITS(sz);
-       *status = BT_BFCR_STATUS_OK;
-
-       BT_COMP_LOGT("Continuing decoding: bfcr-addr=%p, buf-addr=%p, buf-size=%zu",
-               bfcr, buf, sz);
-
-       /* Continue running the machine */
-       BT_COMP_LOGT_STR("Running the state machine.");
-
-       while (true) {
-               *status = handle_state(bfcr);
-               if (*status != BT_BFCR_STATUS_OK ||
-                               bfcr->state == BFCR_STATE_DONE) {
-                       break;
-               }
-       }
-
-       /* Update packet offset for next time */
-       update_packet_offset(bfcr);
-       return bfcr->buf.at;
+    BT_ASSERT_DBG(bfcr);
+    BT_ASSERT_DBG(buf);
+    BT_ASSERT_DBG(sz > 0);
+    bfcr->buf.addr = buf;
+    bfcr->buf.offset = 0;
+    bfcr->buf.at = 0;
+    bfcr->buf.buf_sz = sz;
+    bfcr->buf.sz = BYTES_TO_BITS(sz);
+    *status = BT_BFCR_STATUS_OK;
+
+    BT_COMP_LOGT("Continuing decoding: bfcr-addr=%p, buf-addr=%p, buf-size=%zu", bfcr, buf, sz);
+
+    /* Continue running the machine */
+    BT_COMP_LOGT_STR("Running the state machine.");
+
+    while (true) {
+        *status = handle_state(bfcr);
+        if (*status != BT_BFCR_STATUS_OK || bfcr->state == BFCR_STATE_DONE) {
+            break;
+        }
+    }
+
+    /* Update packet offset for next time */
+    update_packet_offset(bfcr);
+    return bfcr->buf.at;
 }
 
 BT_HIDDEN
-void bt_bfcr_set_unsigned_int_cb(struct bt_bfcr *bfcr,
-               bt_bfcr_unsigned_int_cb_func cb)
+void bt_bfcr_set_unsigned_int_cb(struct bt_bfcr *bfcr, bt_bfcr_unsigned_int_cb_func cb)
 {
-       BT_ASSERT_DBG(bfcr);
-       BT_ASSERT_DBG(cb);
-       bfcr->user.cbs.classes.unsigned_int = cb;
+    BT_ASSERT_DBG(bfcr);
+    BT_ASSERT_DBG(cb);
+    bfcr->user.cbs.classes.unsigned_int = cb;
 }
This page took 0.055378 seconds and 4 git commands to generate.