Closed
Description
Brief feature description
So far the new API allows for "normal" polling access and the usage in combination with a waitset. It shall also support the registration of callbacks similar to the old API
Detailed information
The old API had the receive handler for this see. But instead of a thread per subscriber we should go for a thread in the runtime that handles the callbacks (could even be extended to a configurable thread pool in future)
-
callbacks available for modern C++ API
-
callbacks available for C API
ToDo
- Write design proposal with an usage example
-
enableEvent
in WaitSet attachable classes should have a signature so that they can be reused by the ReactAl. Change the signature to:
/// @return invalidation callback used by the WaitSet and ReactAl
cxx::MethodCallback<void, uint64_t> enableEvent(
const EventTypeEnum event,
iox::popo::TriggerHandle & triggerHandle);
- Implement design proposal
- Rename
ActiveCallSet
intoListener
[ ] Create use case based comparison table between WaitSet and callback proposal-> Extend documentation for 1.0 release and website #482- Update example and write a user documentation
- Add hint that the Listener does not take ownership of the callback. (In doxygen and user docu)
- Rename EventInfo into NotificationInfo
- Update design document to be in sync with the final implementation
[ ] Update Waitset and Listener section in overview.md-> Extend documentation for 1.0 release and website #482- Separate WaitSet State enums from Listener Event enums (
STATE_HAS_DATA
,EVENT_DATA_RECEIVED
) -
hasTriggered
/resetTrigger
refactoring in user trigger since it is automatically resetted
Minor ToDo
[ ]-> Consolidate index queue and loffli #680active_call_set.hpp
maybe merge indexmanager functionality into loffli- Remove
doesContainEventVariable
fromTriggerHandle
. - Remove
setEventVariable
fromChunkQueuePopper
. [ ] Consider using the-> Consolidate index queue and loffli #680index_queue
instead ofloffli
asactive_call_set
indexmanager- do not iterate over array in
addEvent
ask event origin instead if event is already attached
Activity