#include <stdint.h>
#include <string.h>
-#include <babeltrace2/ctf-writer/fields.h>
+#include <babeltrace2-ctf-writer/fields.h>
#include <babeltrace2/types.h>
-#include "common/babeltrace.h"
+#include "common/macros.h"
#include "common/common.h"
#include "ctfser/ctfser.h"
typedef int (*bt_ctf_field_common_method_validate)(struct bt_ctf_field_common *);
typedef struct bt_ctf_field_common *(*bt_ctf_field_common_method_copy)(
struct bt_ctf_field_common *);
-typedef bt_bool (*bt_ctf_field_common_method_is_set)(struct bt_ctf_field_common *);
+typedef bt_ctf_bool (*bt_ctf_field_common_method_is_set)(struct bt_ctf_field_common *);
typedef void (*bt_ctf_field_common_method_reset)(struct bt_ctf_field_common *);
struct bt_ctf_field_common_methods {
bool is_frozen);
BT_HIDDEN
-bt_bool bt_ctf_field_common_generic_is_set(struct bt_ctf_field_common *field);
+bt_ctf_bool bt_ctf_field_common_generic_is_set(struct bt_ctf_field_common *field);
BT_HIDDEN
-bt_bool bt_ctf_field_common_structure_is_set_recursive(
+bt_ctf_bool bt_ctf_field_common_structure_is_set_recursive(
struct bt_ctf_field_common *field);
BT_HIDDEN
-bt_bool bt_ctf_field_common_variant_is_set_recursive(struct bt_ctf_field_common *field);
+bt_ctf_bool bt_ctf_field_common_variant_is_set_recursive(struct bt_ctf_field_common *field);
BT_HIDDEN
-bt_bool bt_ctf_field_common_array_is_set_recursive(struct bt_ctf_field_common *field);
+bt_ctf_bool bt_ctf_field_common_array_is_set_recursive(struct bt_ctf_field_common *field);
BT_HIDDEN
-bt_bool bt_ctf_field_common_sequence_is_set_recursive(struct bt_ctf_field_common *field);
+bt_ctf_bool bt_ctf_field_common_sequence_is_set_recursive(struct bt_ctf_field_common *field);
#ifdef BT_DEV_MODE
# define bt_ctf_field_common_validate_recursive _bt_ctf_field_common_validate_recursive
#else
# define bt_ctf_field_common_validate_recursive(_field) (-1)
# define bt_ctf_field_common_set_is_frozen_recursive(_field, _is_frozen)
-# define bt_ctf_field_common_is_set_recursive(_field) (BT_FALSE)
+# define bt_ctf_field_common_is_set_recursive(_field) (BT_CTF_FALSE)
# define bt_ctf_field_common_reset_recursive(_field)
# define bt_ctf_field_common_set(_field, _val)
#endif
-BT_ASSERT_FUNC
+BT_ASSERT_DBG_FUNC
static inline bool field_type_common_has_known_id(
struct bt_ctf_field_type_common *ft)
{
goto end;
}
- BT_ASSERT(field_type_common_has_known_id(field->type));
+ BT_ASSERT_DBG(field_type_common_has_known_id(field->type));
if (field->methods->validate) {
ret = field->methods->validate(field);
static inline
void _bt_ctf_field_common_reset_recursive(struct bt_ctf_field_common *field)
{
- BT_ASSERT(field);
- BT_ASSERT(field->methods->reset);
+ BT_ASSERT_DBG(field);
+ BT_ASSERT_DBG(field->methods->reset);
field->methods->reset(field);
}
static inline
void _bt_ctf_field_common_set(struct bt_ctf_field_common *field, bool value)
{
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
field->payload_set = value;
}
static inline
-bt_bool _bt_ctf_field_common_is_set_recursive(struct bt_ctf_field_common *field)
+bt_ctf_bool _bt_ctf_field_common_is_set_recursive(struct bt_ctf_field_common *field)
{
- bt_bool is_set = BT_FALSE;
+ bt_ctf_bool is_set = BT_CTF_FALSE;
if (!field) {
goto end;
}
- BT_ASSERT(field_type_common_has_known_id(field->type));
- BT_ASSERT(field->methods->is_set);
+ BT_ASSERT_DBG(field_type_common_has_known_id(field->type));
+ BT_ASSERT_DBG(field->methods->is_set);
is_set = field->methods->is_set(field);
end:
bt_ctf_object_release_func release_func,
struct bt_ctf_field_common_methods *methods)
{
- BT_ASSERT(field);
- BT_ASSERT(ft);
+ BT_ASSERT_DBG(field);
+ BT_ASSERT_DBG(ft);
bt_ctf_object_init(&field->base, is_shared, release_func);
field->methods = methods;
field->type = (void *) bt_ctf_object_get_ref(ft);
length);
BT_CTF_ASSERT_PRE_CTF_FIELD_COMMON_HOT(field, "Sequence field");
- if (unlikely(length > sequence->elements->len)) {
+ if (G_UNLIKELY(length > sequence->elements->len)) {
/* Make more room */
struct bt_ctf_field_type_common_sequence *sequence_ft;
uint64_t cur_len = sequence->elements->len;
goto end;
}
- BT_ASSERT(!sequence->elements->pdata[i]);
+ BT_ASSERT_DBG(!sequence->elements->pdata[i]);
sequence->elements->pdata[i] = elem_field;
}
}
if (!g_hash_table_lookup_extended(field_name_to_index,
GUINT_TO_POINTER(field_quark),
NULL, (gpointer *) &index)) {
- BT_LOGV("Invalid parameter: no such field in structure field's type: "
+ BT_LOGT("Invalid parameter: no such field in structure field's type: "
"struct-field-addr=%p, struct-ft-addr=%p, name=\"%s\"",
field, field->type, name);
goto error;
}
ret = structure->fields->pdata[index];
- BT_ASSERT(ret);
+ BT_ASSERT_DBG(ret);
error:
return ret;
}
/* Select corresponding field */
- BT_ASSERT(choice_index < variant->fields->len);
+ BT_ASSERT_DBG(choice_index < variant->fields->len);
variant->current_field = variant->fields->pdata[choice_index];
variant->tag_value.u = tag_uval;
BT_CTF_FIELD_TYPE_ID_STRING, "Field");
/* Make sure no null bytes are appended */
- BT_CTF_ASSERT_PRE(memchr(value, '\0', length) == NULL,
+ BT_CTF_ASSERT_PRE(!memchr(value, '\0', length),
"String value to append contains a null character: "
"partial-value=\"%.32s\", length=%u", value, length);
new_size = string_field->size + length;
- if (unlikely(new_size + 1 > string_field->buf->len)) {
+ if (G_UNLIKELY(new_size + 1 > string_field->buf->len)) {
g_array_set_size(string_field->buf, new_size + 1);
}
static inline
void bt_ctf_field_common_finalize(struct bt_ctf_field_common *field)
{
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
BT_LOGD_STR("Putting field's type.");
bt_ctf_object_put_ref(field->type);
}
static inline
void bt_ctf_field_common_integer_finalize(struct bt_ctf_field_common *field)
{
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
BT_LOGD("Finalizing common integer field object: addr=%p", field);
bt_ctf_field_common_finalize(field);
}
static inline
void bt_ctf_field_common_floating_point_finalize(struct bt_ctf_field_common *field)
{
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
BT_LOGD("Finalizing common floating point number field object: addr=%p", field);
bt_ctf_field_common_finalize(field);
}
{
struct bt_ctf_field_common_structure *structure = BT_CTF_FROM_COMMON(field);
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
BT_LOGD("Finalizing common structure field object: addr=%p", field);
bt_ctf_field_common_finalize(field);
{
struct bt_ctf_field_common_variant *variant = BT_CTF_FROM_COMMON(field);
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
BT_LOGD("Finalizing common variant field object: addr=%p", field);
bt_ctf_field_common_finalize(field);
{
struct bt_ctf_field_common_array *array = BT_CTF_FROM_COMMON(field);
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
BT_LOGD("Finalizing common array field object: addr=%p", field);
bt_ctf_field_common_finalize(field);
{
struct bt_ctf_field_common_sequence *sequence = BT_CTF_FROM_COMMON(field);
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
BT_LOGD("Finalizing common sequence field object: addr=%p", field);
bt_ctf_field_common_finalize(field);
{
struct bt_ctf_field_common_string *string = BT_CTF_FROM_COMMON(field);
- BT_ASSERT(field);
+ BT_ASSERT_DBG(field);
BT_LOGD("Finalizing common string field object: addr=%p", field);
bt_ctf_field_common_finalize(field);
struct bt_ctf_field *field);
static inline
-bt_bool bt_ctf_field_is_set_recursive(struct bt_ctf_field *field)
+bt_ctf_bool bt_ctf_field_is_set_recursive(struct bt_ctf_field *field)
{
return bt_ctf_field_common_is_set_recursive((void *) field);
}