#define LTTNG_HEALTH_H
/*
- * Copyright (C) 2012 - David Goulet <dgoulet@efficios.com>
- * Copyright (C) 2013 - Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+ * Copyright (C) 2012 David Goulet <dgoulet@efficios.com>
+ * Copyright (C) 2013 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
*
- * This library is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License, version 2.1 only,
- * as published by the Free Software Foundation.
+ * SPDX-License-Identifier: LGPL-2.1-only
*
- * This library is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include <lttng/lttng-export.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
struct lttng_health;
struct lttng_health_thread;
*
* Return a newly allocated health object, or NULL on error.
*/
-struct lttng_health *lttng_health_create_sessiond(void);
+LTTNG_EXPORT extern struct lttng_health *lttng_health_create_sessiond(void);
/**
* lttng_health_create_consumerd - Create consumerd health object
*
* Return a newly allocated health object, or NULL on error.
*/
-struct lttng_health *
+LTTNG_EXPORT extern struct lttng_health *
lttng_health_create_consumerd(enum lttng_health_consumerd consumerd);
/**
*
* Return a newly allocated health object, or NULL on error.
*/
-struct lttng_health *lttng_health_create_relayd(const char *path);
+LTTNG_EXPORT extern struct lttng_health *lttng_health_create_relayd(const char *path);
/**
* lttng_health_destroy - Destroy health object
* @health: health object to destroy
*/
-void lttng_health_destroy(struct lttng_health *health);
+LTTNG_EXPORT extern void lttng_health_destroy(struct lttng_health *health);
/**
* lttng_health_query - Query component health
* reports if the query has been successfully performed, *NOT* the
* actual state. lttng_health_state() should be used for the latter.
*/
-int lttng_health_query(struct lttng_health *health);
+LTTNG_EXPORT extern int lttng_health_query(struct lttng_health *health);
/**
* lttng_health_state - Inspect the state of a health structure
* thread in error. It also returns a negative return value if
* lttng_health_query() has not yet successfully completed on @health.
*/
-int lttng_health_state(const struct lttng_health *health);
+LTTNG_EXPORT extern int lttng_health_state(const struct lttng_health *health);
/**
* lttng_health_get_nr_threads - Get number of threads in health component
* Return the number of threads (>= 0) on success, else negative value
* on error.
*/
-int lttng_health_get_nr_threads(const struct lttng_health *health);
+LTTNG_EXPORT extern int lttng_health_get_nr_threads(const struct lttng_health *health);
/**
* lttng_health_get_thread - Get thread health
* pointer should not be freed by the caller, and can be used until
* lttng_health_destroy() is called on @health.
*/
-const struct lttng_health_thread *
+LTTNG_EXPORT extern const struct lttng_health_thread *
lttng_health_get_thread(const struct lttng_health *health,
unsigned int nth_thread);
*
* Return 0 if thread is OK, else negative error value.
*/
-int lttng_health_thread_state(const struct lttng_health_thread *thread);
+LTTNG_EXPORT extern int lttng_health_thread_state(const struct lttng_health_thread *thread);
/**
* lttng_health_thread_name - Get thread name
*
* Return thread name, NULL on error.
*/
-const char *lttng_health_thread_name(const struct lttng_health_thread *thread);
+LTTNG_EXPORT extern const char *lttng_health_thread_name(const struct lttng_health_thread *thread);
+
+#ifdef __cplusplus
+}
+#endif
#endif /* LTTNG_HEALTH_H */