X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=include%2Flttng%2Flttng.h;h=404a80117d50188f4d48491c7e65324862197087;hb=49cddecdbb1e042877ca3855b177ade68151030f;hp=9d15921770e8afd6b2cf9d5422f89d951e34049f;hpb=347f2c91cf45bc224d43465e4f3b279a0028f428;p=lttng-tools.git diff --git a/include/lttng/lttng.h b/include/lttng/lttng.h index 9d1592177..404a80117 100644 --- a/include/lttng/lttng.h +++ b/include/lttng/lttng.h @@ -3,7 +3,7 @@ * * Linux Trace Toolkit Control Library Header File * - * Copyright (C) 2011 David Goulet + * Copyright (C) 2011 EfficiOS Inc. * * SPDX-License-Identifier: LGPL-2.1-only * @@ -17,9 +17,10 @@ /* Include every LTTng ABI/API available. */ #include -#include -#include +#include #include +#include +#include #include #include #include @@ -30,28 +31,35 @@ #include #include #include -#include +#include #include #include #include #include #include #include +#include #include #include #include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include #include #include #include #include #include +#include #include #include #include @@ -68,15 +76,15 @@ extern "C" { #endif enum lttng_calibrate_type { - LTTNG_CALIBRATE_FUNCTION = 0, + LTTNG_CALIBRATE_FUNCTION = 0, }; /* Machine interface output type */ enum lttng_mi_output_type { - LTTNG_MI_XML = 1 /* XML output */ + LTTNG_MI_XML = 1 /* XML output */ }; -#define LTTNG_CALIBRATE_PADDING1 16 +#define LTTNG_CALIBRATE_PADDING1 16 struct lttng_calibrate { enum lttng_calibrate_type type; @@ -89,14 +97,14 @@ struct lttng_calibrate { * Return 1 if alive or 0 if not. On error, returns a negative negative LTTng * error code. */ -extern int lttng_session_daemon_alive(void); +LTTNG_EXPORT extern int lttng_session_daemon_alive(void); /* * Set the tracing group for the *current* flow of execution. * * On success, returns 0 else a negative LTTng error code. */ -extern int lttng_set_tracing_group(const char *name); +LTTNG_EXPORT extern int lttng_set_tracing_group(const char *name); /* * This call registers an "outside consumer" for a session and an lttng domain. @@ -108,15 +116,15 @@ extern int lttng_set_tracing_group(const char *name); * * Return 0 on success else a negative LTTng error code. */ -extern int lttng_register_consumer(struct lttng_handle *handle, - const char *socket_path); +LTTNG_EXPORT extern int lttng_register_consumer(struct lttng_handle *handle, + const char *socket_path); /* * Start tracing for *all* domain(s) in the session. * * Return 0 on success else a negative LTTng error code. */ -extern int lttng_start_tracing(const char *session_name); +LTTNG_EXPORT extern int lttng_start_tracing(const char *session_name); /* * Stop tracing for *all* domain(s) in the session. @@ -130,20 +138,23 @@ extern int lttng_start_tracing(const char *session_name); * * Return 0 on success else a negative LTTng error code. */ -extern int lttng_stop_tracing(const char *session_name); +LTTNG_EXPORT extern int lttng_stop_tracing(const char *session_name); /* * Behave exactly like lttng_stop_tracing but does not wait for data * availability. */ -extern int lttng_stop_tracing_no_wait(const char *session_name); +LTTNG_EXPORT extern int lttng_stop_tracing_no_wait(const char *session_name); /* * Deprecated: As of LTTng 2.9, this function always returns * -LTTNG_ERR_UND. */ -extern int lttng_calibrate(struct lttng_handle *handle, - struct lttng_calibrate *calibrate); +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wshadow" +LTTNG_EXPORT extern int lttng_calibrate(struct lttng_handle *handle, + struct lttng_calibrate *calibrate); +#pragma GCC diagnostic pop /* * Set URL for a consumer for a session and domain. @@ -169,8 +180,8 @@ extern int lttng_calibrate(struct lttng_handle *handle, * * Return 0 on success else a negative LTTng error code. */ -extern int lttng_set_consumer_url(struct lttng_handle *handle, - const char *control_url, const char *data_url); +LTTNG_EXPORT extern int +lttng_set_consumer_url(struct lttng_handle *handle, const char *control_url, const char *data_url); /* * For a given session name, this call checks if the data is ready to be read @@ -182,13 +193,20 @@ extern int lttng_set_consumer_url(struct lttng_handle *handle, * traced data is pending. On error, a negative value is returned and readable * by lttng_strerror(). */ -extern int lttng_data_pending(const char *session_name); +LTTNG_EXPORT extern int lttng_data_pending(const char *session_name); + +/* + * Gets the status of the kernel tracer. + * + * Sets the value of the argument, which must not be null. + */ +LTTNG_EXPORT extern enum lttng_error_code lttng_get_kernel_tracer_status(enum lttng_kernel_tracer_status *status); /* * Deprecated, replaced by lttng_regenerate_metadata. */ -LTTNG_DEPRECATED() -extern int lttng_metadata_regenerate(const char *session_name); +LTTNG_DEPRECATED("Use lttng_regenerate_metadata") +LTTNG_EXPORT extern int lttng_metadata_regenerate(const char *session_name); /* * Trigger the regeneration of the metadata for a session. @@ -196,7 +214,7 @@ extern int lttng_metadata_regenerate(const char *session_name); * the lttng-relayd). Only kernel, per-uid and non-live sessions are supported. * Return 0 on success, a negative LTTng error code on error. */ -extern int lttng_regenerate_metadata(const char *session_name); +LTTNG_EXPORT extern int lttng_regenerate_metadata(const char *session_name); /* * Trigger the regeneration of the statedump for a session. The new statedump @@ -205,7 +223,7 @@ extern int lttng_regenerate_metadata(const char *session_name); * * Return 0 on success, a negative LTTng error code on error. */ -extern int lttng_regenerate_statedump(const char *session_name); +LTTNG_EXPORT extern int lttng_regenerate_statedump(const char *session_name); #ifdef __cplusplus }