- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#ifndef _LTTNG_H
-#define _LTTNG_H
-
-#include <asm/types.h>
-#include <sys/types.h>
-#include <stdint.h>
-#include <limits.h>
-
-/* Default unix group name for tracing. */
-#define LTTNG_DEFAULT_TRACING_GROUP "tracing"
-
-/* Environment variable to set session daemon binary path. */
-#define LTTNG_SESSIOND_PATH_ENV "LTTNG_SESSIOND_PATH"
-
-/* Default trace output directory name */
-#define LTTNG_DEFAULT_TRACE_DIR_NAME "lttng-traces"
-
-/*
- * Event symbol length. Copied from LTTng kernel ABI.
- */
-#define LTTNG_SYMBOL_NAME_LEN 128
-
-/*
- * Every lttng_event_* structure both apply to kernel event and user-space
- * event.
- */
-
-/*
- * Domain type are the different possible tracers.
- */
-enum lttng_domain_type {
- LTTNG_DOMAIN_KERNEL,
- LTTNG_DOMAIN_UST,
- LTTNG_DOMAIN_UST_EXEC_NAME,
- LTTNG_DOMAIN_UST_PID,
- LTTNG_DOMAIN_UST_PID_FOLLOW_CHILDREN,
+ * 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.
+ *
+ * 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
+ */
+
+#ifndef LTTNG_H
+#define LTTNG_H
+
+/* Error codes that can be returned by API calls */
+#include <lttng/lttng-error.h>
+
+/* Include every LTTng ABI/API available. */
+#include <lttng/channel.h>
+#include <lttng/domain.h>
+#include <lttng/event.h>
+#include <lttng/handle.h>
+#include <lttng/health.h>
+#include <lttng/save.h>
+#include <lttng/session.h>
+#include <lttng/snapshot.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+enum lttng_calibrate_type {
+ LTTNG_CALIBRATE_FUNCTION = 0,