X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Findex-allocator.h;h=93ab5ddd5e1483cd268e1129d5565c5d70cdb1e6;hp=3da733e9ef03db82c4f08a33345de07dbef0df8a;hb=4bd69c5f1161cd065f487da0f4c1aa03a73c47e4;hpb=246611b0dffa58fbc0e2329ddf6f9dc9d9eff7ce diff --git a/src/common/index-allocator.h b/src/common/index-allocator.h index 3da733e9e..93ab5ddd5 100644 --- a/src/common/index-allocator.h +++ b/src/common/index-allocator.h @@ -9,6 +9,11 @@ #define _COMMON_INDEX_ALLOCATOR_H #include +#include + +#ifdef __cplusplus +extern "C" { +#endif struct lttng_index_allocator; @@ -21,19 +26,19 @@ enum lttng_index_allocator_status { /* * Create an index allocator of `index_count` slots. */ -struct lttng_index_allocator *lttng_index_allocator_create( +LTTNG_EXPORT struct lttng_index_allocator *lttng_index_allocator_create( uint64_t index_count); /* * Get the number of indexes currently in use. */ -uint64_t lttng_index_allocator_get_index_count( +LTTNG_EXPORT uint64_t lttng_index_allocator_get_index_count( struct lttng_index_allocator *allocator); /* * Allocate (i.e. reserve) a slot. */ -enum lttng_index_allocator_status lttng_index_allocator_alloc( +LTTNG_EXPORT enum lttng_index_allocator_status lttng_index_allocator_alloc( struct lttng_index_allocator *allocator, uint64_t *index); @@ -41,12 +46,16 @@ enum lttng_index_allocator_status lttng_index_allocator_alloc( * Release a slot by index. The slot will be re-used by the index allocator * in future 'alloc' calls. */ -enum lttng_index_allocator_status lttng_index_allocator_release( +LTTNG_EXPORT enum lttng_index_allocator_status lttng_index_allocator_release( struct lttng_index_allocator *allocator, uint64_t index); /* * Destroy an index allocator. */ -void lttng_index_allocator_destroy(struct lttng_index_allocator *allocator); +LTTNG_EXPORT void lttng_index_allocator_destroy(struct lttng_index_allocator *allocator); + +#ifdef __cplusplus +} +#endif #endif /* _COMMON_INDEX_ALLOCATOR_H */