summaryrefslogtreecommitdiff
path: root/gr-vocoder/swig/vocoder_swig.i
diff options
context:
space:
mode:
Diffstat (limited to 'gr-vocoder/swig/vocoder_swig.i')
-rw-r--r--gr-vocoder/swig/vocoder_swig.i65
1 files changed, 50 insertions, 15 deletions
diff --git a/gr-vocoder/swig/vocoder_swig.i b/gr-vocoder/swig/vocoder_swig.i
index dac35c9cd4..1bf451539d 100644
--- a/gr-vocoder/swig/vocoder_swig.i
+++ b/gr-vocoder/swig/vocoder_swig.i
@@ -1,6 +1,6 @@
/* -*- c++ -*- */
/*
- * Copyright 2011,2013 Free Software Foundation, Inc.
+ * Copyright 2011,2013,2016 Free Software Foundation, Inc.
*
* This file is part of GNU Radio
*
@@ -30,9 +30,6 @@
%{
#include "gnuradio/vocoder/alaw_decode_bs.h"
#include "gnuradio/vocoder/alaw_encode_sb.h"
-#include "gnuradio/vocoder/codec2.h"
-#include "gnuradio/vocoder/codec2_decode_ps.h"
-#include "gnuradio/vocoder/codec2_encode_sp.h"
#include "gnuradio/vocoder/cvsd_decode_bs.h"
#include "gnuradio/vocoder/cvsd_encode_sb.h"
#include "gnuradio/vocoder/g721_decode_bs.h"
@@ -41,17 +38,12 @@
#include "gnuradio/vocoder/g723_24_encode_sb.h"
#include "gnuradio/vocoder/g723_40_decode_bs.h"
#include "gnuradio/vocoder/g723_40_encode_sb.h"
-#include "gnuradio/vocoder/gsm_fr_decode_ps.h"
-#include "gnuradio/vocoder/gsm_fr_encode_sp.h"
#include "gnuradio/vocoder/ulaw_decode_bs.h"
#include "gnuradio/vocoder/ulaw_encode_sb.h"
%}
%include "gnuradio/vocoder/alaw_decode_bs.h"
%include "gnuradio/vocoder/alaw_encode_sb.h"
-%include "gnuradio/vocoder/codec2.h"
-%include "gnuradio/vocoder/codec2_decode_ps.h"
-%include "gnuradio/vocoder/codec2_encode_sp.h"
%include "gnuradio/vocoder/cvsd_decode_bs.h"
%include "gnuradio/vocoder/cvsd_encode_sb.h"
%include "gnuradio/vocoder/g721_decode_bs.h"
@@ -60,15 +52,11 @@
%include "gnuradio/vocoder/g723_24_encode_sb.h"
%include "gnuradio/vocoder/g723_40_decode_bs.h"
%include "gnuradio/vocoder/g723_40_encode_sb.h"
-%include "gnuradio/vocoder/gsm_fr_decode_ps.h"
-%include "gnuradio/vocoder/gsm_fr_encode_sp.h"
%include "gnuradio/vocoder/ulaw_decode_bs.h"
%include "gnuradio/vocoder/ulaw_encode_sb.h"
GR_SWIG_BLOCK_MAGIC2(vocoder, alaw_decode_bs);
GR_SWIG_BLOCK_MAGIC2(vocoder, alaw_encode_sb);
-GR_SWIG_BLOCK_MAGIC2(vocoder, codec2_decode_ps);
-GR_SWIG_BLOCK_MAGIC2(vocoder, codec2_encode_sp);
GR_SWIG_BLOCK_MAGIC2(vocoder, cvsd_decode_bs);
GR_SWIG_BLOCK_MAGIC2(vocoder, cvsd_encode_sb);
GR_SWIG_BLOCK_MAGIC2(vocoder, g721_decode_bs);
@@ -77,7 +65,54 @@ GR_SWIG_BLOCK_MAGIC2(vocoder, g723_24_decode_bs);
GR_SWIG_BLOCK_MAGIC2(vocoder, g723_24_encode_sb);
GR_SWIG_BLOCK_MAGIC2(vocoder, g723_40_decode_bs);
GR_SWIG_BLOCK_MAGIC2(vocoder, g723_40_encode_sb);
-GR_SWIG_BLOCK_MAGIC2(vocoder, gsm_fr_decode_ps);
-GR_SWIG_BLOCK_MAGIC2(vocoder, gsm_fr_encode_sp);
GR_SWIG_BLOCK_MAGIC2(vocoder, ulaw_decode_bs);
GR_SWIG_BLOCK_MAGIC2(vocoder, ulaw_encode_sb);
+
+#ifdef LIBCODEC2_FOUND
+%{
+#include <codec2/codec2.h>
+#include "gnuradio/vocoder/codec2.h"
+#include "gnuradio/vocoder/codec2_decode_ps.h"
+#include "gnuradio/vocoder/codec2_encode_sp.h"
+%}
+
+%include <codec2/codec2.h>
+%include "gnuradio/vocoder/codec2.h"
+%include "gnuradio/vocoder/codec2_decode_ps.h"
+%include "gnuradio/vocoder/codec2_encode_sp.h"
+
+GR_SWIG_BLOCK_MAGIC2(vocoder, codec2_decode_ps);
+GR_SWIG_BLOCK_MAGIC2(vocoder, codec2_encode_sp);
+#endif
+
+#ifdef LIBCODEC2_HAS_FREEDV_API
+%{
+#include <codec2/freedv_api.h>
+#include "gnuradio/vocoder/freedv_api.h"
+#include "gnuradio/vocoder/freedv_rx_ss.h"
+#include "gnuradio/vocoder/freedv_tx_ss.h"
+%}
+
+%ignore freedv_set_smooth_symbols;
+%ignore freedv_set_clip;
+%include <codec2/freedv_api.h>
+%include "gnuradio/vocoder/freedv_api.h"
+%include "gnuradio/vocoder/freedv_rx_ss.h"
+%include "gnuradio/vocoder/freedv_tx_ss.h"
+
+GR_SWIG_BLOCK_MAGIC2(vocoder, freedv_rx_ss);
+GR_SWIG_BLOCK_MAGIC2(vocoder, freedv_tx_ss);
+#endif
+
+#ifdef LIBGSM_FOUND
+%{
+#include "gnuradio/vocoder/gsm_fr_decode_ps.h"
+#include "gnuradio/vocoder/gsm_fr_encode_sp.h"
+%}
+
+%include "gnuradio/vocoder/gsm_fr_decode_ps.h"
+%include "gnuradio/vocoder/gsm_fr_encode_sp.h"
+
+GR_SWIG_BLOCK_MAGIC2(vocoder, gsm_fr_decode_ps);
+GR_SWIG_BLOCK_MAGIC2(vocoder, gsm_fr_encode_sp);
+#endif