void ctl_message_queue_setup_events(CTL_MESSAGE_QUEUE_t *q, CTL_EVENT_SET_t *e, CTL_EVENT_SET_t notempty, CTL_EVENT_SET_t notfull);
ctl_message_queue_setup_events registers events in the event set e that are set when the message queue q becomes notempty or becomes notfull. No scheduling will occur with this operation, you need to do this before waiting for events.