diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2019-07-22 18:10:52 +0200 |
---|---|---|
committer | pespin <pespin@sysmocom.de> | 2019-07-23 09:06:01 +0000 |
commit | 720b912ba9c8e51a40451e9cc44b3cc0bac698c2 (patch) | |
tree | a74e170f2862f33096b1587db2dbee91a7227d72 /Transceiver52M/Transceiver.h | |
parent | c3325b9aeb446f2cc888523d8c9f5f4ff3a39242 (diff) |
Transceiver: Clean up code passing parameters to threads
TransceiverChannel naming was misleading there. It's simply a data type
used to pass 2 parameters through the void* of the thread entry
function, so let's clearly specify is a storage for thread params.
Furthermore, we don't need a full C++ class for that, let's simply use a
struct.
Change-Id: I6e3898a8a66520cc5b2a7df9b9ae01b0b272387f
Diffstat (limited to 'Transceiver52M/Transceiver.h')
-rw-r--r-- | Transceiver52M/Transceiver.h | 40 |
1 files changed, 13 insertions, 27 deletions
diff --git a/Transceiver52M/Transceiver.h b/Transceiver52M/Transceiver.h index 8da52d1..18dc5f2 100644 --- a/Transceiver52M/Transceiver.h +++ b/Transceiver52M/Transceiver.h @@ -39,19 +39,9 @@ extern "C" { class Transceiver; /** Channel descriptor for transceiver object and channel number pair */ -struct TransceiverChannel { - TransceiverChannel(Transceiver *trx, int num) - { - this->trx = trx; - this->num = num; - } - - ~TransceiverChannel() - { - } - - Transceiver *trx; - size_t num; +struct TrxChanThParams { + Transceiver *trx; + size_t num; }; /** Internal transceiver state variables */ @@ -248,15 +238,11 @@ protected: */ bool driveTxPriorityQueue(size_t chan); - friend void *RxUpperLoopAdapter(TransceiverChannel *); - - friend void *TxUpperLoopAdapter(TransceiverChannel *); - - friend void *RxLowerLoopAdapter(Transceiver *); - - friend void *TxLowerLoopAdapter(Transceiver *); - - friend void *ControlServiceLoopAdapter(TransceiverChannel *); + friend void *RxUpperLoopAdapter(TrxChanThParams *params); + friend void *TxUpperLoopAdapter(TrxChanThParams *params); + friend void *RxLowerLoopAdapter(Transceiver *transceiver); + friend void *TxLowerLoopAdapter(Transceiver *transceiver); + friend void *ControlServiceLoopAdapter(TrxChanThParams *params); void reset(); @@ -267,14 +253,14 @@ protected: void logRxBurst(size_t chan, const struct trx_ul_burst_ind *bi); }; -void *RxUpperLoopAdapter(TransceiverChannel *); +void *RxUpperLoopAdapter(TrxChanThParams *params); /** Main drive threads */ -void *RxLowerLoopAdapter(Transceiver *); -void *TxLowerLoopAdapter(Transceiver *); +void *RxLowerLoopAdapter(Transceiver *transceiver); +void *TxLowerLoopAdapter(Transceiver *transceiver); /** control message handler thread loop */ -void *ControlServiceLoopAdapter(TransceiverChannel *); +void *ControlServiceLoopAdapter(TrxChanThParams *params); /** transmit queueing thread loop */ -void *TxUpperLoopAdapter(TransceiverChannel *); +void *TxUpperLoopAdapter(TrxChanThParams *params); |