Undone last changes.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@14011 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
parent
76fd617d63
commit
adeb90f256
|
@ -82,25 +82,10 @@ typedef struct event_source {
|
||||||
*/
|
*/
|
||||||
typedef void (*evhandler_t)(eventid_t id);
|
typedef void (*evhandler_t)(eventid_t id);
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Event Handler extended dispatch function.
|
|
||||||
*/
|
|
||||||
typedef void (*evtdispatch_t)(eventid_t id, void* user);
|
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Module macros. */
|
/* Module macros. */
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Get listener mask.
|
|
||||||
*/
|
|
||||||
#define chEvtGetListenerMaskX(elp) ((elp)->wflags)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Set listener mask.
|
|
||||||
*/
|
|
||||||
#define chEvtSetListenerMaskX(elp, flags) ((elp)->wflags = (flags))
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief All events allowed mask.
|
* @brief All events allowed mask.
|
||||||
*/
|
*/
|
||||||
|
@ -150,9 +135,6 @@ extern "C" {
|
||||||
void chEvtBroadcastFlags(event_source_t *esp, eventflags_t flags);
|
void chEvtBroadcastFlags(event_source_t *esp, eventflags_t flags);
|
||||||
void chEvtBroadcastFlagsI(event_source_t *esp, eventflags_t flags);
|
void chEvtBroadcastFlagsI(event_source_t *esp, eventflags_t flags);
|
||||||
void chEvtDispatch(const evhandler_t *handlers, eventmask_t events);
|
void chEvtDispatch(const evhandler_t *handlers, eventmask_t events);
|
||||||
void chEvtUserDispatch(const evtdispatch_t *handlers,
|
|
||||||
eventmask_t events,
|
|
||||||
void* user);
|
|
||||||
#if (CH_CFG_OPTIMIZE_SPEED == TRUE) || (CH_CFG_USE_EVENTS_TIMEOUT == FALSE)
|
#if (CH_CFG_OPTIMIZE_SPEED == TRUE) || (CH_CFG_USE_EVENTS_TIMEOUT == FALSE)
|
||||||
eventmask_t chEvtWaitOne(eventmask_t events);
|
eventmask_t chEvtWaitOne(eventmask_t events);
|
||||||
eventmask_t chEvtWaitAny(eventmask_t events);
|
eventmask_t chEvtWaitAny(eventmask_t events);
|
||||||
|
|
|
@ -379,34 +379,6 @@ void chEvtDispatch(const evhandler_t *handlers, eventmask_t events) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Invokes event handlers associated with event flags mask with
|
|
||||||
* optional user data.
|
|
||||||
*
|
|
||||||
* @param[in] handlers an array of @p evtdispatch_t. The array must have size
|
|
||||||
* equal to the number of bits in @p eventmask_t.
|
|
||||||
* @param[in] events mask of events to be dispatched
|
|
||||||
* @param[in] user user defined field (normally pointer to data)
|
|
||||||
* .
|
|
||||||
* @api
|
|
||||||
*/
|
|
||||||
void chEvtUserDispatch(const evtdispatch_t *handlers,
|
|
||||||
eventmask_t events, void* user) {
|
|
||||||
eventid_t eid;
|
|
||||||
|
|
||||||
chDbgCheck(handlers != NULL);
|
|
||||||
|
|
||||||
eid = (eventid_t)0;
|
|
||||||
while (events != (eventmask_t)0) {
|
|
||||||
if ((events & EVENT_MASK(eid)) != (eventmask_t)0) {
|
|
||||||
chDbgAssert(handlers[eid] != NULL, "null handler");
|
|
||||||
events &= ~EVENT_MASK(eid);
|
|
||||||
handlers[eid](eid, user);
|
|
||||||
}
|
|
||||||
eid++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#if (CH_CFG_OPTIMIZE_SPEED == TRUE) || \
|
#if (CH_CFG_OPTIMIZE_SPEED == TRUE) || \
|
||||||
(CH_CFG_USE_EVENTS_TIMEOUT == FALSE) || \
|
(CH_CFG_USE_EVENTS_TIMEOUT == FALSE) || \
|
||||||
defined(__DOXYGEN__)
|
defined(__DOXYGEN__)
|
||||||
|
|
|
@ -74,7 +74,6 @@
|
||||||
*****************************************************************************
|
*****************************************************************************
|
||||||
|
|
||||||
*** Next ***
|
*** Next ***
|
||||||
- NEW: Added event listener flags get/set and dispatch() with user data
|
|
||||||
- NEW: Added chscanf() and buffered streams, contributed by Alex Lewontin.
|
- NEW: Added chscanf() and buffered streams, contributed by Alex Lewontin.
|
||||||
- NEW: Added option to LWIP bindings to use memory pools instead of heap
|
- NEW: Added option to LWIP bindings to use memory pools instead of heap
|
||||||
allocator.
|
allocator.
|
||||||
|
|
Loading…
Reference in New Issue