X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fust-clock.hpp;fp=src%2Fbin%2Flttng-sessiond%2Fust-clock.hpp;h=3807f40a3127c5348c26d6222ed8abfc81264b55;hp=0000000000000000000000000000000000000000;hb=c9e313bc594f40a86eed237dce222c0fc99c957f;hpb=4878de5c7deb512bbdac4fdfc498907efa06fb7c diff --git a/src/bin/lttng-sessiond/ust-clock.hpp b/src/bin/lttng-sessiond/ust-clock.hpp new file mode 100644 index 000000000..3807f40a3 --- /dev/null +++ b/src/bin/lttng-sessiond/ust-clock.hpp @@ -0,0 +1,102 @@ +/* + * Copyright (C) 2010 Pierre-Marc Fournier + * Copyright (C) 2011 Mathieu Desnoyers + * + * SPDX-License-Identifier: GPL-2.0-only + * + */ + +#ifndef _UST_CLOCK_H +#define _UST_CLOCK_H + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +static __inline__ +uint64_t trace_clock_read64(void) +{ + uint64_t clock_value = 0; + lttng_ust_clock_read64_function read64_cb; + + if (lttng_ust_trace_clock_get_read64_cb(&read64_cb)) { + goto end; + } + + clock_value = read64_cb(); +end: + return clock_value; +} + +static __inline__ +uint64_t trace_clock_freq(void) +{ + uint64_t frequency = 0; + lttng_ust_clock_freq_function get_freq_cb; + + if (lttng_ust_trace_clock_get_freq_cb(&get_freq_cb)) { + goto end; + } + + frequency = get_freq_cb(); +end: + return frequency; +} + +static __inline__ +int trace_clock_uuid(char *uuid) +{ + int ret; + lttng_ust_clock_uuid_function get_uuid_cb; + + if (lttng_ust_trace_clock_get_uuid_cb(&get_uuid_cb)) { + ret = -EINVAL; + goto end; + } + + ret = get_uuid_cb(uuid); +end: + return ret; + +} + +static __inline__ +const char *trace_clock_name(void) +{ + const char *name; + lttng_ust_clock_name_function get_name_cb; + + if (lttng_ust_trace_clock_get_name_cb(&get_name_cb)) { + name = NULL; + goto end; + } + + name = get_name_cb(); +end: + return name; +} + +static __inline__ +const char *trace_clock_description(void) +{ + const char *description; + lttng_ust_clock_description_function get_description_cb; + + if (lttng_ust_trace_clock_get_description_cb(&get_description_cb)) { + description = NULL; + goto end; + } + + description = get_description_cb(); +end: + return description; +} + +#endif /* _UST_CLOCK_H */