X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fmi-lttng.c;h=2fb1c19050da82acc07ac1ec9f89b22cb0c01c59;hp=453be4f28f387881b2856a2ffb715afab8f3ddf8;hb=7e66b1b0255bbe6b5a55a83d3ff182ba3d4300ee;hpb=1cfc0bc8024dbe354bfe6c351cf00188d1f02763 diff --git a/src/common/mi-lttng.c b/src/common/mi-lttng.c index 453be4f28..2fb1c1905 100644 --- a/src/common/mi-lttng.c +++ b/src/common/mi-lttng.c @@ -25,12 +25,16 @@ /* Strings related to command */ const char * const mi_lttng_element_command = "command"; +const char * const mi_lttng_element_command_name = "name"; const char * const mi_lttng_element_command_version = "version"; const char * const mi_lttng_element_command_list = "list"; const char * const mi_lttng_element_command_save = "save"; const char * const mi_lttng_element_command_load = "load"; -const char * const mi_lttng_element_command_name = "name"; const char * const mi_lttng_element_command_start = "start"; +const char * const mi_lttng_element_command_stop = "stop"; +const char * const mi_lttng_element_command_create = "create"; +const char * const mi_lttng_element_command_destroy = "destroy"; +const char * const mi_lttng_element_command_calibrate = "calibrate"; const char * const mi_lttng_element_command_output = "output"; const char * const mi_lttng_element_command_success = "success"; @@ -92,6 +96,10 @@ const char * const mi_lttng_loglevel_type_range = "RANGE"; const char * const mi_lttng_loglevel_type_single = "SINGLE"; const char * const mi_lttng_loglevel_type_unknown = "UNKNOWN"; +/* String related to lttng_calibrate */ +const char * const mi_lttng_element_calibrate = "calibrate"; +const char * const mi_lttng_element_calibrate_function = "FUNCTION"; + const char * const mi_lttng_element_empty = ""; const char *mi_lttng_loglevel_string(int value) @@ -217,6 +225,21 @@ const char *mi_lttng_buffertype_string(enum lttng_buffer_type value) } } +const char *mi_lttng_calibratetype_string(enum lttng_calibrate_type val) +{ + const char *ret; + + switch (val) { + case LTTNG_CALIBRATE_FUNCTION: + ret = mi_lttng_element_calibrate_function; + break; + default: + ret = mi_lttng_element_empty; + break; + } + return ret; +} + LTTNG_HIDDEN struct mi_writer *mi_lttng_writer_create(int fd_output, int mi_output_type) { @@ -966,3 +989,28 @@ close: end: return ret; } + +LTTNG_HIDDEN +int mi_lttng_calibrate(struct mi_writer *writer, + struct lttng_calibrate *calibrate) +{ + int ret; + + /* Open calibrate element */ + ret = mi_lttng_writer_open_element(writer, mi_lttng_element_calibrate); + if (ret) { + goto end; + } + + /* Calibration type */ + ret = mi_lttng_writer_write_element_string(writer, config_element_type, + mi_lttng_calibratetype_string(calibrate->type)); + if (ret) { + goto end; + } + + /* Closing calibrate element */ + ret = mi_lttng_writer_close_element(writer); +end: + return ret; +}