kirr has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmocom-bb/+/40084?usp=email )
Change subject: trx_toolkit/transceiver: Switch Transceiver ._rx_freq ._tx_freq from
object to int
......................................................................
trx_toolkit/transceiver: Switch Transceiver ._rx_freq ._tx_freq from object to int
This are integer fields, assigning C-level type avoids py-related
overhead on access and arithmetics. This fields are frequently used by
BurstForwarder when checking if src and dst trx frequencies match each other.
Change-Id: Ie9fb076837afe8921b7c5f5022bfad41f7a30e48
---
M src/target/trx_toolkit/transceiver.pxd
M src/target/trx_toolkit/transceiver.pyx
2 files changed, 9 insertions(+), 9 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/84/40084/1
diff --git a/src/target/trx_toolkit/transceiver.pxd
b/src/target/trx_toolkit/transceiver.pxd
index 562cb34..fa025bb 100644
--- a/src/target/trx_toolkit/transceiver.pxd
+++ b/src/target/trx_toolkit/transceiver.pxd
@@ -26,8 +26,8 @@
object child_trx_list # TRXList
# Actual RX / TX frequencies
- object _rx_freq # None if unset
- object _tx_freq # None if unset
+ int _rx_freq # -1 if unset
+ int _tx_freq # -1 if unset
bint rf_muted
@@ -47,8 +47,8 @@
list[TxMsg] _tx_queue
- cdef get_rx_freq(self, int64_t fn)
- cpdef get_tx_freq(self, int64_t fn)
+ cdef int get_rx_freq(self, int64_t fn) except -1
+ cpdef int get_tx_freq(self, int64_t fn) except -1
cdef TxMsg recv_data_msg(self)
cdef send_data_msg(self, RxMsg msg)
diff --git a/src/target/trx_toolkit/transceiver.pyx
b/src/target/trx_toolkit/transceiver.pyx
index b28dee8..901a637 100644
--- a/src/target/trx_toolkit/transceiver.pyx
+++ b/src/target/trx_toolkit/transceiver.pyx
@@ -143,8 +143,8 @@
"""
def __cinit__(self):
- self._rx_freq = None
- self._tx_freq = None
+ self._rx_freq = -1
+ self._tx_freq = -1
self.rf_muted = False
self.running = False
@@ -206,14 +206,14 @@
@property
def ready(self):
# Make sure that either both Rx/Tx frequencies are set
- if self._rx_freq is None or self._tx_freq is None:
+ if self._rx_freq < 0 or self._tx_freq < 0:
# ... or frequency hopping is in use
if self.fh is None:
return False
return True
- cdef get_rx_freq(self, int64_t fn):
+ cdef int get_rx_freq(self, int64_t fn) except -1:
if self.fh is None:
return self._rx_freq
@@ -221,7 +221,7 @@
(rx_freq, _) = self.fh.resolve(fn)
return rx_freq
- cpdef get_tx_freq(self, int64_t fn):
+ cpdef int get_tx_freq(self, int64_t fn) except -1:
if self.fh is None:
return self._tx_freq
--
To view, visit
https://gerrit.osmocom.org/c/osmocom-bb/+/40084?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Ie9fb076837afe8921b7c5f5022bfad41f7a30e48
Gerrit-Change-Number: 40084
Gerrit-PatchSet: 1
Gerrit-Owner: kirr <kirr(a)nexedi.com>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: osmith <osmith(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>