Refactoring: introduce lttng_get_event_ht_from_enabler
[lttng-modules.git] / include / lttng / events-internal.h
index 3c741e66171ff3291f0835204c798ba46c2c4c8e..8bfe094a21df14f622093ca2327f7413e394ea50 100644 (file)
@@ -594,6 +594,27 @@ struct lttng_event_enabler_common *lttng_event_notifier_enabler_as_enabler(
        return &event_notifier_enabler->parent;
 }
 
+static inline
+struct lttng_event_ht *lttng_get_event_ht_from_enabler(struct lttng_event_enabler_common *event_enabler)
+{
+       switch (event_enabler->enabler_type) {
+       case LTTNG_EVENT_ENABLER_TYPE_RECORDER:
+       {
+               struct lttng_event_recorder_enabler *event_recorder_enabler =
+                       container_of(event_enabler, struct lttng_event_recorder_enabler, parent);
+               return &event_recorder_enabler->chan->parent.session->priv->events_ht;
+       }
+       case LTTNG_EVENT_ENABLER_TYPE_NOTIFIER:
+       {
+               struct lttng_event_notifier_enabler *event_notifier_enabler =
+                       container_of(event_enabler, struct lttng_event_notifier_enabler, parent);
+               return &event_notifier_enabler->group->events_ht;
+       }
+       default:
+               return NULL;
+       }
+}
+
 int lttng_context_init(void);
 void lttng_context_exit(void);
 int lttng_kernel_context_append(struct lttng_kernel_ctx **ctx_p,
This page took 0.023648 seconds and 4 git commands to generate.