X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=include%2Flttng%2Fevent-rule%2Fevent-rule-internal.h;h=acd84827c1552aab0c87fa4f5911f49475eb0556;hb=0f7c296359bf90005e1dadf2d7a02a4b223a8031;hp=a8ad34fe897728731fd9bb4b0d468bbb90a4292e;hpb=44760c20f4fc255b63894ca758cf2ee5f253220b;p=lttng-tools.git diff --git a/include/lttng/event-rule/event-rule-internal.h b/include/lttng/event-rule/event-rule-internal.h index a8ad34fe8..acd84827c 100644 --- a/include/lttng/event-rule/event-rule-internal.h +++ b/include/lttng/event-rule/event-rule-internal.h @@ -22,6 +22,7 @@ struct lttng_payload; struct lttng_payload_view; +struct mi_writer; enum lttng_event_rule_generate_exclusions_status { LTTNG_EVENT_RULE_GENERATE_EXCLUSIONS_STATUS_OK, @@ -46,7 +47,7 @@ typedef enum lttng_error_code (*event_rule_generate_filter_bytecode_cb)( const struct lttng_credentials *creds); typedef const char *(*event_rule_get_filter_cb)( const struct lttng_event_rule *event_rule); -typedef const struct lttng_filter_bytecode *( +typedef const struct lttng_bytecode *( *event_rule_get_filter_bytecode_cb)( const struct lttng_event_rule *event_rule); typedef enum lttng_event_rule_generate_exclusions_status ( @@ -57,6 +58,9 @@ typedef unsigned long (*event_rule_hash_cb)( const struct lttng_event_rule *event_rule); typedef struct lttng_event *(*event_rule_generate_lttng_event_cb)( const struct lttng_event_rule *event_rule); +typedef enum lttng_error_code (*event_rule_mi_serialize_cb)( + const struct lttng_event_rule *event_rule, + struct mi_writer *writer); struct lttng_event_rule { struct urcu_ref ref; @@ -71,6 +75,7 @@ struct lttng_event_rule { event_rule_generate_exclusions_cb generate_exclusions; event_rule_hash_cb hash; event_rule_generate_lttng_event_cb generate_lttng_event; + event_rule_mi_serialize_cb mi_serialize; }; struct lttng_event_rule_comm { @@ -126,7 +131,7 @@ const char *lttng_event_rule_get_filter(const struct lttng_event_rule *rule); * Caller DOES NOT own the returned object. */ LTTNG_HIDDEN -const struct lttng_filter_bytecode *lttng_event_rule_get_filter_bytecode( +const struct lttng_bytecode *lttng_event_rule_get_filter_bytecode( const struct lttng_event_rule *rule); /* @@ -161,4 +166,8 @@ struct lttng_event *lttng_event_rule_generate_lttng_event( LTTNG_HIDDEN bool lttng_event_rule_targets_agent_domain(const struct lttng_event_rule *rule); +LTTNG_HIDDEN +enum lttng_error_code lttng_event_rule_mi_serialize( + const struct lttng_event_rule *rule, struct mi_writer *writer); + #endif /* LTTNG_EVENT_RULE_INTERNAL_H */