SoDaRadio-5.0.3-master:8901fb5
|
#include <MultiMBox.hxx>
Classes | |
class | Subscriber |
Public Member Functions | |
MultiMBox (bool _keep_freelist=true) | |
int | subscribe () |
int | getSubscriberCount () |
void | put (T *m) |
T * | get (unsigned int subscriber_id) |
T * | getWait (unsigned int subscriber_id) |
void | free (T *m) |
T * | alloc () |
void | addToPool (T *v) |
unsigned int | inFlightCount () |
bool | flush (unsigned int subscriber_id) |
flush all items from this mailbox for this subscriber More... | |
Private Member Functions | |
T * | getCommon (unsigned int subscriber_id, bool wait) |
Private Attributes | |
unsigned int | subscriber_count |
bool | keep_freelist |
std::map< int, Subscriber * > | subscribers |
std::queue< MBoxMessage * > | free_list |
boost::mutex | free_lock |
Definition at line 81 of file MultiMBox.hxx.
|
inline |
Definition at line 83 of file MultiMBox.hxx.
|
inline |
Definition at line 146 of file MultiMBox.hxx.
|
inline |
Definition at line 134 of file MultiMBox.hxx.
Referenced by SoDa::CWGenerator::getFreeSoDaBuf(), SoDa::BaseBandTX::modulateAM(), SoDa::BaseBandTX::modulateFM(), and SoDa::USRPRX::run().
|
inline |
flush all items from this mailbox for this subscriber
subscriber_id | oddly named, this is the identity of the requesting subscriber. |
Definition at line 182 of file MultiMBox.hxx.
Referenced by SoDa::USRPTX::transmitSwitch().
|
inline |
Definition at line 118 of file MultiMBox.hxx.
Referenced by SoDa::UI::run(), SoDa::GPSmon::run(), SoDa::TestServer::run(), SoDa::CWTX::run(), SoDa::USRPRX::run(), SoDa::USRPTX::run(), SoDa::BaseBandTX::run(), SoDa::USRPCtrl::run(), and SoDa::BaseBandRX::run().
|
inline |
Definition at line 110 of file MultiMBox.hxx.
Referenced by SoDa::UI::run(), SoDa::GPSmon::run(), SoDa::TestServer::run(), SoDa::CWTX::run(), SoDa::USRPRX::run(), SoDa::USRPTX::run(), SoDa::BaseBandTX::run(), SoDa::USRPCtrl::run(), and SoDa::BaseBandRX::run().
|
inlineprivate |
Definition at line 192 of file MultiMBox.hxx.
|
inline |
Definition at line 95 of file MultiMBox.hxx.
Referenced by SoDa::USRPRX::run().
|
inline |
Definition at line 114 of file MultiMBox.hxx.
|
inline |
Definition at line 153 of file MultiMBox.hxx.
Referenced by SoDa::CWGenerator::readyForMore().
|
inline |
Definition at line 97 of file MultiMBox.hxx.
Referenced by SoDa::CWGenerator::appendToOut(), SoDa::CWTX::clearTextQueue(), SoDa::USRPTX::execGetCommand(), SoDa::BaseBandRX::execGetCommand(), SoDa::USRPCtrl::execGetCommand(), SoDa::CWTX::execRepCommand(), SoDa::BaseBandTX::execSetCommand(), SoDa::USRPTX::execSetCommand(), SoDa::BaseBandRX::execSetCommand(), SoDa::USRPCtrl::execSetCommand(), SoDa::CWGenerator::flushBuffer(), main(), SoDa::BaseBandRX::repAFFilterShape(), SoDa::USRPCtrl::reportAFFilters(), SoDa::USRPCtrl::reportAntennas(), SoDa::USRPCtrl::reportModes(), SoDa::UI::run(), SoDa::GPSmon::run(), SoDa::USRPRX::run(), SoDa::USRPTX::run(), SoDa::BaseBandTX::run(), SoDa::USRPCtrl::run(), SoDa::CWTX::sendAvailChar(), SoDa::UI::sendFFT(), SoDa::USRPCtrl::set1stLOFreq(), SoDa::USRPCtrl::setTransverterLOFreqPower(), and SoDa::UI::updateSpectrumState().
|
inline |
Definition at line 88 of file MultiMBox.hxx.
Referenced by SoDa::BaseBandRX::BaseBandRX(), SoDa::BaseBandTX::BaseBandTX(), SoDa::CWTX::CWTX(), SoDa::GPSmon::GPSmon(), SoDaTest::MultiMBox_Test_Thread::subscribe(), SoDa::TestServer::TestServer(), SoDa::UI::UI(), SoDa::USRPCtrl::USRPCtrl(), SoDa::USRPRX::USRPRX(), and SoDa::USRPTX::USRPTX().
|
private |
Definition at line 236 of file MultiMBox.hxx.
|
private |
Definition at line 237 of file MultiMBox.hxx.
|
private |
Definition at line 224 of file MultiMBox.hxx.
|
private |
Definition at line 223 of file MultiMBox.hxx.
|
private |
Definition at line 234 of file MultiMBox.hxx.