blob: ca987b82147821402640e182ef5213daf003d9d0 [file] [log] [blame]
ptrkrysik3be74a72014-12-13 10:11:00 +01001/* -*- c++ -*- */
2
Piotr Krysikaf8ad5d2016-05-29 13:05:48 +02003#define GRGSM_API
ptrkrysik3be74a72014-12-13 10:11:00 +01004
5%include "gnuradio.i" // the common stuff
6
7//load generated python docstrings
8%include "grgsm_swig_doc.i"
9
10%{
11#include "grgsm/receiver/receiver.h"
ptrkrysikf8c7e832015-04-04 12:28:20 +020012#include "grgsm/receiver/clock_offset_control.h"
rpp4f0f3b52015-06-10 10:23:30 +020013#include "grgsm/receiver/cx_channel_hopper.h"
ptrkrysik18b631e2014-12-15 09:09:18 +010014#include "grgsm/decoding/control_channels_decoder.h"
Roman Khassraf059bab92015-05-20 12:49:46 +020015#include "grgsm/decoding/tch_f_decoder.h"
ptrkrysik18b631e2014-12-15 09:09:18 +010016#include "grgsm/decryption/decryption.h"
ptrkrysik3be74a72014-12-13 10:11:00 +010017#include "grgsm/demapping/universal_ctrl_chans_demapper.h"
Roman Khassraffb6bc502015-04-14 15:44:40 +020018#include "grgsm/demapping/tch_f_chans_demapper.h"
Roman Khassrafdbc3a502015-08-03 23:20:20 +020019#include "grgsm/flow_control/burst_timeslot_splitter.h"
Roman Khassrafa1eb1882015-08-05 12:30:29 +020020#include "grgsm/flow_control/burst_sdcch_subslot_splitter.h"
Roman Khassrafd7e3eec2015-08-06 11:54:22 +020021#include "grgsm/flow_control/burst_timeslot_filter.h"
Roman Khassraf8b64d872015-08-06 17:30:04 +020022#include "grgsm/flow_control/burst_sdcch_subslot_filter.h"
Roman Khassraf8e3b0ec2015-08-04 11:16:04 +020023#include "grgsm/flow_control/burst_fnr_filter.h"
Roman Khassraf7cccb522015-08-04 12:26:54 +020024#include "grgsm/flow_control/dummy_burst_filter.h"
Piotr Krysika3405b22016-08-30 21:31:24 +020025#include "grgsm/flow_control/uplink_downlink_splitter.h"
ptrkrysik3be74a72014-12-13 10:11:00 +010026#include "grgsm/misc_utils/bursts_printer.h"
ptrkrysik3be74a72014-12-13 10:11:00 +010027#include "grgsm/misc_utils/controlled_rotator_cc.h"
28#include "grgsm/misc_utils/extract_system_info.h"
Roman Khassraf5bd14f22015-06-24 17:59:13 +020029#include "grgsm/misc_utils/extract_immediate_assignment.h"
ptrkrysik3be74a72014-12-13 10:11:00 +010030#include "grgsm/misc_utils/message_printer.h"
ptrkrysik89847582015-01-15 11:48:20 +010031#include "grgsm/misc_utils/tmsi_dumper.h"
Roman Khassraf1c3419e2015-08-03 10:58:57 +020032#include "grgsm/misc_utils/burst_file_sink.h"
33#include "grgsm/misc_utils/burst_file_source.h"
Roman Khassraf1ce44692015-08-03 11:16:10 +020034#include "grgsm/qa_utils/burst_sink.h"
35#include "grgsm/qa_utils/burst_source.h"
Roman Khassrafb8f49092015-08-03 10:08:18 +020036#include "grgsm/qa_utils/message_source.h"
37#include "grgsm/qa_utils/message_sink.h"
Roman Khassrafc3234542015-08-03 16:17:46 +020038#include "grgsm/misc_utils/message_file_sink.h"
39#include "grgsm/misc_utils/message_file_source.h"
Piotr Krysik89ff8992016-07-18 10:24:35 +020040#include "grgsm/misc_utils/msg_to_tag.h"
41#include "grgsm/misc_utils/controlled_fractional_resampler_cc.h"
ptrkrysik3be74a72014-12-13 10:11:00 +010042%}
43
ptrkrysik3be74a72014-12-13 10:11:00 +010044%include "grgsm/receiver/receiver.h"
45GR_SWIG_BLOCK_MAGIC2(gsm, receiver);
ptrkrysikf8c7e832015-04-04 12:28:20 +020046%include "grgsm/receiver/clock_offset_control.h"
47GR_SWIG_BLOCK_MAGIC2(gsm, clock_offset_control);
rpp4f0f3b52015-06-10 10:23:30 +020048%include "grgsm/receiver/cx_channel_hopper.h"
49GR_SWIG_BLOCK_MAGIC2(gsm, cx_channel_hopper);
ptrkrysik3be74a72014-12-13 10:11:00 +010050
51%include "grgsm/decoding/control_channels_decoder.h"
52GR_SWIG_BLOCK_MAGIC2(gsm, control_channels_decoder);
Roman Khassraf059bab92015-05-20 12:49:46 +020053%include "grgsm/decoding/tch_f_decoder.h"
54GR_SWIG_BLOCK_MAGIC2(gsm, tch_f_decoder);
ptrkrysik3be74a72014-12-13 10:11:00 +010055
ptrkrysik18b631e2014-12-15 09:09:18 +010056%include "grgsm/decryption/decryption.h"
57GR_SWIG_BLOCK_MAGIC2(gsm, decryption);
58
ptrkrysik3be74a72014-12-13 10:11:00 +010059%include "grgsm/demapping/universal_ctrl_chans_demapper.h"
60GR_SWIG_BLOCK_MAGIC2(gsm, universal_ctrl_chans_demapper);
Roman Khassraffb6bc502015-04-14 15:44:40 +020061%include "grgsm/demapping/tch_f_chans_demapper.h"
62GR_SWIG_BLOCK_MAGIC2(gsm, tch_f_chans_demapper);
ptrkrysik3be74a72014-12-13 10:11:00 +010063
Roman Khassrafdbc3a502015-08-03 23:20:20 +020064%include "grgsm/flow_control/burst_timeslot_splitter.h"
65GR_SWIG_BLOCK_MAGIC2(gsm, burst_timeslot_splitter);
Roman Khassrafa1eb1882015-08-05 12:30:29 +020066%include "grgsm/flow_control/burst_sdcch_subslot_splitter.h"
67GR_SWIG_BLOCK_MAGIC2(gsm, burst_sdcch_subslot_splitter);
Roman Khassrafd7e3eec2015-08-06 11:54:22 +020068%include "grgsm/flow_control/burst_timeslot_filter.h"
69GR_SWIG_BLOCK_MAGIC2(gsm, burst_timeslot_filter);
Roman Khassraf8b64d872015-08-06 17:30:04 +020070%include "grgsm/flow_control/burst_sdcch_subslot_filter.h"
71GR_SWIG_BLOCK_MAGIC2(gsm, burst_sdcch_subslot_filter);
Roman Khassraf8e3b0ec2015-08-04 11:16:04 +020072%include "grgsm/flow_control/burst_fnr_filter.h"
73GR_SWIG_BLOCK_MAGIC2(gsm, burst_fnr_filter);
Roman Khassraf7cccb522015-08-04 12:26:54 +020074%include "grgsm/flow_control/dummy_burst_filter.h"
75GR_SWIG_BLOCK_MAGIC2(gsm, dummy_burst_filter);
Piotr Krysika3405b22016-08-30 21:31:24 +020076%include "grgsm/flow_control/uplink_downlink_splitter.h"
77GR_SWIG_BLOCK_MAGIC2(grgsm, uplink_downlink_splitter);
78
Roman Khassrafdbc3a502015-08-03 23:20:20 +020079
ptrkrysik3be74a72014-12-13 10:11:00 +010080%include "grgsm/misc_utils/bursts_printer.h"
81GR_SWIG_BLOCK_MAGIC2(gsm, bursts_printer);
Roman Khassraf1c3419e2015-08-03 10:58:57 +020082%include "grgsm/misc_utils/burst_file_sink.h"
83GR_SWIG_BLOCK_MAGIC2(gsm, burst_file_sink);
84%include "grgsm/misc_utils/burst_file_source.h"
85GR_SWIG_BLOCK_MAGIC2(gsm, burst_file_source);
ptrkrysik3be74a72014-12-13 10:11:00 +010086%include "grgsm/misc_utils/extract_system_info.h"
87GR_SWIG_BLOCK_MAGIC2(gsm, extract_system_info);
Roman Khassraf5bd14f22015-06-24 17:59:13 +020088%include "grgsm/misc_utils/extract_immediate_assignment.h"
89GR_SWIG_BLOCK_MAGIC2(gsm, extract_immediate_assignment);
ptrkrysik3be74a72014-12-13 10:11:00 +010090%include "grgsm/misc_utils/controlled_rotator_cc.h"
91GR_SWIG_BLOCK_MAGIC2(gsm, controlled_rotator_cc);
ptrkrysik3be74a72014-12-13 10:11:00 +010092%include "grgsm/misc_utils/message_printer.h"
93GR_SWIG_BLOCK_MAGIC2(gsm, message_printer);
ptrkrysik89847582015-01-15 11:48:20 +010094%include "grgsm/misc_utils/tmsi_dumper.h"
95GR_SWIG_BLOCK_MAGIC2(gsm, tmsi_dumper);
Roman Khassrafc3234542015-08-03 16:17:46 +020096%include "grgsm/misc_utils/message_file_sink.h"
97GR_SWIG_BLOCK_MAGIC2(gsm, message_file_sink);
98%include "grgsm/misc_utils/message_file_source.h"
99GR_SWIG_BLOCK_MAGIC2(gsm, message_file_source);
Piotr Krysik89ff8992016-07-18 10:24:35 +0200100%include "grgsm/misc_utils/msg_to_tag.h"
101GR_SWIG_BLOCK_MAGIC2(gsm, msg_to_tag);
102%include "grgsm/misc_utils/controlled_fractional_resampler_cc.h"
103GR_SWIG_BLOCK_MAGIC2(gsm, controlled_fractional_resampler_cc);
104
Roman Khassrafb8f49092015-08-03 10:08:18 +0200105
Roman Khassraf1ce44692015-08-03 11:16:10 +0200106%include "grgsm/qa_utils/burst_sink.h"
107GR_SWIG_BLOCK_MAGIC2(gsm, burst_sink);
108%include "grgsm/qa_utils/burst_source.h"
109GR_SWIG_BLOCK_MAGIC2(gsm, burst_source);
Roman Khassrafb8f49092015-08-03 10:08:18 +0200110%include "grgsm/qa_utils/message_source.h"
Roman Khassrafadea86f2015-07-27 15:52:02 +0200111GR_SWIG_BLOCK_MAGIC2(gsm, message_source);
Roman Khassrafb8f49092015-08-03 10:08:18 +0200112%include "grgsm/qa_utils/message_sink.h"
Roman Khassraf1e82b8d2015-07-29 11:01:34 +0200113GR_SWIG_BLOCK_MAGIC2(gsm, message_sink);