diff options
author | Josh Blum <josh@joshknows.com> | 2011-07-02 19:35:33 -0700 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2011-07-02 19:35:33 -0700 |
commit | 1ef40895952f94ccd21fca48033b5a14d7e4ff30 (patch) | |
tree | 9fc59f12a745cb6a0852c3645a8544100b0fabad /host/lib/usrp/e100/io_impl.cpp | |
parent | 4bcab9c56aad7e08bd392b82cc52ae2f4f5a830c (diff) | |
download | uhd-1ef40895952f94ccd21fca48033b5a14d7e4ff30.tar.gz uhd-1ef40895952f94ccd21fca48033b5a14d7e4ff30.tar.bz2 uhd-1ef40895952f94ccd21fca48033b5a14d7e4ff30.zip |
usrp1: tweaks + implemented other features to mimic async and inline messages
Moved the underflow/overflow polling into a thread and out of the fast-path.
Added an inline and async message queue into soft time control.
Error and status messages are actually generated now and enqueued.
Passes the async message test...
Diffstat (limited to 'host/lib/usrp/e100/io_impl.cpp')
-rw-r--r-- | host/lib/usrp/e100/io_impl.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/host/lib/usrp/e100/io_impl.cpp b/host/lib/usrp/e100/io_impl.cpp index 14b348f96..6e1bc3245 100644 --- a/host/lib/usrp/e100/io_impl.cpp +++ b/host/lib/usrp/e100/io_impl.cpp @@ -51,6 +51,11 @@ struct e100_impl::io_impl{ false_alarm(0), async_msg_fifo(100/*messages deep*/) { /* NOP */ } + ~io_impl(void){ + recv_pirate_crew.interrupt_all(); + recv_pirate_crew.join_all(); + } + double tick_rate; //set by update tick rate method e100_ctrl::sptr iface; //so handle irq can peek and poke void handle_irq(void); |