Hi,
Hi sel4 experts,
I started playing around with camkes using signals / events , data providers and connections between 3 different components. I tried to generate a component that can receive events from two different endpoints by registering a callback for both endpoints.
echo_reg_callback(callback_handler_EchoIn, NULL); echo1_reg_callback(callback_handler_EchoOut, NULL);
component Echo { ………... consumes TheEvent echo; consumes TheEvent echo1; ……………... } assembly { composition { ………….. connection seL4Notification echo_event_in(from producer.echo, to echo.echo); connection seL4Notification echo_event_out(from consumer.echo1, to echo.echo1); …………. }
Everything compiles without errors. But, if I start now the simulation I noticed that event .echo1 is never received by the Echo C component.
Also I noticed that the connection seems to be depending on the event name. If I rename the echo event I also miss that event.
So my question: How can I make the second event (echo1) received by the echo C component?
The architecture that you have described should generate the behavior that you are expecting. Having 2 emitters linked up to a single receiver that registers 2 handlers, 1 for each event type, would experience the handler getting called once for each incoming event. I can't easily see what is causing your issue without more source code, but you could maybe try disabling each connection and see if you receive each different event individually before enabling them both.
Thanks for your help. Florian
Thanks, Kent.