kirr has uploaded this change for review.

View Change

trx_toolkit/data_if: Switch DATAInterface to cdef class

- Put fields into the object struct; fields are now accessed directly
via that C-level struct instead of via __dict__ lookup
- cimport instead of import DATAInterface at the users

Change-Id: I7126dd1c2cb4583adee92e2db8786146236e3b13
---
A src/target/trx_toolkit/data_if.pxd
M src/target/trx_toolkit/data_if.pyx
M src/target/trx_toolkit/transceiver.pyx
3 files changed, 8 insertions(+), 3 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/56/40056/1
diff --git a/src/target/trx_toolkit/data_if.pxd b/src/target/trx_toolkit/data_if.pxd
new file mode 100644
index 0000000..03a11c5
--- /dev/null
+++ b/src/target/trx_toolkit/data_if.pxd
@@ -0,0 +1,6 @@
+# cython: language_level=3
+
+from udp_link cimport UDPLink
+
+cdef class DATAInterface(UDPLink):
+ cdef readonly int _hdr_ver
diff --git a/src/target/trx_toolkit/data_if.pyx b/src/target/trx_toolkit/data_if.pyx
index 8dcc4dc..5ae2bc1 100644
--- a/src/target/trx_toolkit/data_if.pyx
+++ b/src/target/trx_toolkit/data_if.pyx
@@ -20,10 +20,9 @@

import logging as log

-from udp_link cimport UDPLink
from data_msg import *

-class DATAInterface(UDPLink):
+cdef class DATAInterface(UDPLink):
def __init__(self, *udp_link_args):
# Default header version (legacy)
self._hdr_ver = 0x00
diff --git a/src/target/trx_toolkit/transceiver.pyx b/src/target/trx_toolkit/transceiver.pyx
index 519eb4b..a11a319 100644
--- a/src/target/trx_toolkit/transceiver.pyx
+++ b/src/target/trx_toolkit/transceiver.pyx
@@ -22,7 +22,7 @@
import logging as log

from ctrl_if_trx import CTRLInterfaceTRX
-from data_if import DATAInterface
+from data_if cimport DATAInterface
from udp_link cimport UDPLink
from trx_list import TRXList


To view, visit change 40056. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: I7126dd1c2cb4583adee92e2db8786146236e3b13
Gerrit-Change-Number: 40056
Gerrit-PatchSet: 1
Gerrit-Owner: kirr <kirr@nexedi.com>
Gerrit-CC: fixeria <vyanitskiy@sysmocom.de>
Gerrit-CC: osmith <osmith@sysmocom.de>
Gerrit-CC: pespin <pespin@sysmocom.de>