aboutsummaryrefslogtreecommitdiffstats
path: root/os/various/cpp_wrappers/ch.cpp
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2013-01-02 10:47:01 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2013-01-02 10:47:01 +0000
commitd51863a3536e813374f0c56c0034421cbe965ad6 (patch)
tree4756be949a21f9fb7fc05fd1374644751107b5f1 /os/various/cpp_wrappers/ch.cpp
parent64e7fd5a530201190720c8b25535998c9ebf8e84 (diff)
downloadChibiOS-d51863a3536e813374f0c56c0034421cbe965ad6.tar.gz
ChibiOS-d51863a3536e813374f0c56c0034421cbe965ad6.tar.bz2
ChibiOS-d51863a3536e813374f0c56c0034421cbe965ad6.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@5013 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/various/cpp_wrappers/ch.cpp')
-rw-r--r--os/various/cpp_wrappers/ch.cpp34
1 files changed, 16 insertions, 18 deletions
diff --git a/os/various/cpp_wrappers/ch.cpp b/os/various/cpp_wrappers/ch.cpp
index 99f7440c9..1ada921da 100644
--- a/os/various/cpp_wrappers/ch.cpp
+++ b/os/various/cpp_wrappers/ch.cpp
@@ -281,6 +281,12 @@ namespace chibios_rt {
return chEvtWaitAllTimeout(ewmask, time);
}
#endif /* CH_USE_EVENTS_TIMEOUT */
+
+ void BaseThread::dispatchEvents(const evhandler_t handlers[],
+ eventmask_t mask) {
+
+ chEvtDispatch(handlers, mask);
+ }
#endif /* CH_USE_EVENTS */
#if CH_USE_SEMAPHORES
@@ -384,55 +390,47 @@ namespace chibios_rt {
#if CH_USE_EVENTS
/*------------------------------------------------------------------------*
- * chibios_rt::EventListener *
+ * chibios_rt::EvtListener *
*------------------------------------------------------------------------*/
- flagsmask_t EventListener::getAndClearFlags(void) {
+ flagsmask_t EvtListener::getAndClearFlags(void) {
return chEvtGetAndClearFlags(&ev_listener);
}
/*------------------------------------------------------------------------*
- * chibios_rt::EventSource *
+ * chibios_rt::EvtSource *
*------------------------------------------------------------------------*/
- EventSource::EventSource(void) {
+ EvtSource::EvtSource(void) {
- ev_source.es_next = (::EventListener *)(void *)&ev_source;
+ chEvtInit(&ev_source);
}
- void EventSource::registerOne(chibios_rt::EventListener *elp,
+ void EvtSource::registerOne(chibios_rt::EvtListener *elp,
eventid_t eid) {
chEvtRegister(&ev_source, &elp->ev_listener, eid);
}
- void EventSource::registerMask(chibios_rt::EventListener *elp,
+ void EvtSource::registerMask(chibios_rt::EvtListener *elp,
eventmask_t emask) {
chEvtRegisterMask(&ev_source, &elp->ev_listener, emask);
}
- void EventSource::unregister(chibios_rt::EventListener *elp) {
+ void EvtSource::unregister(chibios_rt::EvtListener *elp) {
chEvtUnregister(&ev_source, &elp->ev_listener);
}
- void EventSource::broadcastFlags(flagsmask_t flags) {
+ void EvtSource::broadcastFlags(flagsmask_t flags) {
chEvtBroadcastFlags(&ev_source, flags);
}
- void EventSource::broadcastFlagsI(flagsmask_t flags) {
+ void EvtSource::broadcastFlagsI(flagsmask_t flags) {
chEvtBroadcastFlagsI(&ev_source, flags);
}
-
- /*------------------------------------------------------------------------*
- * chibios_rt::Event *
- *------------------------------------------------------------------------*/
- void Event::dispatch(const evhandler_t handlers[], eventmask_t mask) {
-
- chEvtDispatch(handlers, mask);
- }
#endif /* CH_USE_EVENTS */
}