X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=lttng-events.h;h=9e05e2f9a56b044c8c690fbbc2ac75a3889d2c58;hb=601252cfa07fa29f15c769fe3f4cf4419311d6f9;hp=5d0ef4dc72b307881e57c730be87e385929b6164;hpb=f64dd4be1e73872c4eebe25f37b96e2a03de079b;p=lttng-modules.git diff --git a/lttng-events.h b/lttng-events.h index 5d0ef4dc..9e05e2f9 100644 --- a/lttng-events.h +++ b/lttng-events.h @@ -69,8 +69,13 @@ enum channel_type { METADATA_CHANNEL, }; +struct lttng_enum_value { + unsigned long long value; + unsigned int signedness:1; +}; + struct lttng_enum_entry { - unsigned long long start, end; /* start and end are inclusive */ + struct lttng_enum_value start, end; /* start and end are inclusive */ const char *string; }; @@ -101,7 +106,8 @@ struct lttng_integer_type { union _lttng_basic_type { struct lttng_integer_type integer; struct { - const char *name; + const struct lttng_enum_desc *desc; /* Enumeration mapping */ + struct lttng_integer_type container_type; } enumeration; struct { enum lttng_string_encodings encoding; @@ -149,11 +155,10 @@ struct lttng_type { } u; }; -struct lttng_enum { +struct lttng_enum_desc { const char *name; - struct lttng_type container_type; const struct lttng_enum_entry *entries; - unsigned int len; + unsigned int nr_entries; }; /* Event field description */ @@ -528,6 +533,7 @@ int lttng_session_enable(struct lttng_session *session); int lttng_session_disable(struct lttng_session *session); void lttng_session_destroy(struct lttng_session *session); int lttng_session_metadata_regenerate(struct lttng_session *session); +int lttng_session_statedump(struct lttng_session *session); void metadata_cache_destroy(struct kref *kref); struct lttng_channel *lttng_channel_create(struct lttng_session *session,