aboutsummaryrefslogtreecommitdiffstats
path: root/python/__init__.py
blob: 87a62d6cd1783f0a7a6a3b269b74bafdf6417027 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#
# Copyright 2008,2009 Free Software Foundation, Inc.
#
# This application is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# This application is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#

# The presence of this file turns this directory into a Python package

'''
This is the GNU Radio GSM module. Place your Python package
description here (python/__init__.py).
'''

import os

if "CMAKE_BINARY_DIR" in os.environ:
    dirname, filename = os.path.split(os.path.abspath(__file__))

    # As the directory structure in the repository is different then the one after the package
    # gets installed we need to add those subdirectories to the __path__ otherwise python3 is
    # not able to load the modules using the relative import syntax and grcc compilation and
    # some unit tests fail.
    __path__ += [
        # Load the local (not yet installed) grgsm_swig from the ../swig subdirectory.
        os.path.join(os.environ.get("CMAKE_BINARY_DIR"), "swig"),

        # Load the local (not yet installed) python modules from the local subdirectories
        os.path.join(dirname, "misc_utils"),
        os.path.join(dirname, "receiver"),
        os.path.join(dirname, "demapping"),
        os.path.join(dirname, "transmitter"),
        os.path.join(dirname, "trx")]

# import swig generated symbols into the gsm namespace
from .grgsm_swig import *

# import any pure python here

#from fcch_burst_tagger import fcch_burst_tagger
#from sch_detector import sch_detector
#from fcch_detector import fcch_detector
from .clock_offset_corrector_tagged import clock_offset_corrector_tagged
from .gsm_input import gsm_input
from .gsm_bcch_ccch_demapper import gsm_bcch_ccch_demapper
from .gsm_bcch_ccch_sdcch4_demapper import gsm_bcch_ccch_sdcch4_demapper
from .gsm_sdcch8_demapper import gsm_sdcch8_demapper
from .gsm_gmsk_mod import gsm_gmsk_mod
from .fn_time import *
from .txtime_bursts_tagger import *
from .arfcn import *
from .device import *