From: Mathieu Desnoyers Date: Fri, 13 May 2011 07:29:57 +0000 (-0400) Subject: Move declarations to global header X-Git-Tag: v2.0-pre1~158 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=c0edae1dda4cc03efda4790b57db0c3f9684486f;p=lttng-modules.git Move declarations to global header Signed-off-by: Mathieu Desnoyers --- diff --git a/ltt-events.h b/ltt-events.h index 443d185c..9e0ad2d7 100644 --- a/ltt-events.h +++ b/ltt-events.h @@ -72,6 +72,77 @@ struct ltt_transport { struct ltt_channel_ops ops; }; +/* Type description */ + +/* Update the astract_types name table in lttng-types.c along with this enum */ +enum abstract_types { + atype_integer, + atype_enum, + atype_array, + atype_sequence, + atype_string, + NR_ABSTRACT_TYPES, +}; + +/* Update the string_encodings name table in lttng-types.c along with this enum */ +enum lttng_string_encodings { + lttng_encode_UTF8 = 0, + lttng_encode_ASCII = 1, + NR_STRING_ENCODINGS, +}; + +struct lttng_enum_entry { + unsigned long long start, end; /* start and end are inclusive */ + const char *string; +}; + +struct lttng_enum { + const struct lttng_enum_entry *entries; + unsigned int len; +}; + +struct lttng_type { + enum abstract_types atype; + const char *name; + union { + struct { + unsigned int size; /* in bits */ + unsigned short alignment; /* in bits */ + unsigned int signedness:1; + unsigned int reverse_byte_order:1; + } integer; + struct { + const char *parent_type; + const struct lttng_enum def; + } enumeration; + struct { + const char *elem_type; + unsigned int length; /* num. elems. */ + } array; + struct { + const char *elem_type; + const char *length_type; + } sequence; + struct { + enum lttng_string_encodings encoding; + } string; + } u; +} __attribute__((packed)); + +/* Event field description */ + +struct lttng_event_field { + const char *name; + const struct lttng_type type; +}; + +struct lttng_event_desc { + const struct lttng_event_field *fields; + const char *name; + void *probe_callback; + unsigned int nr_fields; +}; + struct ltt_session *ltt_session_create(void); int ltt_session_start(struct ltt_session *session); int ltt_session_stop(struct ltt_session *session); diff --git a/probes/lttng-events.h b/probes/lttng-events.h index a47320b1..3a5a3b9c 100644 --- a/probes/lttng-events.h +++ b/probes/lttng-events.h @@ -1,23 +1,11 @@ -#include -#include #include +#include "lttng.h" +#include "lttng-types.h" #include "../wrapper/vmalloc.h" /* for wrapper_vmalloc_sync_all() */ #include "../wrapper/ringbuffer/frontend_types.h" #include "../ltt-events.h" #include "../ltt-tracer-core.h" -struct lttng_event_field { - const char *name; - const struct lttng_type type; -}; - -struct lttng_event_desc { - const struct lttng_event_field *fields; - const char *name; - void *probe_callback; - unsigned int nr_fields; -}; - /* * Macro declarations used for all stages. */ diff --git a/probes/lttng-types.h b/probes/lttng-types.h index 0192bffa..cbe1dea1 100644 --- a/probes/lttng-types.h +++ b/probes/lttng-types.h @@ -6,7 +6,8 @@ #define _LTTNG_PROBES_LTTNG_TYPES_H #include -#include +#include "lttng.h" +#include "../ltt-events.h" #ifdef __KERNEL__ # include @@ -27,61 +28,6 @@ # include #endif -/* Update the astract_types name table in lttng-types.c along with this enum */ -enum abstract_types { - atype_integer, - atype_enum, - atype_array, - atype_sequence, - atype_string, - NR_ABSTRACT_TYPES, -}; - -/* Update the string_encodings name table in lttng-types.c along with this enum */ -enum lttng_string_encodings { - lttng_encode_UTF8 = 0, - lttng_encode_ASCII = 1, - NR_STRING_ENCODINGS, -}; - -struct lttng_enum_entry { - unsigned long long start, end; /* start and end are inclusive */ - const char *string; -}; - -struct lttng_enum { - const struct lttng_enum_entry *entries; - unsigned int len; -}; - -struct lttng_type { - enum abstract_types atype; - const char *name; - union { - struct { - unsigned int size; /* in bits */ - unsigned short alignment; /* in bits */ - unsigned int signedness:1; - unsigned int reverse_byte_order:1; - } integer; - struct { - const char *parent_type; - const struct lttng_enum def; - } enumeration; - struct { - const char *elem_type; - unsigned int length; /* num. elems. */ - } array; - struct { - const char *elem_type; - const char *length_type; - } sequence; - struct { - enum lttng_string_encodings encoding; - } string; - } u; -} __attribute__((packed)); - void lttng_print_event_type(struct seq_file *m, unsigned int indent, const struct lttng_type *type);