summaryrefslogtreecommitdiff
path: root/gr-fec/python/fec/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'gr-fec/python/fec/__init__.py')
-rw-r--r--gr-fec/python/fec/__init__.py50
1 files changed, 47 insertions, 3 deletions
diff --git a/gr-fec/python/fec/__init__.py b/gr-fec/python/fec/__init__.py
index eda8316a0d..2ca049a380 100644
--- a/gr-fec/python/fec/__init__.py
+++ b/gr-fec/python/fec/__init__.py
@@ -15,12 +15,56 @@ from __future__ import absolute_import
from __future__ import unicode_literals
try:
- from .fec_swig import *
+ from .fec_python import *
except ImportError:
import os
dirname, filename = os.path.split(os.path.abspath(__file__))
- __path__.append(os.path.join(dirname, "..", "..", "swig"))
- from .fec_swig import *
+ __path__.append(os.path.join(dirname, "bindings"))
+ from .fec_python import *
+
+# Pybind cannot bind constructors to make functions that return a different type
+# Remap make functions to __init__ here
+
+cc_encoder = code.cc_encoder
+cc_encoder.__init__ = code.cc_encoder.make
+cc_encoder_make = code.cc_encoder.make
+
+cc_decoder = code.cc_decoder
+cc_decoder.__init__ = code.cc_decoder.make
+cc_decoder_make = code.cc_decoder.make
+
+dummy_encoder = code.dummy_encoder
+dummy_encoder.__init__ = code.dummy_encoder.make
+dummy_encoder_make = code.dummy_encoder.make
+
+dummy_decoder = code.dummy_decoder
+dummy_decoder.__init__ = code.dummy_decoder.make
+dummy_decoder_make = code.dummy_decoder.make
+
+repetition_encoder = code.repetition_encoder
+repetition_encoder.__init__ = code.repetition_encoder.make
+repetition_encoder_make = code.repetition_encoder.make
+
+repetition_decoder = code.repetition_decoder
+repetition_decoder.__init__ = code.repetition_decoder.make
+repetition_decoder_make = code.repetition_decoder.make
+
+polar_encoder = code.polar_encoder
+polar_encoder.__init__ = code.polar_encoder.make
+polar_encoder_make = code.polar_encoder.make
+
+polar_encoder_systematic = code.polar_encoder_systematic
+polar_encoder_systematic.__init__ = code.polar_encoder_systematic.make
+polar_encoder_systematic_make = code.polar_encoder_systematic.make
+
+
+ldpc_H_matrix = code.ldpc_H_matrix
+ldpc_G_matrix = code.ldpc_G_matrix
+ldpc_par_mtrx_encoder = code.ldpc_par_mtrx_encoder
+ldpc_bit_flip_decoder = code.ldpc_bit_flip_decoder
+polar_decoder_sc = code.polar_decoder_sc
+polar_decoder_sc_list = code.polar_decoder_sc_list
+polar_decoder_sc_systematic = code.polar_decoder_sc_systematic
from .bitflip import *
from .extended_encoder import extended_encoder