#include <babeltrace2/babeltrace.h>
#include "logging.h"
-#include "assert-pre.h"
-#include "assert-post.h"
+#include "assert-cond.h"
#include "value.h"
#include "integer-range-set.h"
#include "object-pool.h"
#include "trace-ir/trace.h"
#include "trace-ir/utils.h"
#include "error.h"
-#include "assert-pre.h"
#define LIB_LOGGING_BUF_SIZE (4096 * 4)
char tmp_prefix[TMP_PREFIX_LEN];
BUF_APPEND(", %stype=%s",
- PRFIELD(bt_message_type_string(msg->type)));
+ PRFIELD(bt_common_message_type_string(msg->type)));
if (!extended) {
return;
char tmp_prefix[TMP_PREFIX_LEN];
BUF_APPEND(", %stype=%s, %sname=\"%s\"",
- PRFIELD(bt_component_class_type_string(comp_class->type)),
+ PRFIELD(bt_common_component_class_type_string(comp_class->type)),
PRFIELD_GSTRING(comp_class->name));
if (comp_class->description) {
if (comp_class_id) {
BUF_APPEND(", %scomp-cls-type=%s, %scomp-cls-name=\"%s\", "
"%splugin-name=\"%s\"",
- PRFIELD(bt_component_class_type_string(
+ PRFIELD(bt_common_component_class_type_string(
comp_class_id->type)),
PRFIELD_GSTRING(comp_class_id->name),
PRFIELD_GSTRING(comp_class_id->plugin_name));
*out_fmt_ch = fmt_ch;
}
+/*
+ * This function would normally not be BT_EXPORTed, but it is used by the
+ * Python plugin provider, which is conceptually part of libbabeltrace2, but
+ * implemented as a separate shared object, for modularity. It is therefore
+ * exposed, but not part of the public ABI.
+ */
+BT_EXPORT
+void bt_lib_log_v(const char *func, const char *file, unsigned line,
+ int lvl, const char *tag, const char *fmt, va_list *args)
+{
+ BT_ASSERT(fmt);
+ bt_common_custom_vsnprintf(lib_logging_buf, LIB_LOGGING_BUF_SIZE, '!',
+ handle_conversion_specifier_bt, NULL, fmt, args);
+ _bt_log_write_d(func, file, line, lvl, tag, "%s", lib_logging_buf);
+}
+
+/*
+ * This function would normally not be BT_EXPORTed, but it is used by the
+ * Python plugin provider, which is conceptually part of libbabeltrace2, but
+ * implemented as a separate shared object, for modularity. It is therefore
+ * exposed, but not part of the public ABI.
+ */
+BT_EXPORT
void bt_lib_log(const char *func, const char *file, unsigned line,
int lvl, const char *tag, const char *fmt, ...)
{
BT_ASSERT(fmt);
va_start(args, fmt);
- bt_common_custom_vsnprintf(lib_logging_buf, LIB_LOGGING_BUF_SIZE, '!',
- handle_conversion_specifier_bt, NULL, fmt, &args);
+ bt_lib_log_v(func, file, line, lvl, tag, fmt, &args);
va_end(args);
- _bt_log_write_d(func, file, line, lvl, tag, "%s", lib_logging_buf);
}
+/*
+ * This function would normally not be BT_EXPORTed, but it is used by the
+ * Python plugin provider, which is conceptually part of libbabeltrace2, but
+ * implemented as a separate shared object, for modularity. It is therefore
+ * exposed, but not part of the ABI.
+ */
+BT_EXPORT
void bt_lib_maybe_log_and_append_cause(const char *func, const char *file,
unsigned line, int lvl, const char *tag,
const char *fmt, ...)