X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fcommon%2Fcommon.h;h=0fdad32fcd54cad9a1498fa0b2b06a44c51bb9c7;hb=4fa90f321f51af8f5bfc48eee1435e2f41d853b3;hp=809c2e5063556a3ec500d60694794a9bf8264ce4;hpb=d24d56638469189904fb6ddbb3c725817b3e9417;p=babeltrace.git diff --git a/src/common/common.h b/src/common/common.h index 809c2e50..0fdad32f 100644 --- a/src/common/common.h +++ b/src/common/common.h @@ -33,15 +33,10 @@ #include #include -#include -#include -#include -#include -#include +#include -#define __BT_FUNC_STATUS_ENABLE +#define __BT_IN_BABELTRACE_H #include -#undef __BT_FUNC_STATUS_ENABLE #include "common/assert.h" #include "common/macros.h" @@ -331,6 +326,30 @@ size_t bt_common_get_page_size(int log_level); BT_HIDDEN void bt_common_sep_digits(char *str, unsigned int digits_per_group, char sep); +/* + * This is similar to what the command `fold --spaces` does: it wraps + * the input lines of `str`, breaking at spaces, and indenting each line + * with `indent` spaces so that each line fits the total length + * `total_length`. + * + * If an original line in `str` contains a word which is >= the content + * length (`total_length - indent`), then the corresponding folded line + * is also larger than the content length. In other words, breaking at + * spaces is a best effort, but it might not be possible. + * + * The returned string, on success, is owned by the caller. + */ +BT_HIDDEN +GString *bt_common_fold(const char *str, unsigned int total_length, + unsigned int indent); + +/* + * Writes the terminal's width to `*width`, its height to `*height`, + * and returns 0 on success, or returns -1 on error. + */ +BT_HIDDEN +int bt_common_get_term_size(unsigned int *width, unsigned int *height); + /* * Wraps read() function to handle EINTR and partial reads. * On success, it returns `count` received as parameter. On error, it returns a @@ -560,8 +579,8 @@ const char *bt_common_logging_level_string( return "BT_LOGGING_LEVEL_DEBUG"; case BT_LOGGING_LEVEL_INFO: return "BT_LOGGING_LEVEL_INFO"; - case BT_LOGGING_LEVEL_WARN: - return "BT_LOGGING_LEVEL_WARN"; + case BT_LOGGING_LEVEL_WARNING: + return "BT_LOGGING_LEVEL_WARNING"; case BT_LOGGING_LEVEL_ERROR: return "BT_LOGGING_LEVEL_ERROR"; case BT_LOGGING_LEVEL_FATAL: @@ -697,6 +716,4 @@ end: return ret; } -#include - #endif /* BABELTRACE_COMMON_INTERNAL_H */