diff --git a/external/liquid-dsp/config.h b/external/liquid-dsp/config.h index f37b08b..14ecf50 100644 --- a/external/liquid-dsp/config.h +++ b/external/liquid-dsp/config.h @@ -159,6 +159,9 @@ /* Force overriding of SIMD (use portable C code) */ /* #undef LIQUID_SIMDOVERRIDE */ +/* Enable strict program exit on error */ +/* #undef LIQUID_STRICT_EXIT */ + /* Define to the address where bug reports for this package should be sent. */ #define PACKAGE_BUGREPORT "joseph@liquidsdr.org" diff --git a/external/liquid-dsp/gcc/32/libliquid.a b/external/liquid-dsp/gcc/32/libliquid.a index dda4900..c722d04 100644 Binary files a/external/liquid-dsp/gcc/32/libliquid.a and b/external/liquid-dsp/gcc/32/libliquid.a differ diff --git a/external/liquid-dsp/gcc/32/libliquid.dll b/external/liquid-dsp/gcc/32/libliquid.dll index 0093ec9..a971845 100644 Binary files a/external/liquid-dsp/gcc/32/libliquid.dll and b/external/liquid-dsp/gcc/32/libliquid.dll differ diff --git a/external/liquid-dsp/gcc/64/libliquid.a b/external/liquid-dsp/gcc/64/libliquid.a index 04ccb27..6e5ca82 100644 Binary files a/external/liquid-dsp/gcc/64/libliquid.a and b/external/liquid-dsp/gcc/64/libliquid.a differ diff --git a/external/liquid-dsp/gcc/64/libliquid.dll b/external/liquid-dsp/gcc/64/libliquid.dll index 9ea312f..5312c31 100644 Binary files a/external/liquid-dsp/gcc/64/libliquid.dll and b/external/liquid-dsp/gcc/64/libliquid.dll differ diff --git a/external/liquid-dsp/include/liquid/liquid.h b/external/liquid-dsp/include/liquid/liquid.h index 45ffd9e..7c650fd 100644 --- a/external/liquid-dsp/include/liquid/liquid.h +++ b/external/liquid-dsp/include/liquid/liquid.h @@ -72,6 +72,64 @@ int liquid_libversion_number(void); exit(1); \ } \ +// basic error types +#define LIQUID_NUM_ERRORS 12 +typedef enum { + // everything ok + LIQUID_OK=0, + + // internal logic error; this is a bug with liquid and should be reported immediately + LIQUID_EINT, + + // invalid object, examples: + // - destroy() method called on NULL pointer + LIQUID_EIOBJ, + + // invalid parameter, or configuration; examples: + // - setting bandwidth of a filter to a negative number + // - setting FFT size to zero + // - create a spectral periodogram object with window size greater than nfft + LIQUID_EICONFIG, + + // input out of range; examples: + // - try to take log of -1 + // - try to create an FFT plan of size zero + LIQUID_EIVAL, + + // invalid vector length or dimension; examples + // - trying to refer to the 17th element of a 2 x 2 matrix + // - trying to multiply two matrices of incompatible dimensions + LIQUID_EIRANGE, + + // invalid mode; examples: + // - try to create a modem of type 'LIQUID_MODEM_XXX' which does not exit + LIQUID_EIMODE, + + // unsupported mode (e.g. LIQUID_FEC_CONV_V27 with 'libfec' not installed) + LIQUID_EUMODE, + + // object has not been created or properly initialized + // - try to run firfilt_crcf_execute(NULL, ...) + // - try to modulate using an arbitrary modem without initializing the constellation + LIQUID_ENOINIT, + + // not enough memory allocated for operation; examples: + // - try to factor 100 = 2*2*5*5 but only give 3 spaces for factors + LIQUID_EIMEM, + + // file input/output; examples: + // - could not open a file for writing because of insufficient permissions + // - could not open a file for reading because it does not exist + // - try to read more data than a file has space for + // - could not parse line in file (improper formatting) + LIQUID_EIO, + +} liquid_error_code; + +// error descriptions +extern const char * liquid_error_str[LIQUID_NUM_ERRORS]; +const char * liquid_error_info(liquid_error_code _code); + #define LIQUID_CONCAT(prefix, name) prefix ## name #define LIQUID_VALIDATE_INPUT @@ -128,27 +186,27 @@ typedef struct AGC(_s) * AGC(); \ AGC() AGC(_create)(void); \ \ /* Destroy object, freeing all internally-allocated memory. */ \ -void AGC(_destroy)(AGC() _q); \ +int AGC(_destroy)(AGC() _q); \ \ /* Print object properties to stdout, including received signal */ \ /* strength indication (RSSI), loop bandwidth, lock status, and squelch */ \ /* status. */ \ -void AGC(_print)(AGC() _q); \ +int AGC(_print)(AGC() _q); \ \ /* Reset internal state of agc object, including gain estimate, input */ \ /* signal level estimate, lock status, and squelch mode */ \ /* If the squelch mode is disabled, it stays disabled, but all enabled */ \ /* modes (e.g. LIQUID_AGC_SQUELCH_TIMEOUT) resets to just */ \ /* LIQUID_AGC_SQUELCH_ENABLED. */ \ -void AGC(_reset)(AGC() _q); \ +int AGC(_reset)(AGC() _q); \ \ /* Execute automatic gain control on an single input sample */ \ /* _q : automatic gain control object */ \ /* _x : input sample */ \ /* _y : output sample */ \ -void AGC(_execute)(AGC() _q, \ - TC _x, \ - TC * _y); \ +int AGC(_execute)(AGC() _q, \ + TC _x, \ + TC * _y); \ \ /* Execute automatic gain control on block of samples pointed to by _x */ \ /* and store the result in the array of the same length _y. */ \ @@ -156,10 +214,10 @@ void AGC(_execute)(AGC() _q, \ /* _x : input data array, [size: _n x 1] */ \ /* _n : number of input, output samples */ \ /* _y : output data array, [size: _n x 1] */ \ -void AGC(_execute_block)(AGC() _q, \ - TC * _x, \ - unsigned int _n, \ - TC * _y); \ +int AGC(_execute_block)(AGC() _q, \ + TC * _x, \ + unsigned int _n, \ + TC * _y); \ \ /* Lock agc object. When locked, the agc object still makes an estimate */ \ /* of the signal level, but the gain setting is fixed and does not */ \ @@ -167,15 +225,15 @@ void AGC(_execute_block)(AGC() _q, \ /* This is useful for providing coarse input signal level correction */ \ /* and quickly detecting a packet burst but not distorting signals with */ \ /* amplitude variation due to modulation. */ \ -void AGC(_lock)(AGC() _q); \ +int AGC(_lock)(AGC() _q); \ \ /* Unlock agc object, and allow amplitude correction to resume. */ \ -void AGC(_unlock)(AGC() _q); \ +int AGC(_unlock)(AGC() _q); \ \ /* Set loop filter bandwidth: attack/release time. */ \ /* _q : automatic gain control object */ \ /* _bt : bandwidth-time constant, _bt > 0 */ \ -void AGC(_set_bandwidth)(AGC() _q, float _bt); \ +int AGC(_set_bandwidth)(AGC() _q, float _bt); \ \ /* Get the agc object's loop filter bandwidth. */ \ float AGC(_get_bandwidth)(AGC() _q); \ @@ -190,8 +248,8 @@ float AGC(_get_signal_level)(AGC() _q); \ /* convergence. */ \ /* _q : automatic gain control object */ \ /* _x2 : signal level of input, _x2 > 0 */ \ -void AGC(_set_signal_level)(AGC() _q, \ - float _x2); \ +int AGC(_set_signal_level)(AGC() _q, \ + float _x2); \ \ /* Get the agc object's estimated received signal strength indication */ \ /* (RSSI) on the input signal. */ \ @@ -203,7 +261,7 @@ float AGC(_get_rssi)(AGC() _q); \ /* (RSSI) on the input signal by specifying an explicit value in dB. */ \ /* _q : automatic gain control object */ \ /* _rssi : signal level of input [dB] */ \ -void AGC(_set_rssi)(AGC() _q, float _rssi); \ +int AGC(_set_rssi)(AGC() _q, float _rssi); \ \ /* Get the gain value currently being applied to the input signal */ \ /* (linear). */ \ @@ -213,8 +271,8 @@ float AGC(_get_gain)(AGC() _q); \ /* value. */ \ /* _q : automatic gain control object */ \ /* _gain : gain to apply to input signal, _gain > 0 */ \ -void AGC(_set_gain)(AGC() _q, \ - float _gain); \ +int AGC(_set_gain)(AGC() _q, \ + float _gain); \ \ /* Get the ouput scaling applied to each sample (linear). */ \ float AGC(_get_scale)(AGC() _q); \ @@ -223,31 +281,31 @@ float AGC(_get_scale)(AGC() _q); \ /* affect the response of the AGC. */ \ /* _q : automatic gain control object */ \ /* _gain : gain to apply to input signal, _gain > 0 */ \ -void AGC(_set_scale)(AGC() _q, \ - float _scale); \ +int AGC(_set_scale)(AGC() _q, \ + float _scale); \ \ /* Estimate signal level and initialize internal gain on an input */ \ /* array. */ \ /* _q : automatic gain control object */ \ /* _x : input data array, [size: _n x 1] */ \ /* _n : number of input, output samples */ \ -void AGC(_init)(AGC() _q, \ - TC * _x, \ - unsigned int _n); \ +int AGC(_init)(AGC() _q, \ + TC * _x, \ + unsigned int _n); \ \ /* Enable squelch mode. */ \ -void AGC(_squelch_enable)(AGC() _q); \ +int AGC(_squelch_enable)(AGC() _q); \ \ /* Disable squelch mode. */ \ -void AGC(_squelch_disable)(AGC() _q); \ +int AGC(_squelch_disable)(AGC() _q); \ \ /* Return flag indicating if squelch is enabled or not. */ \ -int AGC(_squelch_is_enabled)(AGC() _q); \ +int AGC(_squelch_is_enabled)(AGC() _q); \ \ /* Set threshold for enabling/disabling squelch. */ \ /* _q : automatic gain control object */ \ /* _thresh : threshold for enabling squelch [dB] */ \ -void AGC(_squelch_set_threshold)(AGC() _q, \ +int AGC(_squelch_set_threshold)(AGC() _q, \ T _thresh); \ \ /* Get squelch threshold (value in dB) */ \ @@ -256,8 +314,8 @@ T AGC(_squelch_get_threshold)(AGC() _q); \ /* Set timeout before enabling squelch. */ \ /* _q : automatic gain control object */ \ /* _timeout : timeout before enabling squelch [samples] */ \ -void AGC(_squelch_set_timeout)(AGC() _q, \ - unsigned int _timeout); \ +int AGC(_squelch_set_timeout)(AGC() _q, \ + unsigned int _timeout); \ \ /* Get squelch timeout (number of samples) */ \ unsigned int AGC(_squelch_get_timeout)(AGC() _q); \ @@ -430,16 +488,16 @@ WINDOW() WINDOW(_create)(unsigned int _n); \ WINDOW() WINDOW(_recreate)(WINDOW() _q, unsigned int _n); \ \ /* Destroy window object, freeing all internally memory */ \ -void WINDOW(_destroy)(WINDOW() _q); \ +int WINDOW(_destroy)(WINDOW() _q); \ \ /* Print window object to stdout */ \ -void WINDOW(_print)(WINDOW() _q); \ +int WINDOW(_print)(WINDOW() _q); \ \ /* Print window object to stdout (with extra information) */ \ -void WINDOW(_debug_print)(WINDOW() _q); \ +int WINDOW(_debug_print)(WINDOW() _q); \ \ /* Reset window object (initialize to zeros) */ \ -void WINDOW(_reset)(WINDOW() _q); \ +int WINDOW(_reset)(WINDOW() _q); \ \ /* Read the contents of the window by returning a pointer to the */ \ /* aligned internal memory array. This method guarantees that the */ \ @@ -449,8 +507,8 @@ void WINDOW(_reset)(WINDOW() _q); \ /* is performed on the window buffer object */ \ /* _q : window object */ \ /* _v : output pointer (set to internal array) */ \ -void WINDOW(_read)(WINDOW() _q, \ - T ** _v); \ +int WINDOW(_read)(WINDOW() _q, \ + T ** _v); \ \ /* Index single element in buffer at a particular index */ \ /* This retrieves the \(i^{th}\) sample in the window, storing the */ \ @@ -462,9 +520,9 @@ void WINDOW(_read)(WINDOW() _q, \ /* _q : window object */ \ /* _i : index of element to read */ \ /* _v : output value pointer */ \ -void WINDOW(_index)(WINDOW() _q, \ - unsigned int _i, \ - T * _v); \ +int WINDOW(_index)(WINDOW() _q, \ + unsigned int _i, \ + T * _v); \ \ /* Shifts a single sample into the right side of the window, pushing */ \ /* the oldest (left-most) sample out of the end. Unlike stacks, the */ \ @@ -472,8 +530,8 @@ void WINDOW(_index)(WINDOW() _q, \ /* in memory until they are overwritten. */ \ /* _q : window object */ \ /* _v : single input element */ \ -void WINDOW(_push)(WINDOW() _q, \ - T _v); \ +int WINDOW(_push)(WINDOW() _q, \ + T _v); \ \ /* Write array of elements onto window buffer */ \ /* Effectively, this is equivalent to pushing each sample one at a */ \ @@ -481,9 +539,9 @@ void WINDOW(_push)(WINDOW() _q, \ /* _q : window object */ \ /* _v : input array of values to write */ \ /* _n : number of input values to write */ \ -void WINDOW(_write)(WINDOW() _q, \ - T * _v, \ - unsigned int _n); \ +int WINDOW(_write)(WINDOW() _q, \ + T * _v, \ + unsigned int _n); \ // Define window APIs LIQUID_WINDOW_DEFINE_API(LIQUID_WINDOW_MANGLE_FLOAT, float) @@ -566,60 +624,60 @@ typedef struct CHANNEL(_s) * CHANNEL(); \ CHANNEL() CHANNEL(_create)(void); \ \ /* Destroy channel object, freeing all internal memory */ \ -void CHANNEL(_destroy)(CHANNEL() _q); \ +int CHANNEL(_destroy)(CHANNEL() _q); \ \ /* Print channel object internals to standard output */ \ -void CHANNEL(_print)(CHANNEL() _q); \ +int CHANNEL(_print)(CHANNEL() _q); \ \ /* Include additive white Gausss noise impairment */ \ /* _q : channel object */ \ /* _N0dB : noise floor power spectral density [dB] */ \ /* _SNRdB : signal-to-noise ratio [dB] */ \ -void CHANNEL(_add_awgn)(CHANNEL() _q, \ - float _N0dB, \ - float _SNRdB); \ +int CHANNEL(_add_awgn)(CHANNEL() _q, \ + float _N0dB, \ + float _SNRdB); \ \ /* Include carrier offset impairment */ \ /* _q : channel object */ \ /* _frequency : carrier frequency offset [radians/sample] */ \ /* _phase : carrier phase offset [radians] */ \ -void CHANNEL(_add_carrier_offset)(CHANNEL() _q, \ - float _frequency, \ - float _phase); \ +int CHANNEL(_add_carrier_offset)(CHANNEL() _q, \ + float _frequency, \ + float _phase); \ \ /* Include multi-path channel impairment */ \ /* _q : channel object */ \ /* _h : channel coefficients (NULL for random) */ \ /* _h_len : number of channel coefficients */ \ -void CHANNEL(_add_multipath)(CHANNEL() _q, \ - TC * _h, \ - unsigned int _h_len); \ +int CHANNEL(_add_multipath)(CHANNEL() _q, \ + TC * _h, \ + unsigned int _h_len); \ \ /* Include slowly-varying shadowing impairment */ \ /* _q : channel object */ \ /* _sigma : standard deviation for log-normal shadowing */ \ /* _fd : Doppler frequency, 0 <= _fd < 0.5 */ \ -void CHANNEL(_add_shadowing)(CHANNEL() _q, \ - float _sigma, \ - float _fd); \ +int CHANNEL(_add_shadowing)(CHANNEL() _q, \ + float _sigma, \ + float _fd); \ \ /* Apply channel impairments on single input sample */ \ /* _q : channel object */ \ /* _x : input sample */ \ /* _y : pointer to output sample */ \ -void CHANNEL(_execute)(CHANNEL() _q, \ - TI _x, \ - TO * _y); \ +int CHANNEL(_execute)(CHANNEL() _q, \ + TI _x, \ + TO * _y); \ \ /* Apply channel impairments on block of samples */ \ /* _q : channel object */ \ /* _x : input array, [size: _n x 1] */ \ /* _n : input array, length */ \ /* _y : output array, [size: _n x 1] */ \ -void CHANNEL(_execute_block)(CHANNEL() _q, \ - TI * _x, \ - unsigned int _n, \ - TO * _y); \ +int CHANNEL(_execute_block)(CHANNEL() _q, \ + TI * _x, \ + unsigned int _n, \ + TO * _y); \ LIQUID_CHANNEL_DEFINE_API(LIQUID_CHANNEL_MANGLE_CCCF, liquid_float_complex, @@ -655,35 +713,35 @@ TVMPCH() TVMPCH(_create)(unsigned int _n, \ float _tau); \ \ /* Destroy channel object, freeing all internal memory */ \ -void TVMPCH(_destroy)(TVMPCH() _q); \ +int TVMPCH(_destroy)(TVMPCH() _q); \ \ /* Reset object */ \ -void TVMPCH(_reset)(TVMPCH() _q); \ +int TVMPCH(_reset)(TVMPCH() _q); \ \ /* Print channel object internals to standard output */ \ -void TVMPCH(_print)(TVMPCH() _q); \ +int TVMPCH(_print)(TVMPCH() _q); \ \ /* Push sample into emulator */ \ /* _q : channel object */ \ /* _x : input sample */ \ -void TVMPCH(_push)(TVMPCH() _q, \ - TI _x); \ +int TVMPCH(_push)(TVMPCH() _q, \ + TI _x); \ \ /* Compute output sample */ \ /* _q : channel object */ \ /* _y : output sample */ \ -void TVMPCH(_execute)(TVMPCH() _q, \ - TO * _y); \ +int TVMPCH(_execute)(TVMPCH() _q, \ + TO * _y); \ \ /* Apply channel impairments on a block of samples */ \ /* _q : channel object */ \ /* _x : input array, [size: _n x 1] */ \ /* _n : input array length */ \ /* _y : output array, [size: _n x 1] */ \ -void TVMPCH(_execute_block)(TVMPCH() _q, \ - TI * _x, \ - unsigned int _n, \ - TO * _y); \ +int TVMPCH(_execute_block)(TVMPCH() _q, \ + TI * _x, \ + unsigned int _n, \ + TO * _y); \ LIQUID_TVMPCH_DEFINE_API(LIQUID_TVMPCH_MANGLE_CCCF, liquid_float_complex, @@ -846,13 +904,13 @@ EQLMS() EQLMS(_recreate)(EQLMS() _q, \ unsigned int _h_len); \ \ /* Destroy equalizer object, freeing all internal memory */ \ -void EQLMS(_destroy)(EQLMS() _q); \ +int EQLMS(_destroy)(EQLMS() _q); \ \ /* Reset equalizer object, clearing internal state */ \ -void EQLMS(_reset)(EQLMS() _q); \ +int EQLMS(_reset)(EQLMS() _q); \ \ /* Print equalizer internal state */ \ -void EQLMS(_print)(EQLMS() _q); \ +int EQLMS(_print)(EQLMS() _q); \ \ /* Get equalizer learning rate */ \ float EQLMS(_get_bw)(EQLMS() _q); \ @@ -860,28 +918,28 @@ float EQLMS(_get_bw)(EQLMS() _q); \ /* Set equalizer learning rate */ \ /* _q : equalizer object */ \ /* _lambda : learning rate, _lambda > 0 */ \ -void EQLMS(_set_bw)(EQLMS() _q, \ - float _lambda); \ +int EQLMS(_set_bw)(EQLMS() _q, \ + float _lambda); \ \ /* Push sample into equalizer internal buffer */ \ /* _q : equalizer object */ \ /* _x : input sample */ \ -void EQLMS(_push)(EQLMS() _q, \ - T _x); \ +int EQLMS(_push)(EQLMS() _q, \ + T _x); \ \ /* Push block of samples into internal buffer of equalizer object */ \ /* _q : equalizer object */ \ /* _x : input sample array, [size: _n x 1] */ \ /* _n : input sample array length */ \ -void EQLMS(_push_block)(EQLMS() _q, \ - T * _x, \ - unsigned int _n); \ +int EQLMS(_push_block)(EQLMS() _q, \ + T * _x, \ + unsigned int _n); \ \ /* Execute internal dot product and return result */ \ /* _q : equalizer object */ \ /* _y : output sample */ \ -void EQLMS(_execute)(EQLMS() _q, \ - T * _y); \ +int EQLMS(_execute)(EQLMS() _q, \ + T * _y); \ \ /* Execute equalizer with block of samples using constant */ \ /* modulus algorithm, operating on a decimation rate of _k */ \ @@ -891,31 +949,31 @@ void EQLMS(_execute)(EQLMS() _q, \ /* _x : input sample array [size: _n x 1] */ \ /* _n : input sample array length */ \ /* _y : output sample array [size: _n x 1] */ \ -void EQLMS(_execute_block)(EQLMS() _q, \ - unsigned int _k, \ - T * _x, \ - unsigned int _n, \ - T * _y); \ +int EQLMS(_execute_block)(EQLMS() _q, \ + unsigned int _k, \ + T * _x, \ + unsigned int _n, \ + T * _y); \ \ /* Step through one cycle of equalizer training */ \ /* _q : equalizer object */ \ /* _d : desired output */ \ /* _d_hat : actual output */ \ -void EQLMS(_step)(EQLMS() _q, \ - T _d, \ - T _d_hat); \ +int EQLMS(_step)(EQLMS() _q, \ + T _d, \ + T _d_hat); \ \ /* Step through one cycle of equalizer training (blind) */ \ /* _q : equalizer object */ \ /* _d_hat : actual output */ \ -void EQLMS(_step_blind)(EQLMS() _q, \ - T _d_hat); \ +int EQLMS(_step_blind)(EQLMS() _q, \ + T _d_hat); \ \ /* Get equalizer's internal coefficients */ \ /* _q : equalizer object */ \ /* _w : weights, [size: _p x 1] */ \ -void EQLMS(_get_weights)(EQLMS() _q, \ - T * _w); \ +int EQLMS(_get_weights)(EQLMS() _q, \ + T * _w); \ \ /* Train equalizer object on group of samples */ \ /* _q : equalizer object */ \ @@ -923,11 +981,11 @@ void EQLMS(_get_weights)(EQLMS() _q, \ /* _x : received sample vector,[size: _n x 1] */ \ /* _d : desired output vector, [size: _n x 1] */ \ /* _n : input, output vector length */ \ -void EQLMS(_train)(EQLMS() _q, \ - T * _w, \ - T * _x, \ - T * _d, \ - unsigned int _n); \ +int EQLMS(_train)(EQLMS() _q, \ + T * _w, \ + T * _x, \ + T * _d, \ + unsigned int _n); \ LIQUID_EQLMS_DEFINE_API(LIQUID_EQLMS_MANGLE_RRRF, float) LIQUID_EQLMS_DEFINE_API(LIQUID_EQLMS_MANGLE_CCCF, liquid_float_complex) @@ -960,13 +1018,13 @@ EQRLS() EQRLS(_recreate)(EQRLS() _q, \ unsigned int _n); \ \ /* Destroy equalizer object, freeing all internal memory */ \ -void EQRLS(_destroy)(EQRLS() _q); \ +int EQRLS(_destroy)(EQRLS() _q); \ \ /* Reset equalizer object, clearing internal state */ \ -void EQRLS(_reset)(EQRLS() _q); \ +int EQRLS(_reset)(EQRLS() _q); \ \ /* Print equalizer internal state */ \ -void EQRLS(_print)(EQRLS() _q); \ +int EQRLS(_print)(EQRLS() _q); \ \ /* Get equalizer learning rate */ \ float EQRLS(_get_bw)(EQRLS() _q); \ @@ -974,30 +1032,30 @@ float EQRLS(_get_bw)(EQRLS() _q); \ /* Set equalizer learning rate */ \ /* _q : equalizer object */ \ /* _mu : learning rate, _mu > 0 */ \ -void EQRLS(_set_bw)(EQRLS() _q, \ - float _mu); \ +int EQRLS(_set_bw)(EQRLS() _q, \ + float _mu); \ \ /* Push sample into equalizer internal buffer */ \ /* _q : equalizer object */ \ /* _x : input sample */ \ -void EQRLS(_push)(EQRLS() _q, T _x); \ +int EQRLS(_push)(EQRLS() _q, T _x); \ \ /* Execute internal dot product and return result */ \ /* _q : equalizer object */ \ /* _y : output sample */ \ -void EQRLS(_execute)(EQRLS() _q, T * _y); \ +int EQRLS(_execute)(EQRLS() _q, T * _y); \ \ /* Step through one cycle of equalizer training */ \ /* _q : equalizer object */ \ /* _d : desired output */ \ /* _d_hat : actual output */ \ -void EQRLS(_step)(EQRLS() _q, T _d, T _d_hat); \ +int EQRLS(_step)(EQRLS() _q, T _d, T _d_hat); \ \ /* Get equalizer's internal coefficients */ \ /* _q : equalizer object */ \ /* _w : weights, [size: _p x 1] */ \ -void EQRLS(_get_weights)(EQRLS() _q, \ - T * _w); \ +int EQRLS(_get_weights)(EQRLS() _q, \ + T * _w); \ \ /* Train equalizer object on group of samples */ \ /* _q : equalizer object */ \ @@ -1005,11 +1063,11 @@ void EQRLS(_get_weights)(EQRLS() _q, \ /* _x : received sample vector,[size: _n x 1] */ \ /* _d : desired output vector, [size: _n x 1] */ \ /* _n : input, output vector length */ \ -void EQRLS(_train)(EQRLS() _q, \ - T * _w, \ - T * _x, \ - T * _d, \ - unsigned int _n); \ +int EQRLS(_train)(EQRLS() _q, \ + T * _w, \ + T * _x, \ + T * _d, \ + unsigned int _n); \ LIQUID_EQRLS_DEFINE_API(LIQUID_EQRLS_MANGLE_RRRF, float) LIQUID_EQRLS_DEFINE_API(LIQUID_EQRLS_MANGLE_CCCF, liquid_float_complex) @@ -1062,9 +1120,9 @@ unsigned int crc_generate_key(crc_scheme _scheme, // _scheme : error-detection scheme (resulting in 'p' bytes) // _msg : input data message, [size: _n+p x 1] // _n : input data message size (excluding key at end) -void crc_append_key(crc_scheme _scheme, - unsigned char * _msg, - unsigned int _n); +int crc_append_key(crc_scheme _scheme, + unsigned char * _msg, + unsigned int _n); // validate message using error-detection key // _scheme : error-detection scheme @@ -1167,40 +1225,40 @@ fec fec_recreate(fec _q, void *_opts); // destroy fec object -void fec_destroy(fec _q); +int fec_destroy(fec _q); // print fec object internals -void fec_print(fec _q); +int fec_print(fec _q); // encode a block of data using a fec scheme // _q : fec object // _dec_msg_len : decoded message length // _msg_dec : decoded message // _msg_enc : encoded message -void fec_encode(fec _q, - unsigned int _dec_msg_len, - unsigned char * _msg_dec, - unsigned char * _msg_enc); +int fec_encode(fec _q, + unsigned int _dec_msg_len, + unsigned char * _msg_dec, + unsigned char * _msg_enc); // decode a block of data using a fec scheme // _q : fec object // _dec_msg_len : decoded message length // _msg_enc : encoded message // _msg_dec : decoded message -void fec_decode(fec _q, - unsigned int _dec_msg_len, - unsigned char * _msg_enc, - unsigned char * _msg_dec); +int fec_decode(fec _q, + unsigned int _dec_msg_len, + unsigned char * _msg_enc, + unsigned char * _msg_dec); // decode a block of data using a fec scheme (soft decision) // _q : fec object // _dec_msg_len : decoded message length // _msg_enc : encoded message (soft bits) // _msg_dec : decoded message -void fec_decode_soft(fec _q, - unsigned int _dec_msg_len, - unsigned char * _msg_enc, - unsigned char * _msg_dec); +int fec_decode_soft(fec _q, + unsigned int _dec_msg_len, + unsigned char * _msg_enc, + unsigned char * _msg_dec); // // Packetizer @@ -1418,15 +1476,15 @@ FFT(plan) FFT(_create_plan_r2r_1d)(unsigned int _n, \ int _flags); \ \ /* Destroy transform and free all internally-allocated memory */ \ -void FFT(_destroy_plan)(FFT(plan) _p); \ +int FFT(_destroy_plan)(FFT(plan) _p); \ \ /* Print transform plan and internal strategy to stdout. This includes */ \ /* information on the strategy for computing large transforms with many */ \ /* prime factors or with large prime factors. */ \ -void FFT(_print_plan)(FFT(plan) _p); \ +int FFT(_print_plan)(FFT(plan) _p); \ \ /* Run the transform */ \ -void FFT(_execute)(FFT(plan) _p); \ +int FFT(_execute)(FFT(plan) _p); \ \ /* Perform n-point FFT allocating plan internally */ \ /* _nfft : fft size */ \ @@ -1434,11 +1492,11 @@ void FFT(_execute)(FFT(plan) _p); \ /* _y : output array [size: _nfft x 1] */ \ /* _dir : fft direction: LIQUID_FFT_{FORWARD,BACKWARD} */ \ /* _flags : fft flags */ \ -void FFT(_run)(unsigned int _n, \ - TC * _x, \ - TC * _y, \ - int _dir, \ - int _flags); \ +int FFT(_run)(unsigned int _n, \ + TC * _x, \ + TC * _y, \ + int _dir, \ + int _flags); \ \ /* Perform n-point real one-dimensional FFT allocating plan internally */ \ /* _nfft : fft size */ \ @@ -1446,17 +1504,17 @@ void FFT(_run)(unsigned int _n, \ /* _y : output array [size: _nfft x 1] */ \ /* _type : fft type, e.g. LIQUID_FFT_REDFT10 */ \ /* _flags : fft flags */ \ -void FFT(_r2r_1d_run)(unsigned int _n, \ - T * _x, \ - T * _y, \ - int _type, \ - int _flags); \ +int FFT(_r2r_1d_run)(unsigned int _n, \ + T * _x, \ + T * _y, \ + int _type, \ + int _flags); \ \ /* Perform _n-point fft shift */ \ /* _x : input array [size: _n x 1] */ \ /* _n : input array size */ \ -void FFT(_shift)(TC * _x, \ - unsigned int _n); \ +int FFT(_shift)(TC * _x, \ + unsigned int _n); \ LIQUID_FFT_DEFINE_API(LIQUID_FFT_MANGLE_FLOAT,float,liquid_float_complex) @@ -1506,17 +1564,17 @@ SPGRAM() SPGRAM(_create)(unsigned int _nfft, \ SPGRAM() SPGRAM(_create_default)(unsigned int _nfft); \ \ /* Destroy spgram object, freeing all internally-allocated memory */ \ -void SPGRAM(_destroy)(SPGRAM() _q); \ +int SPGRAM(_destroy)(SPGRAM() _q); \ \ /* Clears the internal state of the object, but not the internal buffer */ \ -void SPGRAM(_clear)(SPGRAM() _q); \ +int SPGRAM(_clear)(SPGRAM() _q); \ \ /* Reset the object to its original state completely. This effectively */ \ /* executes the clear() method and then resets the internal buffer */ \ -void SPGRAM(_reset)(SPGRAM() _q); \ +int SPGRAM(_reset)(SPGRAM() _q); \ \ /* Print internal state of the object to stdout */ \ -void SPGRAM(_print)(SPGRAM() _q); \ +int SPGRAM(_print)(SPGRAM() _q); \ \ /* Set the filter bandwidth for accumulating independent transform */ \ /* squared magnitude outputs. */ \ @@ -1579,24 +1637,31 @@ unsigned long long int SPGRAM(_get_num_transforms_total)(SPGRAM() _q); \ /* as necessary. */ \ /* _q : spgram object */ \ /* _x : input sample */ \ -void SPGRAM(_push)(SPGRAM() _q, \ - TI _x); \ +int SPGRAM(_push)(SPGRAM() _q, \ + TI _x); \ \ /* Write a block of samples to the object, executing internal */ \ /* transform as necessary. */ \ /* _q : spgram object */ \ /* _x : input buffer [size: _n x 1] */ \ /* _n : input buffer length */ \ -void SPGRAM(_write)(SPGRAM() _q, \ - TI * _x, \ - unsigned int _n); \ +int SPGRAM(_write)(SPGRAM() _q, \ + TI * _x, \ + unsigned int _n); \ + \ +/* Compute spectral periodogram output (fft-shifted values, linear) */ \ +/* from current buffer contents */ \ +/* _q : spgram object */ \ +/* _X : output spectrum (linear), [size: _nfft x 1] */ \ +int SPGRAM(_get_psd_mag)(SPGRAM() _q, \ + T * _X); \ \ /* Compute spectral periodogram output (fft-shifted values in dB) from */ \ /* current buffer contents */ \ /* _q : spgram object */ \ /* _X : output spectrum (dB), [size: _nfft x 1] */ \ -void SPGRAM(_get_psd)(SPGRAM() _q, \ - T * _X); \ +int SPGRAM(_get_psd)(SPGRAM() _q, \ + T * _X); \ \ /* Export stand-alone gnuplot file for plotting output spectrum, */ \ /* returning 0 on sucess, anything other than 0 for failure */ \ @@ -1611,10 +1676,10 @@ int SPGRAM(_export_gnuplot)(SPGRAM() _q, \ /* _x : input signal [size: _n x 1] */ \ /* _n : input signal length */ \ /* _psd : output spectrum, [size: _nfft x 1] */ \ -void SPGRAM(_estimate_psd)(unsigned int _nfft, \ - TI * _x, \ - unsigned int _n, \ - T * _psd); \ +int SPGRAM(_estimate_psd)(unsigned int _nfft, \ + TI * _x, \ + unsigned int _n, \ + T * _psd); \ LIQUID_SPGRAM_DEFINE_API(LIQUID_SPGRAM_MANGLE_CFLOAT, float, @@ -1649,42 +1714,42 @@ typedef struct ASGRAM(_s) * ASGRAM(); \ ASGRAM() ASGRAM(_create)(unsigned int _nfft); \ \ /* Destroy asgram object, freeing all internally-allocated memory */ \ -void ASGRAM(_destroy)(ASGRAM() _q); \ +int ASGRAM(_destroy)(ASGRAM() _q); \ \ /* Reset the internal state of the asgram object */ \ -void ASGRAM(_reset)(ASGRAM() _q); \ +int ASGRAM(_reset)(ASGRAM() _q); \ \ /* Set the scale and offset for spectrogram in terms of dB for display */ \ /* purposes */ \ /* _q : asgram object */ \ /* _ref : signal reference level [dB] */ \ /* _div : signal division [dB] */ \ -void ASGRAM(_set_scale)(ASGRAM() _q, \ - float _ref, \ - float _div); \ +int ASGRAM(_set_scale)(ASGRAM() _q, \ + float _ref, \ + float _div); \ \ /* Set the display's 10 characters for output string starting from the */ \ /* weakest and ending with the strongest */ \ /* _q : asgram object */ \ /* _ascii : 10-character display, default: " .,-+*&NM#" */ \ -void ASGRAM(_set_display)(ASGRAM() _q, \ - const char * _ascii); \ +int ASGRAM(_set_display)(ASGRAM() _q, \ + const char * _ascii); \ \ /* Push a single sample into the asgram object, executing internal */ \ /* transform as necessary. */ \ /* _q : asgram object */ \ /* _x : input sample */ \ -void ASGRAM(_push)(ASGRAM() _q, \ - TI _x); \ +int ASGRAM(_push)(ASGRAM() _q, \ + TI _x); \ \ /* Write a block of samples to the asgram object, executing internal */ \ /* transforms as necessary. */ \ /* _q : asgram object */ \ /* _x : input buffer [size: _n x 1] */ \ /* _n : input buffer length */ \ -void ASGRAM(_write)(ASGRAM() _q, \ - TI * _x, \ - unsigned int _n); \ +int ASGRAM(_write)(ASGRAM() _q, \ + TI * _x, \ + unsigned int _n); \ \ /* Compute spectral periodogram output from current buffer contents */ \ /* and return the ascii character string to display along with the peak */ \ @@ -1693,14 +1758,14 @@ void ASGRAM(_write)(ASGRAM() _q, \ /* _ascii : output ASCII string [size: _nfft x 1] */ \ /* _peakval : peak power spectral density value [dB] */ \ /* _peakfreq : peak power spectral density frequency */ \ -void ASGRAM(_execute)(ASGRAM() _q, \ - char * _ascii, \ - float * _peakval, \ - float * _peakfreq); \ +int ASGRAM(_execute)(ASGRAM() _q, \ + char * _ascii, \ + float * _peakval, \ + float * _peakfreq); \ \ /* Compute spectral periodogram output from current buffer contents and */ \ /* print standard format to stdout */ \ -void ASGRAM(_print)(ASGRAM() _q); \ +int ASGRAM(_print)(ASGRAM() _q); \ LIQUID_ASGRAM_DEFINE_API(LIQUID_ASGRAM_MANGLE_CFLOAT, float, @@ -1749,17 +1814,17 @@ SPWATERFALL() SPWATERFALL(_create_default)(unsigned int _nfft, \ unsigned int _time); \ \ /* Destroy spwaterfall object, freeing all internally-allocated memory */ \ -void SPWATERFALL(_destroy)(SPWATERFALL() _q); \ +int SPWATERFALL(_destroy)(SPWATERFALL() _q); \ \ /* Clears the internal state of the object, but not the internal buffer */ \ -void SPWATERFALL(_clear)(SPWATERFALL() _q); \ +int SPWATERFALL(_clear)(SPWATERFALL() _q); \ \ /* Reset the object to its original state completely. This effectively */ \ /* executes the clear() method and then resets the internal buffer */ \ -void SPWATERFALL(_reset)(SPWATERFALL() _q); \ +int SPWATERFALL(_reset)(SPWATERFALL() _q); \ \ /* Print internal state of the object to stdout */ \ -void SPWATERFALL(_print)(SPWATERFALL() _q); \ +int SPWATERFALL(_print)(SPWATERFALL() _q); \ \ /* Get number of samples processed since object was created */ \ uint64_t SPWATERFALL(_get_num_samples_total)(SPWATERFALL() _q); \ @@ -1806,17 +1871,17 @@ int SPWATERFALL(_set_commands)(SPWATERFALL() _q, \ /* as necessary. */ \ /* _q : spwaterfall object */ \ /* _x : input sample */ \ -void SPWATERFALL(_push)(SPWATERFALL() _q, \ - TI _x); \ +int SPWATERFALL(_push)(SPWATERFALL() _q, \ + TI _x); \ \ /* Write a block of samples to the object, executing internal */ \ /* transform as necessary. */ \ /* _q : spwaterfall object */ \ /* _x : input buffer, [size: _n x 1] */ \ /* _n : input buffer length */ \ -void SPWATERFALL(_write)(SPWATERFALL() _q, \ - TI * _x, \ - unsigned int _n); \ +int SPWATERFALL(_write)(SPWATERFALL() _q, \ + TI * _x, \ + unsigned int _n); \ \ /* Export set of files for plotting */ \ /* _q : spwaterfall object */ \ @@ -1939,14 +2004,14 @@ typedef enum { // _wtype : weight types (e.g. LIQUID_FIRDESPM_FLATWEIGHT) [size: _num_bands x 1] // _btype : band type (e.g. LIQUID_FIRDESPM_BANDPASS) // _h : output coefficients array [size: _h_len x 1] -void firdespm_run(unsigned int _h_len, - unsigned int _num_bands, - float * _bands, - float * _des, - float * _weights, - liquid_firdespm_wtype * _wtype, - liquid_firdespm_btype _btype, - float * _h); +int firdespm_run(unsigned int _h_len, + unsigned int _num_bands, + float * _bands, + float * _des, + float * _weights, + liquid_firdespm_wtype * _wtype, + liquid_firdespm_btype _btype, + float * _h); // run filter design for basic low-pass filter // _n : filter length, _n > 0 @@ -1954,7 +2019,7 @@ void firdespm_run(unsigned int _h_len, // _As : stop-band attenuation [dB], _As > 0 // _mu : fractional sample offset, -0.5 < _mu < 0.5 [ignored] // _h : output coefficient buffer, [size: _n x 1] -void firdespm_lowpass(unsigned int _n, +int firdespm_lowpass(unsigned int _n, float _fc, float _As, float _mu, @@ -2004,13 +2069,13 @@ firdespm firdespm_create_callback(unsigned int _h_len, void * _userdata); // destroy firdespm object -void firdespm_destroy(firdespm _q); +int firdespm_destroy(firdespm _q); // print firdespm object internals -void firdespm_print(firdespm _q); +int firdespm_print(firdespm _q); // execute filter design, storing result in _h -void firdespm_execute(firdespm _q, float * _h); +int firdespm_execute(firdespm _q, float * _h); // Design FIR using kaiser window @@ -4499,10 +4564,10 @@ typedef struct { extern framesyncstats_s framesyncstats_default; // initialize framesyncstats object on default -void framesyncstats_init_default(framesyncstats_s * _stats); +int framesyncstats_init_default(framesyncstats_s * _stats); // print framesyncstats object -void framesyncstats_print(framesyncstats_s * _stats); +int framesyncstats_print(framesyncstats_s * _stats); // framedatastats : gather frame data @@ -4514,10 +4579,10 @@ typedef struct { } framedatastats_s; // reset framedatastats object -void framedatastats_reset(framedatastats_s * _stats); +int framedatastats_reset(framedatastats_s * _stats); // print framedatastats object -void framedatastats_print(framedatastats_s * _stats); +int framedatastats_print(framedatastats_s * _stats); // Generic frame synchronizer callback function type @@ -4548,9 +4613,9 @@ typedef struct qpacketmodem_s * qpacketmodem; // create packet encoder qpacketmodem qpacketmodem_create (); -void qpacketmodem_destroy(qpacketmodem _q); -void qpacketmodem_reset (qpacketmodem _q); -void qpacketmodem_print (qpacketmodem _q); +int qpacketmodem_destroy(qpacketmodem _q); +int qpacketmodem_reset (qpacketmodem _q); +int qpacketmodem_print (qpacketmodem _q); int qpacketmodem_configure(qpacketmodem _q, unsigned int _payload_len, @@ -4578,9 +4643,9 @@ float qpacketmodem_get_demodulator_evm(qpacketmodem _q); // _q : qpacketmodem object // _payload : unencoded payload bytes // _syms : encoded but un-modulated payload symbol indices -void qpacketmodem_encode_syms(qpacketmodem _q, - const unsigned char * _payload, - unsigned char * _syms); +int qpacketmodem_encode_syms(qpacketmodem _q, + const unsigned char * _payload, + unsigned char * _syms); // decode packet from demodulated frame symbol indices (hard-decision decoding) // _q : qpacketmodem object @@ -4602,9 +4667,9 @@ int qpacketmodem_decode_bits(qpacketmodem _q, // _q : qpacketmodem object // _payload : unencoded payload bytes // _frame : encoded/modulated payload symbols -void qpacketmodem_encode(qpacketmodem _q, - const unsigned char * _payload, - liquid_float_complex * _frame); +int qpacketmodem_encode(qpacketmodem _q, + const unsigned char * _payload, + liquid_float_complex * _frame); // decode packet from modulated frame samples, returning flag if CRC passed // NOTE: hard-decision decoding @@ -4656,16 +4721,16 @@ qpilotgen qpilotgen_recreate(qpilotgen _q, unsigned int _payload_len, unsigned int _pilot_spacing); -void qpilotgen_destroy(qpilotgen _q); -void qpilotgen_reset( qpilotgen _q); -void qpilotgen_print( qpilotgen _q); +int qpilotgen_destroy(qpilotgen _q); +int qpilotgen_reset( qpilotgen _q); +int qpilotgen_print( qpilotgen _q); unsigned int qpilotgen_get_frame_len(qpilotgen _q); // insert pilot symbols -void qpilotgen_execute(qpilotgen _q, - liquid_float_complex * _payload, - liquid_float_complex * _frame); +int qpilotgen_execute(qpilotgen _q, + liquid_float_complex * _payload, + liquid_float_complex * _frame); // // pilot synchronizer for packet burst recovery @@ -4680,16 +4745,16 @@ qpilotsync qpilotsync_recreate(qpilotsync _q, unsigned int _payload_len, unsigned int _pilot_spacing); -void qpilotsync_destroy(qpilotsync _q); -void qpilotsync_reset( qpilotsync _q); -void qpilotsync_print( qpilotsync _q); +int qpilotsync_destroy(qpilotsync _q); +int qpilotsync_reset( qpilotsync _q); +int qpilotsync_print( qpilotsync _q); unsigned int qpilotsync_get_frame_len(qpilotsync _q); // recover frame symbols from received frame -void qpilotsync_execute(qpilotsync _q, - liquid_float_complex * _frame, - liquid_float_complex * _payload); +int qpilotsync_execute(qpilotsync _q, + liquid_float_complex * _frame, + liquid_float_complex * _payload); // get estimates float qpilotsync_get_dphi(qpilotsync _q); @@ -4711,20 +4776,20 @@ typedef struct framegen64_s * framegen64; framegen64 framegen64_create(); // destroy frame generator -void framegen64_destroy(framegen64 _q); +int framegen64_destroy(framegen64 _q); // print frame generator internal properties -void framegen64_print(framegen64 _q); +int framegen64_print(framegen64 _q); // generate frame // _q : frame generator object // _header : 8-byte header data, NULL for random // _payload : 64-byte payload data, NULL for random // _frame : output frame samples [size: LIQUID_FRAME64_LEN x 1] -void framegen64_execute(framegen64 _q, - unsigned char * _header, - unsigned char * _payload, - liquid_float_complex * _frame); +int framegen64_execute(framegen64 _q, + unsigned char * _header, + unsigned char * _payload, + liquid_float_complex * _frame); typedef struct framesync64_s * framesync64; @@ -4735,37 +4800,37 @@ framesync64 framesync64_create(framesync_callback _callback, void * _userdata); // destroy frame synchronizer -void framesync64_destroy(framesync64 _q); +int framesync64_destroy(framesync64 _q); // print frame synchronizer internal properties -void framesync64_print(framesync64 _q); +int framesync64_print(framesync64 _q); // reset frame synchronizer internal state -void framesync64_reset(framesync64 _q); +int framesync64_reset(framesync64 _q); // push samples through frame synchronizer // _q : frame synchronizer object // _x : input samples [size: _n x 1] // _n : number of input samples -void framesync64_execute(framesync64 _q, - liquid_float_complex * _x, - unsigned int _n); +int framesync64_execute(framesync64 _q, + liquid_float_complex * _x, + unsigned int _n); // enable/disable debugging -void framesync64_debug_enable(framesync64 _q); -void framesync64_debug_disable(framesync64 _q); -void framesync64_debug_print(framesync64 _q, const char * _filename); +int framesync64_debug_enable(framesync64 _q); +int framesync64_debug_disable(framesync64 _q); +int framesync64_debug_print(framesync64 _q, const char * _filename); // frame data statistics -void framesync64_reset_framedatastats(framesync64 _q); +int framesync64_reset_framedatastats(framesync64 _q); framedatastats_s framesync64_get_framedatastats (framesync64 _q); #if 0 // advanced modes -void framesync64_set_csma_callbacks(framesync64 _q, - framesync_csma_callback _csma_lock, - framesync_csma_callback _csma_unlock, - void * _csma_userdata); +int framesync64_set_csma_callbacks(framesync64 _q, + framesync_csma_callback _csma_lock, + framesync_csma_callback _csma_unlock, + void * _csma_userdata); #endif // @@ -4781,7 +4846,7 @@ typedef struct { unsigned int mod_scheme; // modulation scheme } flexframegenprops_s; -void flexframegenprops_init_default(flexframegenprops_s * _fgprops); +int flexframegenprops_init_default(flexframegenprops_s * _fgprops); typedef struct flexframegen_s * flexframegen; @@ -4790,25 +4855,25 @@ typedef struct flexframegen_s * flexframegen; flexframegen flexframegen_create(flexframegenprops_s * _props); // destroy flexframegen object -void flexframegen_destroy(flexframegen _q); +int flexframegen_destroy(flexframegen _q); // print flexframegen object internals -void flexframegen_print(flexframegen _q); +int flexframegen_print(flexframegen _q); // reset flexframegen object internals -void flexframegen_reset(flexframegen _q); +int flexframegen_reset(flexframegen _q); // is frame assembled? int flexframegen_is_assembled(flexframegen _q); // get frame properties -void flexframegen_getprops(flexframegen _q, flexframegenprops_s * _props); +int flexframegen_getprops(flexframegen _q, flexframegenprops_s * _props); // set frame properties int flexframegen_setprops(flexframegen _q, flexframegenprops_s * _props); // set length of user-defined portion of header -void flexframegen_set_header_len(flexframegen _q, unsigned int _len); +int flexframegen_set_header_len(flexframegen _q, unsigned int _len); // set properties for header section int flexframegen_set_header_props(flexframegen _q, @@ -4822,10 +4887,10 @@ unsigned int flexframegen_getframelen(flexframegen _q); // _header : frame header // _payload : payload data [size: _payload_len x 1] // _payload_len : payload data length -void flexframegen_assemble(flexframegen _q, - const unsigned char * _header, - const unsigned char * _payload, - unsigned int _payload_len); +int flexframegen_assemble(flexframegen _q, + const unsigned char * _header, + const unsigned char * _payload, + unsigned int _payload_len); // write samples of assembled frame, two samples at a time, returning // '1' when frame is complete, '0' otherwise. Zeros will be written @@ -4848,28 +4913,28 @@ flexframesync flexframesync_create(framesync_callback _callback, void * _userdata); // destroy frame synchronizer -void flexframesync_destroy(flexframesync _q); +int flexframesync_destroy(flexframesync _q); // print frame synchronizer internal properties -void flexframesync_print(flexframesync _q); +int flexframesync_print(flexframesync _q); // reset frame synchronizer internal state -void flexframesync_reset(flexframesync _q); +int flexframesync_reset(flexframesync _q); // has frame been detected? int flexframesync_is_frame_open(flexframesync _q); // change length of user-defined region in header -void flexframesync_set_header_len(flexframesync _q, - unsigned int _len); +int flexframesync_set_header_len(flexframesync _q, + unsigned int _len); // enable or disable soft decoding of header -void flexframesync_decode_header_soft(flexframesync _q, - int _soft); +int flexframesync_decode_header_soft(flexframesync _q, + int _soft); // enable or disable soft decoding of payload -void flexframesync_decode_payload_soft(flexframesync _q, - int _soft); +int flexframesync_decode_payload_soft(flexframesync _q, + int _soft); // set properties for header section int flexframesync_set_header_props(flexframesync _q, @@ -4879,18 +4944,18 @@ int flexframesync_set_header_props(flexframesync _q, // _q : frame synchronizer object // _x : input samples [size: _n x 1] // _n : number of input samples -void flexframesync_execute(flexframesync _q, - liquid_float_complex * _x, - unsigned int _n); +int flexframesync_execute(flexframesync _q, + liquid_float_complex * _x, + unsigned int _n); // frame data statistics -void flexframesync_reset_framedatastats(flexframesync _q); +int flexframesync_reset_framedatastats(flexframesync _q); framedatastats_s flexframesync_get_framedatastats (flexframesync _q); // enable/disable debugging -void flexframesync_debug_enable(flexframesync _q); -void flexframesync_debug_disable(flexframesync _q); -void flexframesync_debug_print(flexframesync _q, +int flexframesync_debug_enable(flexframesync _q); +int flexframesync_debug_disable(flexframesync _q); +int flexframesync_debug_print(flexframesync _q, const char * _filename); // @@ -4954,35 +5019,35 @@ typedef int (*bpacketsync_callback)(unsigned char * _payload, bpacketsync bpacketsync_create(unsigned int _m, bpacketsync_callback _callback, void * _userdata); -void bpacketsync_destroy(bpacketsync _q); -void bpacketsync_print(bpacketsync _q); -void bpacketsync_reset(bpacketsync _q); +int bpacketsync_destroy(bpacketsync _q); +int bpacketsync_print(bpacketsync _q); +int bpacketsync_reset(bpacketsync _q); // run synchronizer on array of input bytes // _q : bpacketsync object // _bytes : input data array [size: _n x 1] // _n : input array size -void bpacketsync_execute(bpacketsync _q, - unsigned char * _bytes, - unsigned int _n); +int bpacketsync_execute(bpacketsync _q, + unsigned char * _bytes, + unsigned int _n); // run synchronizer on input byte // _q : bpacketsync object // _byte : input byte -void bpacketsync_execute_byte(bpacketsync _q, - unsigned char _byte); +int bpacketsync_execute_byte(bpacketsync _q, + unsigned char _byte); // run synchronizer on input symbol // _q : bpacketsync object // _sym : input symbol with _bps significant bits // _bps : number of bits in input symbol -void bpacketsync_execute_sym(bpacketsync _q, - unsigned char _sym, - unsigned int _bps); +int bpacketsync_execute_sym(bpacketsync _q, + unsigned char _sym, + unsigned int _bps); // execute one bit at a time -void bpacketsync_execute_bit(bpacketsync _q, - unsigned char _bit); +int bpacketsync_execute_bit(bpacketsync _q, + unsigned char _bit); // // M-FSK frame generator @@ -4992,16 +5057,16 @@ typedef struct fskframegen_s * fskframegen; // create M-FSK frame generator fskframegen fskframegen_create(); -void fskframegen_destroy (fskframegen _fg); -void fskframegen_print (fskframegen _fg); -void fskframegen_reset (fskframegen _fg); -void fskframegen_assemble(fskframegen _fg, - unsigned char * _header, - unsigned char * _payload, - unsigned int _payload_len, - crc_scheme _check, - fec_scheme _fec0, - fec_scheme _fec1); +int fskframegen_destroy (fskframegen _fg); +int fskframegen_print (fskframegen _fg); +int fskframegen_reset (fskframegen _fg); +int fskframegen_assemble(fskframegen _fg, + unsigned char * _header, + unsigned char * _payload, + unsigned int _payload_len, + crc_scheme _check, + fec_scheme _fec0, + fec_scheme _fec1); unsigned int fskframegen_getframelen(fskframegen _q); int fskframegen_write_samples(fskframegen _fg, liquid_float_complex * _buf, @@ -5019,19 +5084,19 @@ typedef struct fskframesync_s * fskframesync; // _userdata : user data pointer passed to callback function fskframesync fskframesync_create(framesync_callback _callback, void * _userdata); -void fskframesync_destroy(fskframesync _q); -void fskframesync_print (fskframesync _q); -void fskframesync_reset (fskframesync _q); -void fskframesync_execute(fskframesync _q, - liquid_float_complex _x); -void fskframesync_execute_block(fskframesync _q, - liquid_float_complex * _x, - unsigned int _n); +int fskframesync_destroy(fskframesync _q); +int fskframesync_print (fskframesync _q); +int fskframesync_reset (fskframesync _q); +int fskframesync_execute(fskframesync _q, + liquid_float_complex _x); +int fskframesync_execute_block(fskframesync _q, + liquid_float_complex * _x, + unsigned int _n); // debugging -void fskframesync_debug_enable (fskframesync _q); -void fskframesync_debug_disable(fskframesync _q); -void fskframesync_debug_export (fskframesync _q, const char * _filename); +int fskframesync_debug_enable (fskframesync _q); +int fskframesync_debug_disable(fskframesync _q); +int fskframesync_debug_export (fskframesync _q, const char * _filename); // @@ -5042,22 +5107,30 @@ typedef struct gmskframegen_s * gmskframegen; // create GMSK frame generator gmskframegen gmskframegen_create(); -void gmskframegen_destroy (gmskframegen _q); -int gmskframegen_is_assembled (gmskframegen _q); -void gmskframegen_print (gmskframegen _q); -void gmskframegen_set_header_len(gmskframegen _q, unsigned int _len); -void gmskframegen_reset (gmskframegen _q); -void gmskframegen_assemble (gmskframegen _q, - const unsigned char * _header, - const unsigned char * _payload, - unsigned int _payload_len, - crc_scheme _check, - fec_scheme _fec0, - fec_scheme _fec1); +int gmskframegen_destroy (gmskframegen _q); +int gmskframegen_is_assembled (gmskframegen _q); +int gmskframegen_print (gmskframegen _q); +int gmskframegen_set_header_len(gmskframegen _q, unsigned int _len); +int gmskframegen_reset (gmskframegen _q); +int gmskframegen_assemble (gmskframegen _q, + const unsigned char * _header, + const unsigned char * _payload, + unsigned int _payload_len, + crc_scheme _check, + fec_scheme _fec0, + fec_scheme _fec1); unsigned int gmskframegen_getframelen(gmskframegen _q); int gmskframegen_write_samples(gmskframegen _q, liquid_float_complex * _y); +// write samples of assembled frame +// _q : frame generator object +// _buf : output buffer [size: _buf_len x 1] +// _buf_len : output buffer length +int gmskframegen_write(gmskframegen _q, + liquid_float_complex * _buf, + unsigned int _buf_len); + // // GMSK frame synchronizer @@ -5070,19 +5143,19 @@ typedef struct gmskframesync_s * gmskframesync; // _userdata : user data pointer passed to callback function gmskframesync gmskframesync_create(framesync_callback _callback, void * _userdata); -void gmskframesync_destroy(gmskframesync _q); -void gmskframesync_print(gmskframesync _q); -void gmskframesync_set_header_len(gmskframesync _q, unsigned int _len); -void gmskframesync_reset(gmskframesync _q); -int gmskframesync_is_frame_open(gmskframesync _q); -void gmskframesync_execute(gmskframesync _q, - liquid_float_complex * _x, - unsigned int _n); +int gmskframesync_destroy(gmskframesync _q); +int gmskframesync_print(gmskframesync _q); +int gmskframesync_set_header_len(gmskframesync _q, unsigned int _len); +int gmskframesync_reset(gmskframesync _q); +int gmskframesync_is_frame_open(gmskframesync _q); +int gmskframesync_execute(gmskframesync _q, + liquid_float_complex * _x, + unsigned int _n); // debugging -void gmskframesync_debug_enable(gmskframesync _q); -void gmskframesync_debug_disable(gmskframesync _q); -void gmskframesync_debug_print(gmskframesync _q, const char * _filename); +int gmskframesync_debug_enable(gmskframesync _q); +int gmskframesync_debug_disable(gmskframesync _q); +int gmskframesync_debug_print(gmskframesync _q, const char * _filename); // @@ -5098,12 +5171,12 @@ typedef struct { typedef struct dsssframegen_s * dsssframegen; dsssframegen dsssframegen_create(dsssframegenprops_s * _props); -void dsssframegen_destroy(dsssframegen _q); -void dsssframegen_reset(dsssframegen _q); +int dsssframegen_destroy(dsssframegen _q); +int dsssframegen_reset(dsssframegen _q); int dsssframegen_is_assembled(dsssframegen _q); -void dsssframegen_getprops(dsssframegen _q, dsssframegenprops_s * _props); +int dsssframegen_getprops(dsssframegen _q, dsssframegenprops_s * _props); int dsssframegen_setprops(dsssframegen _q, dsssframegenprops_s * _props); -void dsssframegen_set_header_len(dsssframegen _q, unsigned int _len); +int dsssframegen_set_header_len(dsssframegen _q, unsigned int _len); int dsssframegen_set_header_props(dsssframegen _q, dsssframegenprops_s * _props); unsigned int dsssframegen_getframelen(dsssframegen _q); @@ -5113,10 +5186,10 @@ unsigned int dsssframegen_getframelen(dsssframegen _q); // _header : frame header // _payload : payload data [size: _payload_len x 1] // _payload_len : payload data length -void dsssframegen_assemble(dsssframegen _q, - const unsigned char * _header, - const unsigned char * _payload, - unsigned int _payload_len); +int dsssframegen_assemble(dsssframegen _q, + const unsigned char * _header, + const unsigned char * _payload, + unsigned int _payload_len); int dsssframegen_write_samples(dsssframegen _q, liquid_float_complex * _buffer, @@ -5130,28 +5203,21 @@ int dsssframegen_write_samples(dsssframegen _q, typedef struct dsssframesync_s * dsssframesync; dsssframesync dsssframesync_create(framesync_callback _callback, void * _userdata); -void dsssframesync_destroy(dsssframesync _q); -void dsssframesync_print(dsssframesync _q); -void dsssframesync_reset(dsssframesync _q); -int dsssframesync_is_frame_open(dsssframesync _q); -void dsssframesync_set_header_len(dsssframesync _q, - unsigned int _len); -void dsssframesync_decode_header_soft(dsssframesync _q, - int _soft); -void dsssframesync_decode_payload_soft(dsssframesync _q, - int _soft); -int dsssframesync_set_header_props(dsssframesync _q, - dsssframegenprops_s * _props); -void dsssframesync_execute(dsssframesync _q, - liquid_float_complex * _x, - unsigned int _n); -void dsssframesync_reset_framedatastats(dsssframesync _q); +int dsssframesync_destroy (dsssframesync _q); +int dsssframesync_print (dsssframesync _q); +int dsssframesync_reset (dsssframesync _q); +int dsssframesync_is_frame_open (dsssframesync _q); +int dsssframesync_set_header_len (dsssframesync _q, unsigned int _len); +int dsssframesync_decode_header_soft (dsssframesync _q, int _soft); +int dsssframesync_decode_payload_soft (dsssframesync _q, int _soft); +int dsssframesync_set_header_props (dsssframesync _q, dsssframegenprops_s * _props); +int dsssframesync_execute (dsssframesync _q, liquid_float_complex * _x, unsigned int _n); +int dsssframesync_reset_framedatastats(dsssframesync _q); +int dsssframesync_debug_enable (dsssframesync _q); +int dsssframesync_debug_disable (dsssframesync _q); +int dsssframesync_debug_print (dsssframesync _q, const char * _filename); framedatastats_s dsssframesync_get_framedatastats (dsssframesync _q); -void dsssframesync_debug_enable(dsssframesync _q); -void dsssframesync_debug_disable(dsssframesync _q); -void dsssframesync_debug_print(dsssframesync _q, const char * _filename); - // // OFDM flexframe generator // @@ -5164,7 +5230,7 @@ typedef struct { unsigned int mod_scheme; // modulation scheme //unsigned int block_size; // framing block size } ofdmflexframegenprops_s; -void ofdmflexframegenprops_init_default(ofdmflexframegenprops_s * _props); +int ofdmflexframegenprops_init_default(ofdmflexframegenprops_s * _props); typedef struct ofdmflexframegen_s * ofdmflexframegen; @@ -5181,31 +5247,31 @@ ofdmflexframegen ofdmflexframegen_create(unsigned int _M, ofdmflexframegenprops_s * _fgprops); // destroy ofdmflexframegen object -void ofdmflexframegen_destroy(ofdmflexframegen _q); +int ofdmflexframegen_destroy(ofdmflexframegen _q); // print parameters, properties, etc. -void ofdmflexframegen_print(ofdmflexframegen _q); +int ofdmflexframegen_print(ofdmflexframegen _q); // reset ofdmflexframegen object internals -void ofdmflexframegen_reset(ofdmflexframegen _q); +int ofdmflexframegen_reset(ofdmflexframegen _q); // is frame assembled? int ofdmflexframegen_is_assembled(ofdmflexframegen _q); // get properties -void ofdmflexframegen_getprops(ofdmflexframegen _q, - ofdmflexframegenprops_s * _props); +int ofdmflexframegen_getprops(ofdmflexframegen _q, + ofdmflexframegenprops_s * _props); // set properties -void ofdmflexframegen_setprops(ofdmflexframegen _q, - ofdmflexframegenprops_s * _props); +int ofdmflexframegen_setprops(ofdmflexframegen _q, + ofdmflexframegenprops_s * _props); // set user-defined header length -void ofdmflexframegen_set_header_len(ofdmflexframegen _q, - unsigned int _len); +int ofdmflexframegen_set_header_len(ofdmflexframegen _q, + unsigned int _len); -void ofdmflexframegen_set_header_props(ofdmflexframegen _q, - ofdmflexframegenprops_s * _props); +int ofdmflexframegen_set_header_props(ofdmflexframegen _q, + ofdmflexframegenprops_s * _props); // get length of frame (symbols) // _q : OFDM frame generator object @@ -5216,18 +5282,18 @@ unsigned int ofdmflexframegen_getframelen(ofdmflexframegen _q); // _header : frame header [8 bytes] // _payload : payload data [size: _payload_len x 1] // _payload_len : payload data length -void ofdmflexframegen_assemble(ofdmflexframegen _q, - const unsigned char * _header, - const unsigned char * _payload, - unsigned int _payload_len); +int ofdmflexframegen_assemble(ofdmflexframegen _q, + const unsigned char * _header, + const unsigned char * _payload, + unsigned int _payload_len); // write samples of assembled frame // _q : OFDM frame generator object // _buf : output buffer [size: _buf_len x 1] // _buf_len : output buffer length int ofdmflexframegen_write(ofdmflexframegen _q, - liquid_float_complex * _buf, - unsigned int _buf_len); + liquid_float_complex * _buf, + unsigned int _buf_len); // // OFDM flex frame synchronizer @@ -5249,26 +5315,26 @@ ofdmflexframesync ofdmflexframesync_create(unsigned int _M, framesync_callback _callback, void * _userdata); -void ofdmflexframesync_destroy(ofdmflexframesync _q); -void ofdmflexframesync_print(ofdmflexframesync _q); +int ofdmflexframesync_destroy(ofdmflexframesync _q); +int ofdmflexframesync_print(ofdmflexframesync _q); // set user-defined header length -void ofdmflexframesync_set_header_len(ofdmflexframesync _q, - unsigned int _len); +int ofdmflexframesync_set_header_len(ofdmflexframesync _q, + unsigned int _len); -void ofdmflexframesync_decode_header_soft(ofdmflexframesync _q, - int _soft); +int ofdmflexframesync_decode_header_soft(ofdmflexframesync _q, + int _soft); -void ofdmflexframesync_decode_payload_soft(ofdmflexframesync _q, - int _soft); +int ofdmflexframesync_decode_payload_soft(ofdmflexframesync _q, + int _soft); -void ofdmflexframesync_set_header_props(ofdmflexframesync _q, - ofdmflexframegenprops_s * _props); +int ofdmflexframesync_set_header_props(ofdmflexframesync _q, + ofdmflexframegenprops_s * _props); -void ofdmflexframesync_reset(ofdmflexframesync _q); +int ofdmflexframesync_reset(ofdmflexframesync _q); int ofdmflexframesync_is_frame_open(ofdmflexframesync _q); -void ofdmflexframesync_execute(ofdmflexframesync _q, - liquid_float_complex * _x, - unsigned int _n); +int ofdmflexframesync_execute(ofdmflexframesync _q, + liquid_float_complex * _x, + unsigned int _n); // query the received signal strength indication float ofdmflexframesync_get_rssi(ofdmflexframesync _q); @@ -5277,17 +5343,17 @@ float ofdmflexframesync_get_rssi(ofdmflexframesync _q); float ofdmflexframesync_get_cfo(ofdmflexframesync _q); // frame data statistics -void ofdmflexframesync_reset_framedatastats(ofdmflexframesync _q); +int ofdmflexframesync_reset_framedatastats(ofdmflexframesync _q); framedatastats_s ofdmflexframesync_get_framedatastats (ofdmflexframesync _q); // set the received carrier offset estimate -void ofdmflexframesync_set_cfo(ofdmflexframesync _q, float _cfo); +int ofdmflexframesync_set_cfo(ofdmflexframesync _q, float _cfo); // enable/disable debugging -void ofdmflexframesync_debug_enable(ofdmflexframesync _q); -void ofdmflexframesync_debug_disable(ofdmflexframesync _q); -void ofdmflexframesync_debug_print(ofdmflexframesync _q, - const char * _filename); +int ofdmflexframesync_debug_enable(ofdmflexframesync _q); +int ofdmflexframesync_debug_disable(ofdmflexframesync _q); +int ofdmflexframesync_debug_print(ofdmflexframesync _q, + const char * _filename); @@ -5379,25 +5445,25 @@ PRESYNC() PRESYNC(_create)(TC * _v, \ unsigned int _m); \ \ /* Destroy pre-demod synchronizer, freeing all internal memory */ \ -void PRESYNC(_destroy)(PRESYNC() _q); \ +int PRESYNC(_destroy)(PRESYNC() _q); \ \ /* Print pre-demod synchronizer internal state */ \ -void PRESYNC(_print)(PRESYNC() _q); \ +int PRESYNC(_print)(PRESYNC() _q); \ \ /* Reset pre-demod synchronizer internal state */ \ -void PRESYNC(_reset)(PRESYNC() _q); \ +int PRESYNC(_reset)(PRESYNC() _q); \ \ /* Push input sample into pre-demod synchronizer */ \ /* _q : pre-demod synchronizer object */ \ /* _x : input sample */ \ -void PRESYNC(_push)(PRESYNC() _q, \ +int PRESYNC(_push)(PRESYNC() _q, \ TI _x); \ \ /* Correlate original sequence with internal input buffer */ \ /* _q : pre-demod synchronizer object */ \ /* _rxy : output cross correlation */ \ /* _dphi_hat : output frequency offset estimate */ \ -void PRESYNC(_execute)(PRESYNC() _q, \ +int PRESYNC(_execute)(PRESYNC() _q, \ TO * _rxy, \ float * _dphi_hat); \ @@ -5469,21 +5535,21 @@ qdetector_cccf qdetector_cccf_create_cpfsk(unsigned char * _sequence, float _beta, int _type); -void qdetector_cccf_destroy(qdetector_cccf _q); -void qdetector_cccf_print (qdetector_cccf _q); -void qdetector_cccf_reset (qdetector_cccf _q); +int qdetector_cccf_destroy(qdetector_cccf _q); +int qdetector_cccf_print (qdetector_cccf _q); +int qdetector_cccf_reset (qdetector_cccf _q); // run detector, looking for sequence; return pointer to aligned, buffered samples void * qdetector_cccf_execute(qdetector_cccf _q, liquid_float_complex _x); // set detection threshold (should be between 0 and 1, good starting point is 0.5) -void qdetector_cccf_set_threshold(qdetector_cccf _q, - float _threshold); +int qdetector_cccf_set_threshold(qdetector_cccf _q, + float _threshold); // set carrier offset search range -void qdetector_cccf_set_range(qdetector_cccf _q, - float _dphi_max); +int qdetector_cccf_set_range(qdetector_cccf _q, + float _dphi_max); // access methods unsigned int qdetector_cccf_get_seq_len (qdetector_cccf _q); // sequence length @@ -5563,25 +5629,25 @@ SYMSTREAM() SYMSTREAM(_create_linear)(int _ftype, \ int _ms); \ \ /* Destroy symstream object, freeing all internal memory */ \ -void SYMSTREAM(_destroy)(SYMSTREAM() _q); \ +int SYMSTREAM(_destroy)(SYMSTREAM() _q); \ \ /* Print symstream object's parameters */ \ -void SYMSTREAM(_print)(SYMSTREAM() _q); \ +int SYMSTREAM(_print)(SYMSTREAM() _q); \ \ /* Reset symstream internal state */ \ -void SYMSTREAM(_reset)(SYMSTREAM() _q); \ +int SYMSTREAM(_reset)(SYMSTREAM() _q); \ \ /* Set internal linear modulation scheme, leaving the filter parameters */ \ /* (interpolator) unmodified */ \ -void SYMSTREAM(_set_scheme)(SYMSTREAM() _q, \ - int _ms); \ +int SYMSTREAM(_set_scheme)(SYMSTREAM() _q, \ + int _ms); \ \ /* Get internal linear modulation scheme */ \ int SYMSTREAM(_get_scheme)(SYMSTREAM() _q); \ \ /* Set internal linear gain (before interpolation) */ \ -void SYMSTREAM(_set_gain)(SYMSTREAM() _q, \ - float _gain); \ +int SYMSTREAM(_set_gain)(SYMSTREAM() _q, \ + float _gain); \ \ /* Get internal linear gain (before interpolation) */ \ float SYMSTREAM(_get_gain)(SYMSTREAM() _q); \ @@ -5590,9 +5656,9 @@ float SYMSTREAM(_get_gain)(SYMSTREAM() _q); \ /* _q : synchronizer object */ \ /* _buf : output buffer [size: _buf_len x 1] */ \ /* _buf_len: output buffer size */ \ -void SYMSTREAM(_write_samples)(SYMSTREAM() _q, \ - TO * _buf, \ - unsigned int _buf_len); \ +int SYMSTREAM(_write_samples)(SYMSTREAM() _q, \ + TO * _buf, \ + unsigned int _buf_len); \ LIQUID_SYMSTREAM_DEFINE_API(LIQUID_SYMSTREAM_MANGLE_CFLOAT, liquid_float_complex) @@ -5622,13 +5688,13 @@ MSOURCE() MSOURCE(_create)(unsigned int _M, \ MSOURCE() MSOURCE(_create_default)(void); \ \ /* Destroy msource object */ \ -void MSOURCE(_destroy)(MSOURCE() _q); \ +int MSOURCE(_destroy)(MSOURCE() _q); \ \ /* Print msource object */ \ -void MSOURCE(_print)(MSOURCE() _q); \ +int MSOURCE(_print)(MSOURCE() _q); \ \ /* Reset msource object */ \ -void MSOURCE(_reset)(MSOURCE() _q); \ +int MSOURCE(_reset)(MSOURCE() _q); \ \ /* user-defined callback for generating samples */ \ typedef int (*MSOURCE(_callback))(void * _userdata, \ @@ -5763,9 +5829,9 @@ int MSOURCE(_get_frequency)(MSOURCE() _q, \ /* _q : synchronizer object */ \ /* _buf : output buffer, [size: _buf_len x 1] */ \ /* _buf_len: output buffer size */ \ -void MSOURCE(_write_samples)(MSOURCE() _q, \ - TO * _buf, \ - unsigned int _buf_len); \ +int MSOURCE(_write_samples)(MSOURCE() _q, \ + TO * _buf, \ + unsigned int _buf_len); \ LIQUID_MSOURCE_DEFINE_API(LIQUID_MSOURCE_MANGLE_CFLOAT, liquid_float_complex) @@ -5811,41 +5877,50 @@ SYMTRACK() SYMTRACK(_create)(int _ftype, \ SYMTRACK() SYMTRACK(_create_default)(); \ \ /* Destroy symtrack object, freeing all internal memory */ \ -void SYMTRACK(_destroy)(SYMTRACK() _q); \ +int SYMTRACK(_destroy)(SYMTRACK() _q); \ \ /* Print symtrack object's parameters */ \ -void SYMTRACK(_print)(SYMTRACK() _q); \ +int SYMTRACK(_print)(SYMTRACK() _q); \ \ /* Reset symtrack internal state */ \ -void SYMTRACK(_reset)(SYMTRACK() _q); \ +int SYMTRACK(_reset)(SYMTRACK() _q); \ \ /* Set symtrack modulation scheme */ \ /* _q : symtrack object */ \ /* _ms : modulation scheme, _ms(LIQUID_MODEM_BPSK) */ \ -void SYMTRACK(_set_modscheme)(SYMTRACK() _q, \ - int _ms); \ +int SYMTRACK(_set_modscheme)(SYMTRACK() _q, \ + int _ms); \ \ /* Set symtrack internal bandwidth */ \ /* _q : symtrack object */ \ /* _bw : tracking bandwidth, _bw > 0 */ \ -void SYMTRACK(_set_bandwidth)(SYMTRACK() _q, \ - float _bw); \ +int SYMTRACK(_set_bandwidth)(SYMTRACK() _q, \ + float _bw); \ \ /* Adjust internal NCO by requested phase */ \ /* _q : symtrack object */ \ /* _dphi : NCO phase adjustment [radians] */ \ -void SYMTRACK(_adjust_phase)(SYMTRACK() _q, \ - T _dphi); \ +int SYMTRACK(_adjust_phase)(SYMTRACK() _q, \ + T _dphi); \ + \ +/* Set symtrack equalization strategy to constant modulus (default) */ \ +int SYMTRACK(_set_eq_cm)(SYMTRACK() _q); \ + \ +/* Set symtrack equalization strategy to decision directed */ \ +int SYMTRACK(_set_eq_dd)(SYMTRACK() _q); \ + \ +/* Disable symtrack equalization */ \ +int SYMTRACK(_set_eq_off)(SYMTRACK() _q); \ \ /* Execute synchronizer on single input sample */ \ /* _q : synchronizer object */ \ /* _x : input data sample */ \ /* _y : output data array, [size: 2 x 1] */ \ /* _ny : number of samples written to output buffer (0, 1, or 2) */ \ -void SYMTRACK(_execute)(SYMTRACK() _q, \ - TI _x, \ - TO * _y, \ - unsigned int * _ny); \ +int SYMTRACK(_execute)(SYMTRACK() _q, \ + TI _x, \ + TO * _y, \ + unsigned int * _ny); \ \ /* execute synchronizer on input data array */ \ /* _q : synchronizer object */ \ @@ -5853,11 +5928,11 @@ void SYMTRACK(_execute)(SYMTRACK() _q, \ /* _nx : number of input samples */ \ /* _y : output data array, [size: 2 _nx x 1] */ \ /* _ny : number of samples written to output buffer */ \ -void SYMTRACK(_execute_block)(SYMTRACK() _q, \ - TI * _x, \ - unsigned int _nx, \ - TO * _y, \ - unsigned int * _ny); \ +int SYMTRACK(_execute_block)(SYMTRACK() _q, \ + TI * _x, \ + unsigned int _nx, \ + TO * _y, \ + unsigned int * _ny); \ LIQUID_SYMTRACK_DEFINE_API(LIQUID_SYMTRACK_MANGLE_RRRF, float, @@ -6044,9 +6119,9 @@ float liquid_kbd(unsigned int _i, // _wlen : full window length (must be even) // _beta : Kaiser window parameter (_beta > 0) // _w : window output buffer, [size: _wlen x 1] -void liquid_kbd_window(unsigned int _wlen, - float _beta, - float * _w); +int liquid_kbd_window(unsigned int _wlen, + float _beta, + float * _w); // polynomials @@ -6078,21 +6153,21 @@ T POLY(_val)(T * _p, \ /* _n : number of samples in _x and _y */ \ /* _p : polynomial coefficients output [size _k x 1] */ \ /* _k : polynomial coefficients length, order is _k - 1 */ \ -void POLY(_fit)(T * _x, \ - T * _y, \ - unsigned int _n, \ - T * _p, \ - unsigned int _k); \ +int POLY(_fit)(T * _x, \ + T * _y, \ + unsigned int _n, \ + T * _p, \ + unsigned int _k); \ \ /* Perform Lagrange polynomial exact fit on data set */ \ /* _x : x-value sample set, size [_n x 1] */ \ /* _y : y-value sample set, size [_n x 1] */ \ /* _n : number of samples in _x and _y */ \ /* _p : polynomial coefficients output [size _n x 1] */ \ -void POLY(_fit_lagrange)(T * _x, \ - T * _y, \ - unsigned int _n, \ - T * _p); \ +int POLY(_fit_lagrange)(T * _x, \ + T * _y, \ + unsigned int _n, \ + T * _p); \ \ /* Perform Lagrange polynomial interpolation on data set without */ \ /* computing coefficients as an intermediate step. */ \ @@ -6109,9 +6184,9 @@ T POLY(_interp_lagrange)(T * _x, \ /* _x : x-value sample set, size [_n x 1] */ \ /* _n : number of samples in _x */ \ /* _w : barycentric weights normalized so _w[0]=1, size [_n x 1] */ \ -void POLY(_fit_lagrange_barycentric)(T * _x, \ - unsigned int _n, \ - T * _w); \ +int POLY(_fit_lagrange_barycentric)(T * _x, \ + unsigned int _n, \ + T * _w); \ \ /* Perform Lagrange polynomial interpolation using the barycentric form */ \ /* of the weights. */ \ @@ -6133,8 +6208,8 @@ T POLY(_val_lagrange_barycentric)(T * _x, \ /* NOTE: _p has order n (coefficients has length n+1) */ \ /* _n : polynomial order */ \ /* _p : polynomial coefficients [size: _n+1 x 1] */ \ -void POLY(_expandbinomial)(unsigned int _n, \ - T * _p); \ +int POLY(_expandbinomial)(unsigned int _n, \ + T * _p); \ \ /* Perform positive/negative binomial expansion on the polynomial */ \ /* \( P_n(x) = (1+x)^m (1-x)^k \) */ \ @@ -6144,9 +6219,9 @@ void POLY(_expandbinomial)(unsigned int _n, \ /* _m : number of '1+x' terms */ \ /* _k : number of '1-x' terms */ \ /* _p : polynomial coefficients [size: _m+_k+1 x 1] */ \ -void POLY(_expandbinomial_pm)(unsigned int _m, \ - unsigned int _k, \ - T * _p); \ +int POLY(_expandbinomial_pm)(unsigned int _m, \ + unsigned int _k, \ + T * _p); \ \ /* Perform root expansion on the polynomial */ \ /* \( P_n(x) = (x-r[0]) (x-r[1]) ... (x-r[n-1]) \) */ \ @@ -6157,9 +6232,9 @@ void POLY(_expandbinomial_pm)(unsigned int _m, \ /* _r : roots of polynomial [size: _n x 1] */ \ /* _n : number of roots in polynomial */ \ /* _p : polynomial coefficients [size: _n+1 x 1] */ \ -void POLY(_expandroots)(T * _r, \ - unsigned int _n, \ - T * _p); \ +int POLY(_expandroots)(T * _r, \ + unsigned int _n, \ + T * _p); \ \ /* Perform root expansion on the polynomial */ \ /* \( P_n(x) = (xb[0]-a[0]) (xb[1]-a[1])...(xb[n-1]-a[n-1]) \) */ \ @@ -6170,35 +6245,35 @@ void POLY(_expandroots)(T * _r, \ /* _b : multiplicant of polynomial roots [size: _n x 1] */ \ /* _n : number of roots in polynomial */ \ /* _p : polynomial coefficients [size: _n+1 x 1] */ \ -void POLY(_expandroots2)(T * _a, \ - T * _b, \ - unsigned int _n, \ - T * _p); \ +int POLY(_expandroots2)(T * _a, \ + T * _b, \ + unsigned int _n, \ + T * _p); \ \ /* Find the complex roots of a polynomial. */ \ /* _p : polynomial coefficients [size: _n x 1] */ \ /* _k : polynomial length */ \ /* _roots : resulting complex roots [size: _k-1 x 1] */ \ -void POLY(_findroots)(T * _poly, \ - unsigned int _n, \ - TC * _roots); \ +int POLY(_findroots)(T * _poly, \ + unsigned int _n, \ + TC * _roots); \ \ /* Find the complex roots of the polynomial using the Durand-Kerner */ \ /* method */ \ /* _p : polynomial coefficients [size: _n x 1] */ \ /* _k : polynomial length */ \ /* _roots : resulting complex roots [size: _k-1 x 1] */ \ -void POLY(_findroots_durandkerner)(T * _p, \ - unsigned int _k, \ - TC * _roots); \ +int POLY(_findroots_durandkerner)(T * _p, \ + unsigned int _k, \ + TC * _roots); \ \ /* Find the complex roots of the polynomial using Bairstow's method. */ \ /* _p : polynomial coefficients [size: _n x 1] */ \ /* _k : polynomial length */ \ /* _roots : resulting complex roots [size: _k-1 x 1] */ \ -void POLY(_findroots_bairstow)(T * _p, \ - unsigned int _k, \ - TC * _roots); \ +int POLY(_findroots_bairstow)(T * _p, \ + unsigned int _k, \ + TC * _roots); \ \ /* Expand the multiplication of two polynomials */ \ /* \( ( a[0] + a[1]x + a[2]x^2 + ...) (b[0] + b[1]x + b[]x^2 + ...) \) */ \ @@ -6211,11 +6286,11 @@ void POLY(_findroots_bairstow)(T * _p, \ /* _b : 2nd polynomial coefficients (length is _order_b+1) */ \ /* _order_b : 2nd polynomial order */ \ /* _c : output polynomial [size: _order_a+_order_b+1 x 1] */ \ -void POLY(_mul)(T * _a, \ - unsigned int _order_a, \ - T * _b, \ - unsigned int _order_b, \ - T * _c); \ +int POLY(_mul)(T * _a, \ + unsigned int _order_a, \ + T * _b, \ + unsigned int _order_b, \ + T * _c); \ LIQUID_POLY_DEFINE_API(LIQUID_POLY_MANGLE_DOUBLE, double, @@ -6257,17 +6332,17 @@ int liquid_is_prime(unsigned int _n); // _n : number to factor // _factors : pre-allocated array of factors [size: LIQUID_MAX_FACTORS x 1] // _num_factors: number of factors found, sorted ascending -void liquid_factor(unsigned int _n, - unsigned int * _factors, - unsigned int * _num_factors); +int liquid_factor(unsigned int _n, + unsigned int * _factors, + unsigned int * _num_factors); // compute number's unique prime factors // _n : number to factor // _factors : pre-allocated array of factors [size: LIQUID_MAX_FACTORS x 1] // _num_factors: number of unique factors found, sorted ascending -void liquid_unique_factor(unsigned int _n, - unsigned int * _factors, - unsigned int * _num_factors); +int liquid_unique_factor(unsigned int _n, + unsigned int * _factors, + unsigned int * _num_factors); // compute greatest common divisor between to numbers P and Q unsigned int liquid_gcd(unsigned int _P, @@ -6307,9 +6382,9 @@ unsigned int liquid_totient(unsigned int _n); /* _x : input matrix, [size: _r x _c] */ \ /* _r : rows in matrix */ \ /* _c : columns in matrix */ \ -void MATRIX(_print)(T * _x, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_print)(T * _x, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Perform point-wise addition between two matrices \(\vec{X}\) */ \ /* and \(\vec{Y}\), saving the result in the output matrix \(\vec{Z}\). */ \ @@ -6320,11 +6395,11 @@ void MATRIX(_print)(T * _x, \ /* _z : output matrix, [size: _r x _c] */ \ /* _r : number of rows in each matrix */ \ /* _c : number of columns in each matrix */ \ -void MATRIX(_add)(T * _x, \ - T * _y, \ - T * _z, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_add)(T * _x, \ + T * _y, \ + T * _z, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Perform point-wise subtraction between two matrices \(\vec{X}\) */ \ /* and \(\vec{Y}\), saving the result in the output matrix \(\vec{Z}\) */ \ @@ -6335,11 +6410,11 @@ void MATRIX(_add)(T * _x, \ /* _z : output matrix, [size: _r x _c] */ \ /* _r : number of rows in each matrix */ \ /* _c : number of columns in each matrix */ \ -void MATRIX(_sub)(T * _x, \ - T * _y, \ - T * _z, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_sub)(T * _x, \ + T * _y, \ + T * _z, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Perform point-wise multiplication between two matrices \(\vec{X}\) */ \ /* and \(\vec{Y}\), saving the result in the output matrix \(\vec{Z}\) */ \ @@ -6350,11 +6425,11 @@ void MATRIX(_sub)(T * _x, \ /* _z : output matrix, [size: _r x _c] */ \ /* _r : number of rows in each matrix */ \ /* _c : number of columns in each matrix */ \ -void MATRIX(_pmul)(T * _x, \ - T * _y, \ - T * _z, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_pmul)(T * _x, \ + T * _y, \ + T * _z, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Perform point-wise division between two matrices \(\vec{X}\) */ \ /* and \(\vec{Y}\), saving the result in the output matrix \(\vec{Z}\) */ \ @@ -6365,11 +6440,11 @@ void MATRIX(_pmul)(T * _x, \ /* _z : output matrix, [size: _r x _c] */ \ /* _r : number of rows in each matrix */ \ /* _c : number of columns in each matrix */ \ -void MATRIX(_pdiv)(T * _x, \ - T * _y, \ - T * _z, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_pdiv)(T * _x, \ + T * _y, \ + T * _z, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Multiply two matrices \(\vec{X}\) and \(\vec{Y}\), storing the */ \ /* result in \(\vec{Z}\). */ \ @@ -6383,9 +6458,9 @@ void MATRIX(_pdiv)(T * _x, \ /* _z : output matrix, [size: _rz x _cz] */ \ /* _rz : number of rows in _z */ \ /* _cz : number of columns in _z */ \ -void MATRIX(_mul)(T * _x, unsigned int _rx, unsigned int _cx, \ - T * _y, unsigned int _ry, unsigned int _cy, \ - T * _z, unsigned int _rz, unsigned int _cz); \ +int MATRIX(_mul)(T * _x, unsigned int _rx, unsigned int _cx, \ + T * _y, unsigned int _ry, unsigned int _cy, \ + T * _z, unsigned int _rz, unsigned int _cz); \ \ /* Solve \(\vec{X} = \vec{Y} \vec{Z}\) for \(\vec{Z}\) for square */ \ /* matrices of size \(n\) */ \ @@ -6393,10 +6468,10 @@ void MATRIX(_mul)(T * _x, unsigned int _rx, unsigned int _cx, \ /* _y : input matrix, [size: _n x _n] */ \ /* _z : output matrix, [size: _n x _n] */ \ /* _n : number of rows and columns in each matrix */ \ -void MATRIX(_div)(T * _x, \ - T * _y, \ - T * _z, \ - unsigned int _n); \ +int MATRIX(_div)(T * _x, \ + T * _y, \ + T * _z, \ + unsigned int _n); \ \ /* Compute the determinant of a square matrix \(\vec{X}\) */ \ /* _x : input matrix, [size: _r x _c] */ \ @@ -6410,17 +6485,17 @@ T MATRIX(_det)(T * _x, \ /* _x : input matrix, [size: _r x _c] */ \ /* _r : rows */ \ /* _c : columns */ \ -void MATRIX(_trans)(T * _x, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_trans)(T * _x, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Compute the in-place Hermitian transpose of the matrix \(\vec{X}\) */ \ /* _x : input matrix, [size: _r x _c] */ \ /* _r : rows */ \ /* _c : columns */ \ -void MATRIX(_hermitian)(T * _x, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_hermitian)(T * _x, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Compute \(\vec{X}\vec{X}^T\) on a \(m \times n\) matrix. */ \ /* The result is a \(m \times m\) matrix. */ \ @@ -6428,10 +6503,10 @@ void MATRIX(_hermitian)(T * _x, \ /* _m : input rows */ \ /* _n : input columns */ \ /* _xxT : output matrix, [size: _m x _m] */ \ -void MATRIX(_mul_transpose)(T * _x, \ - unsigned int _m, \ - unsigned int _n, \ - T * _xxT); \ +int MATRIX(_mul_transpose)(T * _x, \ + unsigned int _m, \ + unsigned int _n, \ + T * _xxT); \ \ /* Compute \(\vec{X}^T\vec{X}\) on a \(m \times n\) matrix. */ \ /* The result is a \(n \times n\) matrix. */ \ @@ -6439,10 +6514,10 @@ void MATRIX(_mul_transpose)(T * _x, \ /* _m : input rows */ \ /* _n : input columns */ \ /* _xTx : output matrix, [size: _n x _n] */ \ -void MATRIX(_transpose_mul)(T * _x, \ - unsigned int _m, \ - unsigned int _n, \ - T * _xTx); \ +int MATRIX(_transpose_mul)(T * _x, \ + unsigned int _m, \ + unsigned int _n, \ + T * _xTx); \ \ /* Compute \(\vec{X}\vec{X}^H\) on a \(m \times n\) matrix. */ \ /* The result is a \(m \times m\) matrix. */ \ @@ -6450,10 +6525,10 @@ void MATRIX(_transpose_mul)(T * _x, \ /* _m : input rows */ \ /* _n : input columns */ \ /* _xxH : output matrix, [size: _m x _m] */ \ -void MATRIX(_mul_hermitian)(T * _x, \ - unsigned int _m, \ - unsigned int _n, \ - T * _xxH); \ +int MATRIX(_mul_hermitian)(T * _x, \ + unsigned int _m, \ + unsigned int _n, \ + T * _xxH); \ \ /* Compute \(\vec{X}^H\vec{X}\) on a \(m \times n\) matrix. */ \ /* The result is a \(n \times n\) matrix. */ \ @@ -6461,10 +6536,10 @@ void MATRIX(_mul_hermitian)(T * _x, \ /* _m : input rows */ \ /* _n : input columns */ \ /* _xHx : output matrix, [size: _n x _n] */ \ -void MATRIX(_hermitian_mul)(T * _x, \ - unsigned int _m, \ - unsigned int _n, \ - T * _xHx); \ +int MATRIX(_hermitian_mul)(T * _x, \ + unsigned int _m, \ + unsigned int _n, \ + T * _xHx); \ \ \ /* Augment two matrices \(\vec{X}\) and \(\vec{Y}\), storing the result */ \ @@ -6479,47 +6554,47 @@ void MATRIX(_hermitian_mul)(T * _x, \ /* _z : output matrix, [size: _rz x _cz] */ \ /* _rz : number of rows in _z */ \ /* _cz : number of columns in _z */ \ -void MATRIX(_aug)(T * _x, unsigned int _rx, unsigned int _cx, \ - T * _y, unsigned int _ry, unsigned int _cy, \ - T * _z, unsigned int _rz, unsigned int _cz); \ +int MATRIX(_aug)(T * _x, unsigned int _rx, unsigned int _cx, \ + T * _y, unsigned int _ry, unsigned int _cy, \ + T * _z, unsigned int _rz, unsigned int _cz); \ \ /* Compute the inverse of a square matrix \(\vec{X}\) */ \ /* _x : input/output matrix, [size: _r x _c] */ \ /* _r : rows */ \ /* _c : columns */ \ -void MATRIX(_inv)(T * _x, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_inv)(T * _x, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Generate the identity square matrix of size \(n\) */ \ /* _x : output matrix, [size: _n x _n] */ \ /* _n : dimensions of _x */ \ -void MATRIX(_eye)(T * _x, \ - unsigned int _n); \ +int MATRIX(_eye)(T * _x, \ + unsigned int _n); \ \ /* Generate the all-ones matrix of size \(n\) */ \ /* _x : output matrix, [size: _r x _c] */ \ /* _r : rows */ \ /* _c : columns */ \ -void MATRIX(_ones)(T * _x, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_ones)(T * _x, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Generate the all-zeros matrix of size \(n\) */ \ /* _x : output matrix, [size: _r x _c] */ \ /* _r : rows */ \ /* _c : columns */ \ -void MATRIX(_zeros)(T * _x, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_zeros)(T * _x, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Perform Gauss-Jordan elimination on matrix \(\vec{X}\) */ \ /* _x : input/output matrix, [size: _r x _c] */ \ /* _r : rows */ \ /* _c : columns */ \ -void MATRIX(_gjelim)(T * _x, \ - unsigned int _r, \ - unsigned int _c); \ +int MATRIX(_gjelim)(T * _x, \ + unsigned int _r, \ + unsigned int _c); \ \ /* Pivot on element \(\vec{X}_{i,j}\) */ \ /* _x : output matrix, [size: _r x _c] */ \ @@ -6527,11 +6602,11 @@ void MATRIX(_gjelim)(T * _x, \ /* _c : columns of _x */ \ /* _i : pivot row */ \ /* _j : pivot column */ \ -void MATRIX(_pivot)(T * _x, \ - unsigned int _r, \ - unsigned int _c, \ - unsigned int _i, \ - unsigned int _j); \ +int MATRIX(_pivot)(T * _x, \ + unsigned int _r, \ + unsigned int _c, \ + unsigned int _i, \ + unsigned int _j); \ \ /* Swap rows _r1 and _r2 of matrix \(\vec{X}\) */ \ /* _x : input/output matrix, [size: _r x _c] */ \ @@ -6539,11 +6614,11 @@ void MATRIX(_pivot)(T * _x, \ /* _c : columns of _x */ \ /* _r1 : first row to swap */ \ /* _r2 : second row to swap */ \ -void MATRIX(_swaprows)(T * _x, \ - unsigned int _r, \ - unsigned int _c, \ - unsigned int _r1, \ - unsigned int _r2); \ +int MATRIX(_swaprows)(T * _x, \ + unsigned int _r, \ + unsigned int _c, \ + unsigned int _r1, \ + unsigned int _r2); \ \ /* Solve linear system of \(n\) equations: \(\vec{A}\vec{x} = \vec{b}\) */ \ /* _A : system matrix, [size: _n x _n] */ \ @@ -6551,11 +6626,11 @@ void MATRIX(_swaprows)(T * _x, \ /* _b : equality vector, [size: _n x 1] */ \ /* _x : solution vector, [size: _n x 1] */ \ /* _opts : options (ignored for now) */ \ -void MATRIX(_linsolve)(T * _A, \ - unsigned int _n, \ - T * _b, \ - T * _x, \ - void * _opts); \ +int MATRIX(_linsolve)(T * _A, \ + unsigned int _n, \ + T * _b, \ + T * _x, \ + void * _opts); \ \ /* Solve linear system of equations using conjugate gradient method. */ \ /* _A : symmetric positive definite square matrix */ \ @@ -6563,11 +6638,11 @@ void MATRIX(_linsolve)(T * _A, \ /* _b : equality, [size: _n x 1] */ \ /* _x : solution estimate, [size: _n x 1] */ \ /* _opts : options (ignored for now) */ \ -void MATRIX(_cgsolve)(T * _A, \ - unsigned int _n, \ - T * _b, \ - T * _x, \ - void * _opts); \ +int MATRIX(_cgsolve)(T * _A, \ + unsigned int _n, \ + T * _b, \ + T * _x, \ + void * _opts); \ \ /* Perform L/U/P decomposition using Crout's method */ \ /* _x : input/output matrix, [size: _rx x _cx] */ \ @@ -6576,12 +6651,12 @@ void MATRIX(_cgsolve)(T * _A, \ /* _L : first row to swap */ \ /* _U : first row to swap */ \ /* _P : first row to swap */ \ -void MATRIX(_ludecomp_crout)(T * _x, \ - unsigned int _rx, \ - unsigned int _cx, \ - T * _L, \ - T * _U, \ - T * _P); \ +int MATRIX(_ludecomp_crout)(T * _x, \ + unsigned int _rx, \ + unsigned int _cx, \ + T * _L, \ + T * _U, \ + T * _P); \ \ /* Perform L/U/P decomposition, Doolittle's method */ \ /* _x : input/output matrix, [size: _rx x _cx] */ \ @@ -6590,22 +6665,22 @@ void MATRIX(_ludecomp_crout)(T * _x, \ /* _L : first row to swap */ \ /* _U : first row to swap */ \ /* _P : first row to swap */ \ -void MATRIX(_ludecomp_doolittle)(T * _x, \ - unsigned int _rx, \ - unsigned int _cx, \ - T * _L, \ - T * _U, \ - T * _P); \ +int MATRIX(_ludecomp_doolittle)(T * _x, \ + unsigned int _rx, \ + unsigned int _cx, \ + T * _L, \ + T * _U, \ + T * _P); \ \ /* Perform orthnormalization using the Gram-Schmidt algorithm */ \ /* _A : input matrix, [size: _r x _c] */ \ /* _r : rows */ \ /* _c : columns */ \ /* _v : output matrix */ \ -void MATRIX(_gramschmidt)(T * _A, \ - unsigned int _r, \ - unsigned int _c, \ - T * _v); \ +int MATRIX(_gramschmidt)(T * _A, \ + unsigned int _r, \ + unsigned int _c, \ + T * _v); \ \ /* Perform Q/R decomposition using the Gram-Schmidt algorithm such that */ \ /* \( \vec{A} = \vec{Q} \vec{R} \) */ \ @@ -6617,20 +6692,20 @@ void MATRIX(_gramschmidt)(T * _A, \ /* _n : columns (same as cols) */ \ /* _Q : output matrix, [size: _m x _m] */ \ /* _R : output matrix, [size: _m x _m] */ \ -void MATRIX(_qrdecomp_gramschmidt)(T * _A, \ - unsigned int _m, \ - unsigned int _n, \ - T * _Q, \ - T * _R); \ +int MATRIX(_qrdecomp_gramschmidt)(T * _A, \ + unsigned int _m, \ + unsigned int _n, \ + T * _Q, \ + T * _R); \ \ /* Compute Cholesky decomposition of a symmetric/Hermitian */ \ /* positive-definite matrix as \( \vec{A} = \vec{L}\vec{L}^T \) */ \ /* _A : input square matrix, [size: _n x _n] */ \ /* _n : input matrix dimension */ \ /* _L : output lower-triangular matrix */ \ -void MATRIX(_chol)(T * _A, \ - unsigned int _n, \ - T * _L); \ +int MATRIX(_chol)(T * _A, \ + unsigned int _n, \ + T * _L); \ #define matrix_access(X,R,C,r,c) ((X)[(r)*(C)+(c)]) @@ -6671,27 +6746,27 @@ SMATRIX() SMATRIX(_create_array)(T * _x, \ unsigned int _n); \ \ /* Destroy object, freeing all internal memory */ \ -void SMATRIX(_destroy)(SMATRIX() _q); \ +int SMATRIX(_destroy)(SMATRIX() _q); \ \ /* Print sparse matrix in compact form to stdout */ \ -void SMATRIX(_print)(SMATRIX() _q); \ +int SMATRIX(_print)(SMATRIX() _q); \ \ /* Print sparse matrix in expanded form to stdout */ \ -void SMATRIX(_print_expanded)(SMATRIX() _q); \ +int SMATRIX(_print_expanded)(SMATRIX() _q); \ \ /* Get size of sparse matrix (number of rows and columns) */ \ /* _q : sparse matrix object */ \ /* _m : number of rows in matrix */ \ /* _n : number of columns in matrix */ \ -void SMATRIX(_size)(SMATRIX() _q, \ - unsigned int * _m, \ - unsigned int * _n); \ +int SMATRIX(_size)(SMATRIX() _q, \ + unsigned int * _m, \ + unsigned int * _n); \ \ /* Zero all elements and retain allocated memory */ \ -void SMATRIX(_clear)(SMATRIX() _q); \ +int SMATRIX(_clear)(SMATRIX() _q); \ \ /* Zero all elements and clear memory */ \ -void SMATRIX(_reset)(SMATRIX() _q); \ +int SMATRIX(_reset)(SMATRIX() _q); \ \ /* Determine if value has been set (allocated memory) */ \ /* _q : sparse matrix object */ \ @@ -6706,18 +6781,18 @@ int SMATRIX(_isset)(SMATRIX() _q, \ /* _m : row index of value to insert */ \ /* _n : column index of value to insert */ \ /* _v : value to insert */ \ -void SMATRIX(_insert)(SMATRIX() _q, \ - unsigned int _m, \ - unsigned int _n, \ - T _v); \ +int SMATRIX(_insert)(SMATRIX() _q, \ + unsigned int _m, \ + unsigned int _n, \ + T _v); \ \ /* Delete an element at index, freeing memory */ \ /* _q : sparse matrix object */ \ /* _m : row index of value to delete */ \ /* _n : column index of value to delete */ \ -void SMATRIX(_delete)(SMATRIX() _q, \ - unsigned int _m, \ - unsigned int _n); \ +int SMATRIX(_delete)(SMATRIX() _q, \ + unsigned int _m, \ + unsigned int _n); \ \ /* Set the value in matrix at specified row and column, allocating */ \ /* memory if needed */ \ @@ -6725,10 +6800,10 @@ void SMATRIX(_delete)(SMATRIX() _q, \ /* _m : row index of value to set */ \ /* _n : column index of value to set */ \ /* _v : value to set in matrix */ \ -void SMATRIX(_set)(SMATRIX() _q, \ - unsigned int _m, \ - unsigned int _n, \ - T _v); \ +int SMATRIX(_set)(SMATRIX() _q, \ + unsigned int _m, \ + unsigned int _n, \ + T _v); \ \ /* Get the value from matrix at specified row and column */ \ /* _q : sparse matrix object */ \ @@ -6740,23 +6815,23 @@ T SMATRIX(_get)(SMATRIX() _q, \ \ /* Initialize to identity matrix; set all diagonal elements to 1, all */ \ /* others to 0. This is done with both square and non-square matrices. */ \ -void SMATRIX(_eye)(SMATRIX() _q); \ +int SMATRIX(_eye)(SMATRIX() _q); \ \ /* Multiply two sparse matrices, \( \vec{Z} = \vec{X} \vec{Y} \) */ \ /* _x : sparse matrix object (input) */ \ /* _y : sparse matrix object (input) */ \ /* _z : sparse matrix object (output) */ \ -void SMATRIX(_mul)(SMATRIX() _x, \ - SMATRIX() _y, \ - SMATRIX() _z); \ +int SMATRIX(_mul)(SMATRIX() _x, \ + SMATRIX() _y, \ + SMATRIX() _z); \ \ /* Multiply sparse matrix by vector */ \ /* _q : sparse matrix */ \ /* _x : input vector, [size: _n x 1] */ \ /* _y : output vector, [size: _m x 1] */ \ -void SMATRIX(_vmul)(SMATRIX() _q, \ - T * _x, \ - T * _y); \ +int SMATRIX(_vmul)(SMATRIX() _q, \ + T * _x, \ + T * _y); \ LIQUID_SMATRIX_DEFINE_API(LIQUID_SMATRIX_MANGLE_BOOL, unsigned char) LIQUID_SMATRIX_DEFINE_API(LIQUID_SMATRIX_MANGLE_FLOAT, float) @@ -6770,21 +6845,21 @@ LIQUID_SMATRIX_DEFINE_API(LIQUID_SMATRIX_MANGLE_INT, short int) // _q : sparse matrix [size: A->M x A->N] // _x : input vector [size: mx x nx ] // _y : output vector [size: my x ny ] -void smatrixb_mulf(smatrixb _A, - float * _x, - unsigned int _mx, - unsigned int _nx, - float * _y, - unsigned int _my, - unsigned int _ny); +int smatrixb_mulf(smatrixb _A, + float * _x, + unsigned int _mx, + unsigned int _nx, + float * _y, + unsigned int _my, + unsigned int _ny); // multiply sparse binary matrix by floating-point vector // _q : sparse matrix // _x : input vector [size: _N x 1] // _y : output vector [size: _M x 1] -void smatrixb_vmulf(smatrixb _q, - float * _x, - float * _y); +int smatrixb_vmulf(smatrixb _q, + float * _x, + float * _y); // @@ -6860,7 +6935,7 @@ struct modulation_type_s { extern const struct modulation_type_s modulation_types[LIQUID_MODEM_NUM_SCHEMES]; // Print compact list of existing and available modulation schemes -void liquid_print_modulation_schemes(); +int liquid_print_modulation_schemes(); // returns modulation_scheme based on input string modulation_scheme liquid_getopt_str2mod(const char * _str); @@ -6896,17 +6971,17 @@ unsigned int gray_decode(unsigned int symbol_in); // _soft_bits : soft input bits [size: _bps x 1] // _bps : bits per symbol // _sym_out : output symbol, value in [0,2^_bps) -void liquid_pack_soft_bits(unsigned char * _soft_bits, - unsigned int _bps, - unsigned int * _sym_out); +int liquid_pack_soft_bits(unsigned char * _soft_bits, + unsigned int _bps, + unsigned int * _sym_out); // unpack soft bits into symbol // _sym_in : input symbol, value in [0,2^_bps) // _bps : bits per symbol // _soft_bits : soft output bits [size: _bps x 1] -void liquid_unpack_soft_bits(unsigned int _sym_in, - unsigned int _bps, - unsigned char * _soft_bits); +int liquid_unpack_soft_bits(unsigned int _sym_in, + unsigned int _bps, + unsigned char * _soft_bits); // @@ -6943,15 +7018,15 @@ MODEM() MODEM(_recreate)(MODEM() _q, \ modulation_scheme _scheme); \ \ /* Destroy modem object, freeing all allocated memory */ \ -void MODEM(_destroy)(MODEM() _q); \ +int MODEM(_destroy)(MODEM() _q); \ \ /* Print modem status to stdout */ \ -void MODEM(_print)(MODEM() _q); \ +int MODEM(_print)(MODEM() _q); \ \ /* Reset internal state of modem object; note that this is only */ \ /* relevant for modulation types that retain an internal state such as */ \ /* LIQUID_MODEM_DPSK4 as most linear modulation types are stateless */ \ -void MODEM(_reset)(MODEM() _q); \ +int MODEM(_reset)(MODEM() _q); \ \ /* Generate random symbol for modulation */ \ unsigned int MODEM(_gen_rand_sym)(MODEM() _q); \ @@ -6966,9 +7041,9 @@ modulation_scheme MODEM(_get_scheme)(MODEM() _q); \ /* _q : modem object */ \ /* _s : input symbol, 0 <= _s <= M-1 */ \ /* _y : output complex sample */ \ -void MODEM(_modulate)(MODEM() _q, \ - unsigned int _s, \ - TC * _y); \ +int MODEM(_modulate)(MODEM() _q, \ + unsigned int _s, \ + TC * _y); \ \ /* Demodulate input sample and provide maximum-likelihood estimate of */ \ /* symbol that would have generated it. */ \ @@ -6985,9 +7060,9 @@ void MODEM(_modulate)(MODEM() _q, \ /* _q : modem object */ \ /* _x : input sample */ \ /* _s : output hard symbol, 0 <= _s <= M-1 */ \ -void MODEM(_demodulate)(MODEM() _q, \ - TC _x, \ - unsigned int * _s); \ +int MODEM(_demodulate)(MODEM() _q, \ + TC _x, \ + unsigned int * _s); \ \ /* Demodulate input sample and provide (approximate) log-likelihood */ \ /* ratio (LLR, soft bits) as an output. */ \ @@ -6997,14 +7072,14 @@ void MODEM(_demodulate)(MODEM() _q, \ /* _x : input sample */ \ /* _s : output hard symbol, 0 <= _s <= M-1 */ \ /* _soft_bits : output soft bits, [size: log2(M) x 1] */ \ -void MODEM(_demodulate_soft)(MODEM() _q, \ - TC _x, \ - unsigned int * _s, \ - unsigned char * _soft_bits); \ +int MODEM(_demodulate_soft)(MODEM() _q, \ + TC _x, \ + unsigned int * _s, \ + unsigned char * _soft_bits); \ \ /* Get demodulator's estimated transmit sample */ \ -void MODEM(_get_demodulator_sample)(MODEM() _q, \ - TC * _x_hat); \ +int MODEM(_get_demodulator_sample)(MODEM() _q, \ + TC * _x_hat); \ \ /* Get demodulator phase error */ \ float MODEM(_get_demodulator_phase_error)(MODEM() _q); \ @@ -7030,12 +7105,12 @@ typedef struct gmskmod_s * gmskmod; gmskmod gmskmod_create(unsigned int _k, unsigned int _m, float _BT); -void gmskmod_destroy(gmskmod _q); -void gmskmod_print(gmskmod _q); -void gmskmod_reset(gmskmod _q); -void gmskmod_modulate(gmskmod _q, - unsigned int _sym, - liquid_float_complex * _y); +int gmskmod_destroy(gmskmod _q); +int gmskmod_print(gmskmod _q); +int gmskmod_reset(gmskmod _q); +int gmskmod_modulate(gmskmod _q, + unsigned int _sym, + liquid_float_complex * _y); // gmskdem : GMSK demodulator @@ -7048,13 +7123,13 @@ typedef struct gmskdem_s * gmskdem; gmskdem gmskdem_create(unsigned int _k, unsigned int _m, float _BT); -void gmskdem_destroy(gmskdem _q); -void gmskdem_print(gmskdem _q); -void gmskdem_reset(gmskdem _q); -void gmskdem_set_eq_bw(gmskdem _q, float _bw); -void gmskdem_demodulate(gmskdem _q, - liquid_float_complex * _y, - unsigned int * _sym); +int gmskdem_destroy(gmskdem _q); +int gmskdem_print(gmskdem _q); +int gmskdem_reset(gmskdem _q); +int gmskdem_set_eq_bw(gmskdem _q, float _bw); +int gmskdem_demodulate(gmskdem _q, + liquid_float_complex * _y, + unsigned int * _sym); // // continuous phase frequency-shift keying (CP-FSK) modems @@ -7088,13 +7163,13 @@ cpfskmod cpfskmod_create(unsigned int _bps, //cpfskmod cpfskmod_create_gmsk(unsigned int _k, float _BT); // destroy cpfskmod object -void cpfskmod_destroy(cpfskmod _q); +int cpfskmod_destroy(cpfskmod _q); // print cpfskmod object internals -void cpfskmod_print(cpfskmod _q); +int cpfskmod_print(cpfskmod _q); // reset state -void cpfskmod_reset(cpfskmod _q); +int cpfskmod_reset(cpfskmod _q); // get transmit delay [symbols] unsigned int cpfskmod_get_delay(cpfskmod _q); @@ -7103,9 +7178,9 @@ unsigned int cpfskmod_get_delay(cpfskmod _q); // _q : frequency modulator object // _s : input symbol // _y : output sample array [size: _k x 1] -void cpfskmod_modulate(cpfskmod _q, - unsigned int _s, - liquid_float_complex * _y); +int cpfskmod_modulate(cpfskmod _q, + unsigned int _s, + liquid_float_complex * _y); @@ -7129,13 +7204,13 @@ cpfskdem cpfskdem_create(unsigned int _bps, //cpfskdem cpfskdem_create_gmsk(unsigned int _k, float _BT); // destroy cpfskdem object -void cpfskdem_destroy(cpfskdem _q); +int cpfskdem_destroy(cpfskdem _q); // print cpfskdem object internals -void cpfskdem_print(cpfskdem _q); +int cpfskdem_print(cpfskdem _q); // reset state -void cpfskdem_reset(cpfskdem _q); +int cpfskdem_reset(cpfskdem _q); // get receive delay [symbols] unsigned int cpfskdem_get_delay(cpfskdem _q); @@ -7147,11 +7222,11 @@ unsigned int cpfskdem_get_delay(cpfskdem _q); // _n : input sample array length // _s : output symbol array // _nw : number of output symbols written -void cpfskdem_demodulate(cpfskdem _q, - liquid_float_complex * _y, - unsigned int _n, - unsigned int * _s, - unsigned int * _nw); +int cpfskdem_demodulate(cpfskdem _q, + liquid_float_complex * _y, + unsigned int _n, + unsigned int * _s, + unsigned int * _nw); #else // demodulate array of samples, assuming perfect timing // _q : continuous-phase frequency demodulator object @@ -7178,21 +7253,21 @@ fskmod fskmod_create(unsigned int _m, float _bandwidth); // destroy fskmod object -void fskmod_destroy(fskmod _q); +int fskmod_destroy(fskmod _q); // print fskmod object internals -void fskmod_print(fskmod _q); +int fskmod_print(fskmod _q); // reset state -void fskmod_reset(fskmod _q); +int fskmod_reset(fskmod _q); // modulate sample // _q : frequency modulator object // _s : input symbol // _y : output sample array [size: _k x 1] -void fskmod_modulate(fskmod _q, - unsigned int _s, - liquid_float_complex * _y); +int fskmod_modulate(fskmod _q, + unsigned int _s, + liquid_float_complex * _y); @@ -7208,13 +7283,13 @@ fskdem fskdem_create(unsigned int _m, float _bandwidth); // destroy fskdem object -void fskdem_destroy(fskdem _q); +int fskdem_destroy(fskdem _q); // print fskdem object internals -void fskdem_print(fskdem _q); +int fskdem_print(fskdem _q); // reset state -void fskdem_reset(fskdem _q); +int fskdem_reset(fskdem _q); // demodulate symbol, assuming perfect symbol timing // _q : fskdem object @@ -7250,32 +7325,32 @@ typedef struct FREQMOD(_s) * FREQMOD(); \ FREQMOD() FREQMOD(_create)(float _kf); \ \ /* Destroy freqmod object, freeing all internal memory */ \ -void FREQMOD(_destroy)(FREQMOD() _q); \ +int FREQMOD(_destroy)(FREQMOD() _q); \ \ /* Print freqmod object internals to stdout */ \ -void FREQMOD(_print)(FREQMOD() _q); \ +int FREQMOD(_print)(FREQMOD() _q); \ \ /* Reset state */ \ -void FREQMOD(_reset)(FREQMOD() _q); \ +int FREQMOD(_reset)(FREQMOD() _q); \ \ /* Modulate single sample, producing single output sample at complex */ \ /* baseband. */ \ /* _q : frequency modulator object */ \ /* _m : message signal \( m(t) \) */ \ /* _s : complex baseband signal \( s(t) \) */ \ -void FREQMOD(_modulate)(FREQMOD() _q, \ - T _m, \ - TC * _s); \ +int FREQMOD(_modulate)(FREQMOD() _q, \ + T _m, \ + TC * _s); \ \ /* Modulate block of samples */ \ /* _q : frequency modulator object */ \ /* _m : message signal \( m(t) \), [size: _n x 1] */ \ /* _n : number of input, output samples */ \ /* _s : complex baseband signal \( s(t) \), [size: _n x 1] */ \ -void FREQMOD(_modulate_block)(FREQMOD() _q, \ - T * _m, \ - unsigned int _n, \ - TC * _s); \ +int FREQMOD(_modulate_block)(FREQMOD() _q, \ + T * _m, \ + unsigned int _n, \ + TC * _s); \ // define freqmod APIs LIQUID_FREQMOD_DEFINE_API(LIQUID_FREQMOD_MANGLE_FLOAT,float,liquid_float_complex) @@ -7298,31 +7373,31 @@ typedef struct FREQDEM(_s) * FREQDEM(); \ FREQDEM() FREQDEM(_create)(float _kf); \ \ /* destroy freqdem object */ \ -void FREQDEM(_destroy)(FREQDEM() _q); \ +int FREQDEM(_destroy)(FREQDEM() _q); \ \ /* print freqdem object internals */ \ -void FREQDEM(_print)(FREQDEM() _q); \ +int FREQDEM(_print)(FREQDEM() _q); \ \ /* reset state */ \ -void FREQDEM(_reset)(FREQDEM() _q); \ +int FREQDEM(_reset)(FREQDEM() _q); \ \ /* demodulate sample */ \ /* _q : frequency modulator object */ \ /* _r : received signal r(t) */ \ /* _m : output message signal m(t) */ \ -void FREQDEM(_demodulate)(FREQDEM() _q, \ - TC _r, \ - T * _m); \ +int FREQDEM(_demodulate)(FREQDEM() _q, \ + TC _r, \ + T * _m); \ \ /* demodulate block of samples */ \ /* _q : frequency demodulator object */ \ /* _r : received signal r(t) [size: _n x 1] */ \ /* _n : number of input, output samples */ \ /* _m : message signal m(t), [size: _n x 1] */ \ -void FREQDEM(_demodulate_block)(FREQDEM() _q, \ - TC * _r, \ - unsigned int _n, \ - T * _m); \ +int FREQDEM(_demodulate_block)(FREQDEM() _q, \ + TC * _r, \ + unsigned int _n, \ + T * _m); \ // define freqdem APIs LIQUID_FREQDEM_DEFINE_API(LIQUID_FREQDEM_MANGLE_FLOAT,float,liquid_float_complex) @@ -7347,37 +7422,37 @@ ampmodem ampmodem_create(float _mod_index, int _suppressed_carrier); // destroy ampmodem object -void ampmodem_destroy(ampmodem _q); +int ampmodem_destroy(ampmodem _q); // print ampmodem object internals -void ampmodem_print(ampmodem _q); +int ampmodem_print(ampmodem _q); // reset ampmodem object state -void ampmodem_reset(ampmodem _q); +int ampmodem_reset(ampmodem _q); // accessor methods unsigned int ampmodem_get_delay_mod (ampmodem _q); unsigned int ampmodem_get_delay_demod(ampmodem _q); // modulate sample -void ampmodem_modulate(ampmodem _q, - float _x, - liquid_float_complex * _y); +int ampmodem_modulate(ampmodem _q, + float _x, + liquid_float_complex * _y); -void ampmodem_modulate_block(ampmodem _q, - float * _m, - unsigned int _n, - liquid_float_complex * _s); +int ampmodem_modulate_block(ampmodem _q, + float * _m, + unsigned int _n, + liquid_float_complex * _s); // demodulate sample -void ampmodem_demodulate(ampmodem _q, - liquid_float_complex _y, - float * _x); +int ampmodem_demodulate(ampmodem _q, + liquid_float_complex _y, + float * _x); -void ampmodem_demodulate_block(ampmodem _q, - liquid_float_complex * _r, - unsigned int _n, - float * _m); +int ampmodem_demodulate_block(ampmodem _q, + liquid_float_complex * _r, + unsigned int _n, + float * _m); // // MODULE : multichannel @@ -7442,29 +7517,29 @@ FIRPFBCH() FIRPFBCH(_create_rnyquist)(int _type, \ int _ftype); \ \ /* destroy firpfbch object */ \ -void FIRPFBCH(_destroy)(FIRPFBCH() _q); \ +int FIRPFBCH(_destroy)(FIRPFBCH() _q); \ \ /* clear/reset firpfbch internal state */ \ -void FIRPFBCH(_reset)(FIRPFBCH() _q); \ +int FIRPFBCH(_reset)(FIRPFBCH() _q); \ \ /* print firpfbch internal parameters to stdout */ \ -void FIRPFBCH(_print)(FIRPFBCH() _q); \ +int FIRPFBCH(_print)(FIRPFBCH() _q); \ \ /* execute filterbank as synthesizer on block of samples */ \ /* _q : filterbank channelizer object */ \ /* _x : channelized input, [size: num_channels x 1] */ \ /* _y : output time series, [size: num_channels x 1] */ \ -void FIRPFBCH(_synthesizer_execute)(FIRPFBCH() _q, \ - TI * _x, \ - TO * _y); \ +int FIRPFBCH(_synthesizer_execute)(FIRPFBCH() _q, \ + TI * _x, \ + TO * _y); \ \ /* execute filterbank as analyzer on block of samples */ \ /* _q : filterbank channelizer object */ \ /* _x : input time series, [size: num_channels x 1] */ \ /* _y : channelized output, [size: num_channels x 1] */ \ -void FIRPFBCH(_analyzer_execute)(FIRPFBCH() _q, \ - TI * _x, \ - TO * _y); \ +int FIRPFBCH(_analyzer_execute)(FIRPFBCH() _q, \ + TI * _x, \ + TO * _y); \ LIQUID_FIRPFBCH_DEFINE_API(LIQUID_FIRPFBCH_MANGLE_CRCF, @@ -7514,22 +7589,22 @@ FIRPFBCH2() FIRPFBCH2(_create_kaiser)(int _type, \ float _As); \ \ /* destroy firpfbch2 object, freeing internal memory */ \ -void FIRPFBCH2(_destroy)(FIRPFBCH2() _q); \ +int FIRPFBCH2(_destroy)(FIRPFBCH2() _q); \ \ /* reset firpfbch2 object internals */ \ -void FIRPFBCH2(_reset)(FIRPFBCH2() _q); \ +int FIRPFBCH2(_reset)(FIRPFBCH2() _q); \ \ /* print firpfbch2 object internals */ \ -void FIRPFBCH2(_print)(FIRPFBCH2() _q); \ +int FIRPFBCH2(_print)(FIRPFBCH2() _q); \ \ /* execute filterbank channelizer */ \ /* LIQUID_ANALYZER: input: M/2, output: M */ \ /* LIQUID_SYNTHESIZER: input: M, output: M/2 */ \ /* _x : channelizer input */ \ /* _y : channelizer output */ \ -void FIRPFBCH2(_execute)(FIRPFBCH2() _q, \ - TI * _x, \ - TO * _y); \ +int FIRPFBCH2(_execute)(FIRPFBCH2() _q, \ + TI * _x, \ + TO * _y); \ LIQUID_FIRPFBCH2_DEFINE_API(LIQUID_FIRPFBCH2_MANGLE_CRCF, @@ -7570,13 +7645,13 @@ FIRPFBCHR() FIRPFBCHR(_create_kaiser)(unsigned int _M, \ float _As); \ \ /* destroy firpfbchr object, freeing internal memory */ \ -void FIRPFBCHR(_destroy)(FIRPFBCHR() _q); \ +int FIRPFBCHR(_destroy)(FIRPFBCHR() _q); \ \ /* reset firpfbchr object internal state and buffers */ \ -void FIRPFBCHR(_reset)(FIRPFBCHR() _q); \ +int FIRPFBCHR(_reset)(FIRPFBCHR() _q); \ \ /* print firpfbchr object internals to stdout */ \ -void FIRPFBCHR(_print)(FIRPFBCHR() _q); \ +int FIRPFBCHR(_print)(FIRPFBCHR() _q); \ \ /* get number of output channels to channelizer */ \ unsigned int FIRPFBCHR(_get_M)(FIRPFBCHR() _q); \ @@ -7590,15 +7665,15 @@ unsigned int FIRPFBCHR(_get_m)(FIRPFBCHR() _q); \ /* push buffer of samples into filter bank */ \ /* _q : channelizer object */ \ /* _x : channelizer input [size: P x 1] */ \ -void FIRPFBCHR(_push)(FIRPFBCHR() _q, \ - TI * _x); \ +int FIRPFBCHR(_push)(FIRPFBCHR() _q, \ + TI * _x); \ \ /* execute filterbank channelizer, writing complex baseband samples for */ \ /* each channel into output array */ \ /* _q : channelizer object */ \ /* _y : channelizer output [size: _M x 1] */ \ -void FIRPFBCHR(_execute)(FIRPFBCHR() _q, \ - TO * _y); \ +int FIRPFBCHR(_execute)(FIRPFBCHR() _q, \ + TO * _y); \ LIQUID_FIRPFBCHR_DEFINE_API(LIQUID_FIRPFBCHR_MANGLE_CRCF, @@ -7615,18 +7690,18 @@ LIQUID_FIRPFBCHR_DEFINE_API(LIQUID_FIRPFBCHR_MANGLE_CRCF, // initialize default subcarrier allocation // _M : number of subcarriers // _p : output subcarrier allocation array, [size: _M x 1] -void ofdmframe_init_default_sctype(unsigned int _M, - unsigned char * _p); +int ofdmframe_init_default_sctype(unsigned int _M, + unsigned char * _p); // initialize default subcarrier allocation // _M : number of subcarriers // _f0 : lower frequency band, _f0 in [-0.5,0.5] // _f1 : upper frequency band, _f1 in [-0.5,0.5] // _p : output subcarrier allocation array, [size: _M x 1] -void ofdmframe_init_sctype_range(unsigned int _M, - float _f0, - float _f1, - unsigned char * _p); +int ofdmframe_init_sctype_range(unsigned int _M, + float _f0, + float _f1, + unsigned char * _p); // validate subcarrier type (count number of null, pilot, and data // subcarriers in the allocation) @@ -7635,17 +7710,17 @@ void ofdmframe_init_sctype_range(unsigned int _M, // _M_null : output number of null subcarriers // _M_pilot : output number of pilot subcarriers // _M_data : output number of data subcarriers -void ofdmframe_validate_sctype(unsigned char * _p, - unsigned int _M, - unsigned int * _M_null, - unsigned int * _M_pilot, - unsigned int * _M_data); +int ofdmframe_validate_sctype(unsigned char * _p, + unsigned int _M, + unsigned int * _M_null, + unsigned int * _M_pilot, + unsigned int * _M_data); // print subcarrier allocation to screen // _p : output subcarrier allocation array, [size: _M x 1] // _M : number of subcarriers -void ofdmframe_print_sctype(unsigned char * _p, - unsigned int _M); +int ofdmframe_print_sctype(unsigned char * _p, + unsigned int _M); // @@ -7663,32 +7738,32 @@ ofdmframegen ofdmframegen_create(unsigned int _M, unsigned int _taper_len, unsigned char * _p); -void ofdmframegen_destroy(ofdmframegen _q); +int ofdmframegen_destroy(ofdmframegen _q); -void ofdmframegen_print(ofdmframegen _q); +int ofdmframegen_print(ofdmframegen _q); -void ofdmframegen_reset(ofdmframegen _q); +int ofdmframegen_reset(ofdmframegen _q); // write first S0 symbol -void ofdmframegen_write_S0a(ofdmframegen _q, - liquid_float_complex *_y); - -// write second S0 symbol -void ofdmframegen_write_S0b(ofdmframegen _q, - liquid_float_complex *_y); - -// write S1 symbol -void ofdmframegen_write_S1(ofdmframegen _q, +int ofdmframegen_write_S0a(ofdmframegen _q, liquid_float_complex *_y); +// write second S0 symbol +int ofdmframegen_write_S0b(ofdmframegen _q, + liquid_float_complex *_y); + +// write S1 symbol +int ofdmframegen_write_S1(ofdmframegen _q, + liquid_float_complex *_y); + // write data symbol -void ofdmframegen_writesymbol(ofdmframegen _q, - liquid_float_complex * _x, - liquid_float_complex *_y); +int ofdmframegen_writesymbol(ofdmframegen _q, + liquid_float_complex * _x, + liquid_float_complex *_y); // write tail -void ofdmframegen_writetail(ofdmframegen _q, - liquid_float_complex * _x); +int ofdmframegen_writetail(ofdmframegen _q, + liquid_float_complex * _x); // // OFDM frame (symbol) synchronizer @@ -7712,25 +7787,25 @@ ofdmframesync ofdmframesync_create(unsigned int _M, unsigned char * _p, ofdmframesync_callback _callback, void * _userdata); -void ofdmframesync_destroy(ofdmframesync _q); -void ofdmframesync_print(ofdmframesync _q); -void ofdmframesync_reset(ofdmframesync _q); -int ofdmframesync_is_frame_open(ofdmframesync _q); -void ofdmframesync_execute(ofdmframesync _q, - liquid_float_complex * _x, - unsigned int _n); +int ofdmframesync_destroy(ofdmframesync _q); +int ofdmframesync_print(ofdmframesync _q); +int ofdmframesync_reset(ofdmframesync _q); +int ofdmframesync_is_frame_open(ofdmframesync _q); +int ofdmframesync_execute(ofdmframesync _q, + liquid_float_complex * _x, + unsigned int _n); // query methods float ofdmframesync_get_rssi(ofdmframesync _q); // received signal strength indication float ofdmframesync_get_cfo(ofdmframesync _q); // carrier offset estimate // set methods -void ofdmframesync_set_cfo(ofdmframesync _q, float _cfo); // set carrier offset estimate +int ofdmframesync_set_cfo(ofdmframesync _q, float _cfo); // set carrier offset estimate // debugging -void ofdmframesync_debug_enable(ofdmframesync _q); -void ofdmframesync_debug_disable(ofdmframesync _q); -void ofdmframesync_debug_print(ofdmframesync _q, const char * _filename); +int ofdmframesync_debug_enable(ofdmframesync _q); +int ofdmframesync_debug_disable(ofdmframesync _q); +int ofdmframesync_debug_print(ofdmframesync _q, const char * _filename); // @@ -7761,14 +7836,14 @@ typedef struct NCO(_s) * NCO(); \ NCO() NCO(_create)(liquid_ncotype _type); \ \ /* Destroy nco object, freeing all internally allocated memory */ \ -void NCO(_destroy)(NCO() _q); \ +int NCO(_destroy)(NCO() _q); \ \ /* Print nco object internals to stdout */ \ -void NCO(_print)(NCO() _q); \ +int NCO(_print)(NCO() _q); \ \ /* Set phase/frequency to zero and reset the phase-locked loop filter */ \ /* state */ \ -void NCO(_reset)(NCO() _q); \ +int NCO(_reset)(NCO() _q); \ \ /* Get frequency of nco object in radians per sample */ \ T NCO(_get_frequency)(NCO() _q); \ @@ -7776,14 +7851,14 @@ T NCO(_get_frequency)(NCO() _q); \ /* Set frequency of nco object in radians per sample */ \ /* _q : nco object */ \ /* _dtheta : input frequency [radians/sample] */ \ -void NCO(_set_frequency)(NCO() _q, \ - T _dtheta); \ +int NCO(_set_frequency)(NCO() _q, \ + T _dtheta); \ \ /* Adjust frequency of nco object by a step size in radians per sample */ \ /* _q : nco object */ \ /* _step : input frequency step [radians/sample] */ \ -void NCO(_adjust_frequency)(NCO() _q, \ - T _step); \ +int NCO(_adjust_frequency)(NCO() _q, \ + T _step); \ \ /* Get phase of nco object in radians */ \ T NCO(_get_phase)(NCO() _q); \ @@ -7791,17 +7866,17 @@ T NCO(_get_phase)(NCO() _q); \ /* Set phase of nco object in radians */ \ /* _q : nco object */ \ /* _phi : input phase of nco object [radians] */ \ -void NCO(_set_phase)(NCO() _q, \ - T _phi); \ +int NCO(_set_phase)(NCO() _q, \ + T _phi); \ \ /* Adjust phase of nco object by a step of \(\Delta \phi\) radians */ \ /* _q : nco object */ \ /* _dphi : input nco object phase adjustment [radians] */ \ -void NCO(_adjust_phase)(NCO() _q, \ - T _dphi); \ +int NCO(_adjust_phase)(NCO() _q, \ + T _dphi); \ \ /* Increment phase by internal phase step (frequency) */ \ -void NCO(_step)(NCO() _q); \ +int NCO(_step)(NCO() _q); \ \ /* Compute sine output given internal phase */ \ T NCO(_sin)(NCO() _q); \ @@ -7813,47 +7888,47 @@ T NCO(_cos)(NCO() _q); \ /* _q : nco object */ \ /* _s : output sine component of phase */ \ /* _c : output cosine component of phase */ \ -void NCO(_sincos)(NCO() _q, \ - T * _s, \ - T * _c); \ +int NCO(_sincos)(NCO() _q, \ + T * _s, \ + T * _c); \ \ /* Compute complex exponential output given internal phase */ \ /* _q : nco object */ \ /* _y : output complex exponential */ \ -void NCO(_cexpf)(NCO() _q, \ - TC * _y); \ +int NCO(_cexpf)(NCO() _q, \ + TC * _y); \ \ /* Set bandwidth of internal phase-locked loop */ \ /* _q : nco object */ \ /* _bw : input phase-locked loop bandwidth, _bw >= 0 */ \ -void NCO(_pll_set_bandwidth)(NCO() _q, \ - T _bw); \ +int NCO(_pll_set_bandwidth)(NCO() _q, \ + T _bw); \ \ /* Step internal phase-locked loop given input phase error, adjusting */ \ /* internal phase and frequency proportional to coefficients defined by */ \ /* internal PLL bandwidth */ \ /* _q : nco object */ \ /* _dphi : input phase-locked loop phase error */ \ -void NCO(_pll_step)(NCO() _q, \ - T _dphi); \ +int NCO(_pll_step)(NCO() _q, \ + T _dphi); \ \ /* Rotate input sample up by nco angle. */ \ /* Note that this does not adjust the internal phase or frequency. */ \ /* _q : nco object */ \ /* _x : input complex sample */ \ /* _y : pointer to output sample location */ \ -void NCO(_mix_up)(NCO() _q, \ - TC _x, \ - TC * _y); \ +int NCO(_mix_up)(NCO() _q, \ + TC _x, \ + TC * _y); \ \ /* Rotate input sample down by nco angle. */ \ /* Note that this does not adjust the internal phase or frequency. */ \ /* _q : nco object */ \ /* _x : input complex sample */ \ /* _y : pointer to output sample location */ \ -void NCO(_mix_down)(NCO() _q, \ - TC _x, \ - TC * _y); \ +int NCO(_mix_down)(NCO() _q, \ + TC _x, \ + TC * _y); \ \ /* Rotate input vector up by NCO angle (stepping) */ \ /* Note that this *does* adjust the internal phase as the signal steps */ \ @@ -7862,10 +7937,10 @@ void NCO(_mix_down)(NCO() _q, \ /* _x : array of input samples, [size: _n x 1] */ \ /* _y : array of output samples, [size: _n x 1] */ \ /* _n : number of input (and output) samples */ \ -void NCO(_mix_block_up)(NCO() _q, \ - TC * _x, \ - TC * _y, \ - unsigned int _n); \ +int NCO(_mix_block_up)(NCO() _q, \ + TC * _x, \ + TC * _y, \ + unsigned int _n); \ \ /* Rotate input vector down by NCO angle (stepping) */ \ /* Note that this *does* adjust the internal phase as the signal steps */ \ @@ -7874,10 +7949,10 @@ void NCO(_mix_block_up)(NCO() _q, \ /* _x : array of input samples, [size: _n x 1] */ \ /* _y : array of output samples, [size: _n x 1] */ \ /* _n : number of input (and output) samples */ \ -void NCO(_mix_block_down)(NCO() _q, \ - TC * _x, \ - TC * _y, \ - unsigned int _n); \ +int NCO(_mix_block_down)(NCO() _q, \ + TC * _x, \ + TC * _y, \ + unsigned int _n); \ // Define nco APIs LIQUID_NCO_DEFINE_API(LIQUID_NCO_MANGLE_FLOAT, float, liquid_float_complex) @@ -8055,16 +8130,16 @@ qnsearch qnsearch_create(void * _userdata, int _direction); // Destroy a qnsearch object -void qnsearch_destroy(qnsearch _g); +int qnsearch_destroy(qnsearch _g); // Prints current status of search -void qnsearch_print(qnsearch _g); +int qnsearch_print(qnsearch _g); // Resets internal state -void qnsearch_reset(qnsearch _g); +int qnsearch_reset(qnsearch _g); // Iterate once -void qnsearch_step(qnsearch _g); +int qnsearch_step(qnsearch _g); // Execute the search float qnsearch_execute(qnsearch _g, @@ -8089,46 +8164,45 @@ chromosome chromosome_create_clone(chromosome _parent); // copy existing chromosomes' internal traits (all other internal // parameters must be equal) -void chromosome_copy(chromosome _parent, chromosome _child); +int chromosome_copy(chromosome _parent, chromosome _child); // Destroy a chromosome object -void chromosome_destroy(chromosome _c); +int chromosome_destroy(chromosome _c); // get number of traits in chromosome unsigned int chromosome_get_num_traits(chromosome _c); // Print chromosome values to screen (binary representation) -void chromosome_print(chromosome _c); +int chromosome_print(chromosome _c); // Print chromosome values to screen (floating-point representation) -void chromosome_printf(chromosome _c); +int chromosome_printf(chromosome _c); // clear chromosome (set traits to zero) -void chromosome_reset(chromosome _c); +int chromosome_reset(chromosome _c); // initialize chromosome on integer values -void chromosome_init(chromosome _c, +int chromosome_init(chromosome _c, unsigned int * _v); // initialize chromosome on floating-point values -void chromosome_initf(chromosome _c, - float * _v); +int chromosome_initf(chromosome _c, float * _v); // Mutates chromosome _c at _index -void chromosome_mutate(chromosome _c, unsigned int _index); +int chromosome_mutate(chromosome _c, unsigned int _index); // Resulting chromosome _c is a crossover of parents _p1 and _p2 at _threshold -void chromosome_crossover(chromosome _p1, - chromosome _p2, - chromosome _c, - unsigned int _threshold); +int chromosome_crossover(chromosome _p1, + chromosome _p2, + chromosome _c, + unsigned int _threshold); // Initializes chromosome to random value -void chromosome_init_random(chromosome _c); +int chromosome_init_random(chromosome _c); // Returns integer representation of chromosome -unsigned int chromosome_value(chromosome _c, - unsigned int _index); +unsigned int chromosome_value(chromosome _c, + unsigned int _index); // Returns floating-point representation of chromosome float chromosome_valuef(chromosome _c, @@ -8167,41 +8241,41 @@ gasearch gasearch_create_advanced(gasearch_utility _utility, // Destroy a gasearch object -void gasearch_destroy(gasearch _q); +int gasearch_destroy(gasearch _q); // print search parameter internals -void gasearch_print(gasearch _q); +int gasearch_print(gasearch _q); // set mutation rate -void gasearch_set_mutation_rate(gasearch _q, - float _mutation_rate); +int gasearch_set_mutation_rate(gasearch _q, + float _mutation_rate); // set population/selection size // _q : ga search object // _population_size : new population size (number of chromosomes) // _selection_size : selection size (number of parents for new generation) -void gasearch_set_population_size(gasearch _q, - unsigned int _population_size, - unsigned int _selection_size); +int gasearch_set_population_size(gasearch _q, + unsigned int _population_size, + unsigned int _selection_size); // Execute the search // _q : ga search object // _max_iterations : maximum number of iterations to run before bailing // _target_utility : target utility -float gasearch_run(gasearch _q, - unsigned int _max_iterations, - float _target_utility); +float gasearch_run(gasearch _q, + unsigned int _max_iterations, + float _target_utility); // iterate over one evolution of the search algorithm -void gasearch_evolve(gasearch _q); +int gasearch_evolve(gasearch _q); // get optimal chromosome // _q : ga search object // _c : output optimal chromosome // _utility_opt : fitness of _c -void gasearch_getopt(gasearch _q, - chromosome _c, - float * _utility_opt); +int gasearch_getopt(gasearch _q, + chromosome _c, + float * _utility_opt); // // MODULE : quantization @@ -8210,8 +8284,8 @@ void gasearch_getopt(gasearch _q, float compress_mulaw(float _x, float _mu); float expand_mulaw(float _x, float _mu); -void compress_cf_mulaw(liquid_float_complex _x, float _mu, liquid_float_complex * _y); -void expand_cf_mulaw(liquid_float_complex _y, float _mu, liquid_float_complex * _x); +int compress_cf_mulaw(liquid_float_complex _x, float _mu, liquid_float_complex * _y); +int expand_cf_mulaw(liquid_float_complex _y, float _mu, liquid_float_complex * _x); //float compress_alaw(float _x, float _a); //float expand_alaw(float _x, float _a); @@ -8250,29 +8324,29 @@ QUANTIZER() QUANTIZER(_create)(liquid_compander_type _ctype, \ unsigned int _num_bits); \ \ /* Destroy object, freeing all internally-allocated memory. */ \ -void QUANTIZER(_destroy)(QUANTIZER() _q); \ +int QUANTIZER(_destroy)(QUANTIZER() _q); \ \ /* Print object properties to stdout, including compander type and */ \ /* number of bits per sample */ \ -void QUANTIZER(_print)(QUANTIZER() _q); \ +int QUANTIZER(_print)(QUANTIZER() _q); \ \ /* Execute quantizer as analog-to-digital converter, accepting input */ \ /* sample and returning digitized output bits */ \ /* _q : quantizer object */ \ /* _x : input sample */ \ /* _s : output bits */ \ -void QUANTIZER(_execute_adc)(QUANTIZER() _q, \ - T _x, \ - unsigned int * _s); \ +int QUANTIZER(_execute_adc)(QUANTIZER() _q, \ + T _x, \ + unsigned int * _s); \ \ /* Execute quantizer as digital-to-analog converter, accepting input */ \ /* bits and returning representation of original input sample */ \ /* _q : quantizer object */ \ /* _s : input bits */ \ /* _x : output sample */ \ -void QUANTIZER(_execute_dac)(QUANTIZER() _q, \ - unsigned int _s, \ - T * _x); \ +int QUANTIZER(_execute_dac)(QUANTIZER() _q, \ + unsigned int _s, \ + T * _x); \ LIQUID_QUANTIZER_DEFINE_API(LIQUID_QUANTIZER_MANGLE_FLOAT, float) LIQUID_QUANTIZER_DEFINE_API(LIQUID_QUANTIZER_MANGLE_CFLOAT, liquid_float_complex) @@ -8383,33 +8457,33 @@ typedef struct bsequence_s * bsequence; bsequence bsequence_create(unsigned int num_bits); // Free memory in a binary sequence -void bsequence_destroy(bsequence _bs); +int bsequence_destroy(bsequence _bs); // Clear binary sequence (set to 0's) -void bsequence_reset(bsequence _bs); +int bsequence_reset(bsequence _bs); // initialize sequence on external array -void bsequence_init(bsequence _bs, - unsigned char * _v); +int bsequence_init(bsequence _bs, + unsigned char * _v); // Print sequence to the screen -void bsequence_print(bsequence _bs); +int bsequence_print(bsequence _bs); // Push bit into to back of a binary sequence -void bsequence_push(bsequence _bs, - unsigned int _bit); +int bsequence_push(bsequence _bs, + unsigned int _bit); // circular shift (left) -void bsequence_circshift(bsequence _bs); +int bsequence_circshift(bsequence _bs); // Correlate two binary sequences together int bsequence_correlate(bsequence _bs1, bsequence _bs2); // compute the binary addition of two bit sequences -void bsequence_add(bsequence _bs1, bsequence _bs2, bsequence _bs3); +int bsequence_add(bsequence _bs1, bsequence _bs2, bsequence _bs3); // compute the binary multiplication of two bit sequences -void bsequence_mul(bsequence _bs1, bsequence _bs2, bsequence _bs3); +int bsequence_mul(bsequence _bs1, bsequence _bs2, bsequence _bs3); // accumulate the 1's in a binary sequence unsigned int bsequence_accumulate(bsequence _bs); @@ -8424,8 +8498,7 @@ unsigned int bsequence_index(bsequence _bs, unsigned int _i); // be of length at least 8 and a power of 2 (e.g. 8, 16, 32, 64,...) // _a : sequence 'a' (bsequence object) // _b : sequence 'b' (bsequence object) -void bsequence_create_ccodes(bsequence _a, - bsequence _b); +int bsequence_create_ccodes(bsequence _a, bsequence _b); // M-Sequence @@ -8466,10 +8539,10 @@ msequence msequence_create_genpoly(unsigned int _g); msequence msequence_create_default(unsigned int _m); // destroy an msequence object, freeing all internal memory -void msequence_destroy(msequence _m); +int msequence_destroy(msequence _m); // prints the sequence's internal state to the screen -void msequence_print(msequence _m); +int msequence_print(msequence _m); // advance msequence on shift register, returning output bit unsigned int msequence_advance(msequence _ms); @@ -8482,13 +8555,13 @@ unsigned int msequence_generate_symbol(msequence _ms, unsigned int _bps); // reset msequence shift register to original state, typically '1' -void msequence_reset(msequence _ms); +int msequence_reset(msequence _ms); // initialize a bsequence object on an msequence object // _bs : bsequence object // _ms : msequence object -void bsequence_init_msequence(bsequence _bs, - msequence _ms); +int bsequence_init_msequence(bsequence _bs, + msequence _ms); // get the length of the sequence unsigned int msequence_get_length(msequence _ms); @@ -8497,8 +8570,8 @@ unsigned int msequence_get_length(msequence _ms); unsigned int msequence_get_state(msequence _ms); // set the internal state of the sequence -void msequence_set_state(msequence _ms, - unsigned int _a); +int msequence_set_state(msequence _ms, + unsigned int _a); // @@ -8511,11 +8584,11 @@ void msequence_set_state(msequence _ms, // _k : bit index to write in _src // _b : number of bits in input symbol // _sym_in : input symbol -void liquid_pack_array(unsigned char * _src, - unsigned int _n, - unsigned int _k, - unsigned int _b, - unsigned char _sym_in); +int liquid_pack_array(unsigned char * _src, + unsigned int _n, + unsigned int _k, + unsigned int _b, + unsigned char _sym_in); // unpack symbols from binary array // _src : source array [size: _n x 1] @@ -8523,11 +8596,11 @@ void liquid_pack_array(unsigned char * _src, // _k : bit index to write in _src // _b : number of bits in output symbol // _sym_out : output symbol -void liquid_unpack_array(unsigned char * _src, - unsigned int _n, - unsigned int _k, - unsigned int _b, - unsigned char * _sym_out); +int liquid_unpack_array(unsigned char * _src, + unsigned int _n, + unsigned int _k, + unsigned int _b, + unsigned char * _sym_out); // pack one-bit symbols into bytes (8-bit symbols) // _sym_in : input symbols array [size: _sym_in_len x 1] @@ -8535,11 +8608,11 @@ void liquid_unpack_array(unsigned char * _src, // _sym_out : output symbols // _sym_out_len : number of bytes allocated to output symbols array // _num_written : number of output symbols actually written -void liquid_pack_bytes(unsigned char * _sym_in, - unsigned int _sym_in_len, - unsigned char * _sym_out, - unsigned int _sym_out_len, - unsigned int * _num_written); +int liquid_pack_bytes(unsigned char * _sym_in, + unsigned int _sym_in_len, + unsigned char * _sym_out, + unsigned int _sym_out_len, + unsigned int * _num_written); // unpack 8-bit symbols (full bytes) into one-bit symbols // _sym_in : input symbols array [size: _sym_in_len x 1] @@ -8547,11 +8620,11 @@ void liquid_pack_bytes(unsigned char * _sym_in, // _sym_out : output symbols array // _sym_out_len : number of bytes allocated to output symbols array // _num_written : number of output symbols actually written -void liquid_unpack_bytes(unsigned char * _sym_in, - unsigned int _sym_in_len, - unsigned char * _sym_out, - unsigned int _sym_out_len, - unsigned int * _num_written); +int liquid_unpack_bytes(unsigned char * _sym_in, + unsigned int _sym_in_len, + unsigned char * _sym_out, + unsigned int _sym_out_len, + unsigned int * _num_written); // repack bytes with arbitrary symbol sizes // _sym_in : input symbols array [size: _sym_in_len x 1] @@ -8561,80 +8634,77 @@ void liquid_unpack_bytes(unsigned char * _sym_in, // _sym_out_bps : number of bits per output symbol // _sym_out_len : number of bytes allocated to output symbols array // _num_written : number of output symbols actually written -void liquid_repack_bytes(unsigned char * _sym_in, - unsigned int _sym_in_bps, - unsigned int _sym_in_len, - unsigned char * _sym_out, - unsigned int _sym_out_bps, - unsigned int _sym_out_len, - unsigned int * _num_written); +int liquid_repack_bytes(unsigned char * _sym_in, + unsigned int _sym_in_bps, + unsigned int _sym_in_len, + unsigned char * _sym_out, + unsigned int _sym_out_bps, + unsigned int _sym_out_len, + unsigned int * _num_written); // shift array to the left _b bits, filling in zeros // _src : source address [size: _n x 1] // _n : input data array size // _b : number of bits to shift -void liquid_lbshift(unsigned char * _src, - unsigned int _n, - unsigned int _b); +int liquid_lbshift(unsigned char * _src, + unsigned int _n, + unsigned int _b); // shift array to the right _b bits, filling in zeros // _src : source address [size: _n x 1] // _n : input data array size // _b : number of bits to shift -void liquid_rbshift(unsigned char * _src, - unsigned int _n, - unsigned int _b); +int liquid_rbshift(unsigned char * _src, + unsigned int _n, + unsigned int _b); // circularly shift array to the left _b bits // _src : source address [size: _n x 1] // _n : input data array size // _b : number of bits to shift -void liquid_lbcircshift(unsigned char * _src, - unsigned int _n, - unsigned int _b); +int liquid_lbcircshift(unsigned char * _src, + unsigned int _n, + unsigned int _b); // circularly shift array to the right _b bits // _src : source address [size: _n x 1] // _n : input data array size // _b : number of bits to shift -void liquid_rbcircshift(unsigned char * _src, - unsigned int _n, - unsigned int _b); - - - +int liquid_rbcircshift(unsigned char * _src, + unsigned int _n, + unsigned int _b); // shift array to the left _b bytes, filling in zeros // _src : source address [size: _n x 1] // _n : input data array size // _b : number of bytes to shift -void liquid_lshift(unsigned char * _src, - unsigned int _n, - unsigned int _b); +int liquid_lshift(unsigned char * _src, + unsigned int _n, + unsigned int _b); // shift array to the right _b bytes, filling in zeros // _src : source address [size: _n x 1] // _n : input data array size // _b : number of bytes to shift -void liquid_rshift(unsigned char * _src, - unsigned int _n, - unsigned int _b); +int liquid_rshift(unsigned char * _src, + unsigned int _n, + unsigned int _b); // circular shift array to the left _b bytes // _src : source address [size: _n x 1] // _n : input data array size // _b : number of bytes to shift -void liquid_lcircshift(unsigned char * _src, - unsigned int _n, - unsigned int _b); +int liquid_lcircshift(unsigned char * _src, + unsigned int _n, + unsigned int _b); // circular shift array to the right _b bytes // _src : source address [size: _n x 1] // _n : input data array size // _b : number of bytes to shift -void liquid_rcircshift(unsigned char * _src, - unsigned int _n, - unsigned int _b); +int liquid_rcircshift(unsigned char * _src, + unsigned int _n, + unsigned int _b); // Count the number of ones in an integer unsigned int liquid_count_ones(unsigned int _x); @@ -8653,8 +8723,7 @@ unsigned int liquid_count_leading_zeros(unsigned int _x); unsigned int liquid_msb_index(unsigned int _x); // Print string of bits to stdout -void liquid_print_bitstring(unsigned int _x, - unsigned int _n); +int liquid_print_bitstring(unsigned int _x, unsigned int _n); // reverse byte, word, etc. unsigned char liquid_reverse_byte( unsigned char _x); @@ -8666,9 +8735,9 @@ unsigned int liquid_reverse_uint32(unsigned int _x); // _val : input value (e.g. 100e6) // _unit : output unit character (e.g. 'M') // _scale : output scale (e.g. 1e-6) -void liquid_get_scale(float _val, - char * _unit, - float * _scale); +int liquid_get_scale(float _val, + char * _unit, + float * _scale); // // MODULE : vector diff --git a/external/liquid-dsp/makefile.mingw32 b/external/liquid-dsp/makefile.mingw32 index c7799c0..80697e8 100644 --- a/external/liquid-dsp/makefile.mingw32 +++ b/external/liquid-dsp/makefile.mingw32 @@ -47,14 +47,16 @@ VERSION := 1.3.2 BUGREPORT := joseph@liquidsdr.org # paths -srcdir := . -libdir := ${exec_prefix}/lib prefix := /usr/local exec_prefix := ${prefix} +VPATH := . +srcdir := . +libdir := ${exec_prefix}/lib include_dirs := . include # programs CC := gcc +CXX := g++ MV := mv -f RM := rm -f SED := /usr/bin/sed @@ -67,7 +69,7 @@ RANLIB := ranlib INCLUDE_CFLAGS = $(addprefix -I,$(include_dirs)) COVERAGE_FLAGS = # dynamic library linker needs separate flag #MINGW: optimizations goes here, use SSSE42 for 32bit -CONFIG_CFLAGS = -m32 -O3 -msse4.2 -ffast-math +CONFIG_CFLAGS = -m32 -O3 -msse4.2 -ffast-math ${COVERAGE_FLAGS} CPPFLAGS = $(INCLUDE_CFLAGS) CFLAGS = $(CONFIG_CFLAGS) -Wall -fPIC LDFLAGS = @@ -1231,9 +1233,10 @@ help: install: all @echo "installing..." @echo "" - mkdir -p $(DESTDIR)$(exec_prefix)$(libdir) + mkdir -p $(DESTDIR)$(prefix)/include mkdir -p $(DESTDIR)$(prefix)/include/liquid - install -m 644 -p ${ARCHIVE_LIB} ${SHARED_LIB} $(DESTDIR)$(exec_prefix)$(libdir) + mkdir -p $(DESTDIR)$(libdir) + install -m 644 -p ${ARCHIVE_LIB} ${SHARED_LIB} $(DESTDIR)$(libdir) install -m 644 -p $(addprefix include/,$(headers_install)) $(DESTDIR)$(prefix)/include/liquid @echo "" @echo "---------------------------------------------------------" @@ -1256,8 +1259,8 @@ install: all uninstall: @echo "uninstalling..." $(RM) $(addprefix $(DESTDIR)$(prefix)/include/liquid/, $(headers_install)) - $(RM) $(DESTDIR)$(exec_prefix)$(libdir)/${ARCHIVE_LIB} - $(RM) $(DESTDIR)$(exec_prefix)$(libdir)/${SHARED_LIB} + $(RM) $(DESTDIR)$(libdir)/${ARCHIVE_LIB} + $(RM) $(DESTDIR)$(libdir)/${SHARED_LIB} @echo "done." ## @@ -1346,10 +1349,10 @@ readme.cc.example.cc : README.md ${SED} -n '151,172p' $< | ${SED} "s//\"liquid.h\"/g" > $@ readme.cc.example.o : %.o : %.cc ${include_headers} - ${CC} ${CPPFLAGS} ${CFLAGS} $< -c -o $@ + ${CXX} ${CPPFLAGS} ${CFLAGS} $< -c -o $@ readme.cc.example : % : %.o ${ARCHIVE_LIB} - ${CC} ${CFLAGS} ${LDFLAGS} $^ -o $@ ${LIBS} + ${CXX} ${CFLAGS} ${LDFLAGS} $^ -o $@ ${LIBS} doc-check : readme.c.example readme.cc.example ; ./readme.c.example && ./readme.cc.example @@ -1476,6 +1479,7 @@ example_programs := \ examples/eqlms_cccf_decisiondirected_example \ examples/eqlms_cccf_example \ examples/eqrls_cccf_example \ + examples/error_handling_example \ examples/fec_example \ examples/fec_soft_example \ examples/fft_example \ @@ -1497,6 +1501,7 @@ example_programs := \ examples/firhilb_interp_example \ examples/firpfb_rrrf_example \ examples/firpfbch2_crcf_example \ + examples/firpfbch2_crcf_reconstruct_example \ examples/firpfbchr_crcf_example \ examples/firinterp_crcf_example \ examples/firinterp_firdecim_crcf_example \ diff --git a/external/liquid-dsp/makefile.mingw64 b/external/liquid-dsp/makefile.mingw64 index e5acb2d..36c08c0 100644 --- a/external/liquid-dsp/makefile.mingw64 +++ b/external/liquid-dsp/makefile.mingw64 @@ -47,14 +47,16 @@ VERSION := 1.3.2 BUGREPORT := joseph@liquidsdr.org # paths -srcdir := . -libdir := ${exec_prefix}/lib prefix := /usr/local exec_prefix := ${prefix} +VPATH := . +srcdir := . +libdir := ${exec_prefix}/lib include_dirs := . include # programs CC := gcc +CXX := g++ MV := mv -f RM := rm -f SED := /usr/bin/sed @@ -67,7 +69,7 @@ RANLIB := ranlib INCLUDE_CFLAGS = $(addprefix -I,$(include_dirs)) COVERAGE_FLAGS = # dynamic library linker needs separate flag #MINGW: optimizations goes here, use SSSE42 for 64bit -CONFIG_CFLAGS = -O3 -msse4.2 -ffast-math +CONFIG_CFLAGS = -O3 -msse4.2 -ffast-math ${COVERAGE_FLAGS} CPPFLAGS = $(INCLUDE_CFLAGS) CFLAGS = $(CONFIG_CFLAGS) -Wall -fPIC LDFLAGS = @@ -1231,9 +1233,10 @@ help: install: all @echo "installing..." @echo "" - mkdir -p $(DESTDIR)$(exec_prefix)$(libdir) + mkdir -p $(DESTDIR)$(prefix)/include mkdir -p $(DESTDIR)$(prefix)/include/liquid - install -m 644 -p ${ARCHIVE_LIB} ${SHARED_LIB} $(DESTDIR)$(exec_prefix)$(libdir) + mkdir -p $(DESTDIR)$(libdir) + install -m 644 -p ${ARCHIVE_LIB} ${SHARED_LIB} $(DESTDIR)$(libdir) install -m 644 -p $(addprefix include/,$(headers_install)) $(DESTDIR)$(prefix)/include/liquid @echo "" @echo "---------------------------------------------------------" @@ -1256,8 +1259,8 @@ install: all uninstall: @echo "uninstalling..." $(RM) $(addprefix $(DESTDIR)$(prefix)/include/liquid/, $(headers_install)) - $(RM) $(DESTDIR)$(exec_prefix)$(libdir)/${ARCHIVE_LIB} - $(RM) $(DESTDIR)$(exec_prefix)$(libdir)/${SHARED_LIB} + $(RM) $(DESTDIR)$(libdir)/${ARCHIVE_LIB} + $(RM) $(DESTDIR)$(libdir)/${SHARED_LIB} @echo "done." ## @@ -1346,10 +1349,10 @@ readme.cc.example.cc : README.md ${SED} -n '151,172p' $< | ${SED} "s//\"liquid.h\"/g" > $@ readme.cc.example.o : %.o : %.cc ${include_headers} - ${CC} ${CPPFLAGS} ${CFLAGS} $< -c -o $@ + ${CXX} ${CPPFLAGS} ${CFLAGS} $< -c -o $@ readme.cc.example : % : %.o ${ARCHIVE_LIB} - ${CC} ${CFLAGS} ${LDFLAGS} $^ -o $@ ${LIBS} + ${CXX} ${CFLAGS} ${LDFLAGS} $^ -o $@ ${LIBS} doc-check : readme.c.example readme.cc.example ; ./readme.c.example && ./readme.cc.example @@ -1476,6 +1479,7 @@ example_programs := \ examples/eqlms_cccf_decisiondirected_example \ examples/eqlms_cccf_example \ examples/eqrls_cccf_example \ + examples/error_handling_example \ examples/fec_example \ examples/fec_soft_example \ examples/fft_example \ @@ -1497,6 +1501,7 @@ example_programs := \ examples/firhilb_interp_example \ examples/firpfb_rrrf_example \ examples/firpfbch2_crcf_example \ + examples/firpfbch2_crcf_reconstruct_example \ examples/firpfbchr_crcf_example \ examples/firinterp_crcf_example \ examples/firinterp_firdecim_crcf_example \ diff --git a/external/liquid-dsp/msvc/32/libliquid.def b/external/liquid-dsp/msvc/32/libliquid.def index 78453e3..c0355d4 100644 --- a/external/liquid-dsp/msvc/32/libliquid.def +++ b/external/liquid-dsp/msvc/32/libliquid.def @@ -1073,1435 +1073,1445 @@ EXPORTS gmskframegen_print @1072 gmskframegen_reset @1073 gmskframegen_set_header_len @1074 - gmskframegen_write_header @1075 - gmskframegen_write_payload @1076 - gmskframegen_write_preamble @1077 - gmskframegen_write_samples @1078 - gmskframegen_write_tail @1079 - gmskframesync_create @1080 - gmskframesync_debug_disable @1081 - gmskframesync_debug_enable @1082 - gmskframesync_debug_print @1083 - gmskframesync_decode_header @1084 - gmskframesync_destroy @1085 - gmskframesync_execute @1086 - gmskframesync_execute_detectframe @1087 - gmskframesync_execute_rxheader @1088 - gmskframesync_execute_rxpayload @1089 - gmskframesync_execute_rxpreamble @1090 - gmskframesync_execute_sample @1091 - gmskframesync_is_frame_open @1092 - gmskframesync_print @1093 - gmskframesync_pushpn @1094 - gmskframesync_reset @1095 - gmskframesync_set_header_len @1096 - gmskframesync_syncpn @1097 - gmskframesync_update_fi @1098 - gmskframesync_update_symsync @1099 - gmskmod_create @1100 - gmskmod_destroy @1101 - gmskmod_modulate @1102 - gmskmod_print @1103 - gmskmod_reset @1104 - golay2412_Gt @1105 DATA - golay2412_H @1106 DATA - golay2412_P @1107 DATA - golay2412_matrix_mul @1108 - golay2412_parity_search @1109 - gradsearch_create @1110 - gradsearch_destroy @1111 - gradsearch_execute @1112 - gradsearch_gradient @1113 - gradsearch_linesearch @1114 - gradsearch_norm @1115 - gradsearch_print @1116 - gradsearch_step @1117 - gray_decode @1118 - gray_encode @1119 - hamming128_enc_gentab @1120 DATA - hamming74_dec_gentab @1121 DATA - hamming74_enc_gentab @1122 DATA - hamming84_dec_gentab @1123 DATA - hamming84_enc_gentab @1124 DATA - icrandnf @1125 - iir_group_delay @1126 - iirdecim_cccf_create @1127 - iirdecim_cccf_create_default @1128 - iirdecim_cccf_create_prototype @1129 - iirdecim_cccf_destroy @1130 - iirdecim_cccf_execute @1131 - iirdecim_cccf_execute_block @1132 - iirdecim_cccf_groupdelay @1133 - iirdecim_cccf_print @1134 - iirdecim_cccf_reset @1135 - iirdecim_crcf_create @1136 - iirdecim_crcf_create_default @1137 - iirdecim_crcf_create_prototype @1138 - iirdecim_crcf_destroy @1139 - iirdecim_crcf_execute @1140 - iirdecim_crcf_execute_block @1141 - iirdecim_crcf_groupdelay @1142 - iirdecim_crcf_print @1143 - iirdecim_crcf_reset @1144 - iirdecim_rrrf_create @1145 - iirdecim_rrrf_create_default @1146 - iirdecim_rrrf_create_prototype @1147 - iirdecim_rrrf_destroy @1148 - iirdecim_rrrf_execute @1149 - iirdecim_rrrf_execute_block @1150 - iirdecim_rrrf_groupdelay @1151 - iirdecim_rrrf_print @1152 - iirdecim_rrrf_reset @1153 - iirdes_dzpk2sosf @1154 - iirdes_dzpk2tff @1155 - iirdes_dzpk_lp2bp @1156 - iirdes_dzpk_lp2hp @1157 - iirdes_freqprewarp @1158 - iirdes_isstable @1159 - iirdes_pll_active_PI @1160 - iirdes_pll_active_lag @1161 - iirfilt_cccf_create @1162 - iirfilt_cccf_create_dc_blocker @1163 - iirfilt_cccf_create_differentiator @1164 - iirfilt_cccf_create_integrator @1165 - iirfilt_cccf_create_lowpass @1166 - iirfilt_cccf_create_pll @1167 - iirfilt_cccf_create_prototype @1168 - iirfilt_cccf_create_sos @1169 - iirfilt_cccf_destroy @1170 - iirfilt_cccf_execute @1171 - iirfilt_cccf_execute_block @1172 - iirfilt_cccf_execute_norm @1173 - iirfilt_cccf_execute_sos @1174 - iirfilt_cccf_freqresponse @1175 - iirfilt_cccf_get_length @1176 - iirfilt_cccf_groupdelay @1177 - iirfilt_cccf_init @1178 - iirfilt_cccf_print @1179 - iirfilt_cccf_reset @1180 - iirfilt_crcf_create @1181 - iirfilt_crcf_create_dc_blocker @1182 - iirfilt_crcf_create_differentiator @1183 - iirfilt_crcf_create_integrator @1184 - iirfilt_crcf_create_lowpass @1185 - iirfilt_crcf_create_pll @1186 - iirfilt_crcf_create_prototype @1187 - iirfilt_crcf_create_sos @1188 - iirfilt_crcf_destroy @1189 - iirfilt_crcf_execute @1190 - iirfilt_crcf_execute_block @1191 - iirfilt_crcf_execute_norm @1192 - iirfilt_crcf_execute_sos @1193 - iirfilt_crcf_freqresponse @1194 - iirfilt_crcf_get_length @1195 - iirfilt_crcf_groupdelay @1196 - iirfilt_crcf_init @1197 - iirfilt_crcf_print @1198 - iirfilt_crcf_reset @1199 - iirfilt_rrrf_create @1200 - iirfilt_rrrf_create_dc_blocker @1201 - iirfilt_rrrf_create_differentiator @1202 - iirfilt_rrrf_create_integrator @1203 - iirfilt_rrrf_create_lowpass @1204 - iirfilt_rrrf_create_pll @1205 - iirfilt_rrrf_create_prototype @1206 - iirfilt_rrrf_create_sos @1207 - iirfilt_rrrf_destroy @1208 - iirfilt_rrrf_execute @1209 - iirfilt_rrrf_execute_block @1210 - iirfilt_rrrf_execute_norm @1211 - iirfilt_rrrf_execute_sos @1212 - iirfilt_rrrf_freqresponse @1213 - iirfilt_rrrf_get_length @1214 - iirfilt_rrrf_groupdelay @1215 - iirfilt_rrrf_init @1216 - iirfilt_rrrf_print @1217 - iirfilt_rrrf_reset @1218 - iirfiltsos_cccf_create @1219 - iirfiltsos_cccf_destroy @1220 - iirfiltsos_cccf_execute @1221 - iirfiltsos_cccf_execute_df1 @1222 - iirfiltsos_cccf_execute_df2 @1223 - iirfiltsos_cccf_groupdelay @1224 - iirfiltsos_cccf_print @1225 - iirfiltsos_cccf_reset @1226 - iirfiltsos_cccf_set_coefficients @1227 - iirfiltsos_crcf_create @1228 - iirfiltsos_crcf_destroy @1229 - iirfiltsos_crcf_execute @1230 - iirfiltsos_crcf_execute_df1 @1231 - iirfiltsos_crcf_execute_df2 @1232 - iirfiltsos_crcf_groupdelay @1233 - iirfiltsos_crcf_print @1234 - iirfiltsos_crcf_reset @1235 - iirfiltsos_crcf_set_coefficients @1236 - iirfiltsos_rrrf_create @1237 - iirfiltsos_rrrf_destroy @1238 - iirfiltsos_rrrf_execute @1239 - iirfiltsos_rrrf_execute_df1 @1240 - iirfiltsos_rrrf_execute_df2 @1241 - iirfiltsos_rrrf_groupdelay @1242 - iirfiltsos_rrrf_print @1243 - iirfiltsos_rrrf_reset @1244 - iirfiltsos_rrrf_set_coefficients @1245 - iirhilbf_c2r_execute @1246 - iirhilbf_create @1247 - iirhilbf_create_default @1248 - iirhilbf_decim_execute @1249 - iirhilbf_decim_execute_block @1250 - iirhilbf_destroy @1251 - iirhilbf_interp_execute @1252 - iirhilbf_interp_execute_block @1253 - iirhilbf_print @1254 - iirhilbf_r2c_execute @1255 - iirhilbf_reset @1256 - iirinterp_cccf_create @1257 - iirinterp_cccf_create_default @1258 - iirinterp_cccf_create_prototype @1259 - iirinterp_cccf_destroy @1260 - iirinterp_cccf_execute @1261 - iirinterp_cccf_execute_block @1262 - iirinterp_cccf_groupdelay @1263 - iirinterp_cccf_print @1264 - iirinterp_cccf_reset @1265 - iirinterp_crcf_create @1266 - iirinterp_crcf_create_default @1267 - iirinterp_crcf_create_prototype @1268 - iirinterp_crcf_destroy @1269 - iirinterp_crcf_execute @1270 - iirinterp_crcf_execute_block @1271 - iirinterp_crcf_groupdelay @1272 - iirinterp_crcf_print @1273 - iirinterp_crcf_reset @1274 - iirinterp_rrrf_create @1275 - iirinterp_rrrf_create_default @1276 - iirinterp_rrrf_create_prototype @1277 - iirinterp_rrrf_destroy @1278 - iirinterp_rrrf_execute @1279 - iirinterp_rrrf_execute_block @1280 - iirinterp_rrrf_groupdelay @1281 - iirinterp_rrrf_print @1282 - iirinterp_rrrf_reset @1283 - interleaver_create @1284 - interleaver_decode @1285 - interleaver_decode_soft @1286 - interleaver_destroy @1287 - interleaver_encode @1288 - interleaver_encode_soft @1289 - interleaver_permute @1290 - interleaver_permute_mask @1291 - interleaver_permute_mask_soft @1292 - interleaver_permute_soft @1293 - interleaver_print @1294 - interleaver_set_depth @1295 - kaiser_beta_As @1296 - landenf @1297 - liquid_MarcumQ1f @1298 - liquid_MarcumQf @1299 - liquid_Qf @1300 - liquid_apsk128 @1301 DATA - liquid_apsk16 @1302 DATA - liquid_apsk256 @1303 DATA - liquid_apsk32 @1304 DATA - liquid_apsk4 @1305 DATA - liquid_apsk64 @1306 DATA - liquid_apsk8 @1307 DATA - liquid_asechf @1308 - liquid_bdotprod @1309 - liquid_besseli0f @1310 - liquid_besselif @1311 - liquid_besselj0f @1312 - liquid_besseljf @1313 - liquid_blackmanharris @1314 - liquid_blackmanharris7 @1315 - liquid_c_leading_zeros @1316 DATA - liquid_c_ones @1317 DATA - liquid_c_ones_mod2 @1318 DATA - liquid_cacosf @1319 - liquid_cargf_approx @1320 - liquid_casinf @1321 - liquid_catanf @1322 - liquid_cexpf @1323 - liquid_clogf @1324 - liquid_cosf @1325 - liquid_count_leading_zeros @1326 - liquid_count_ones @1327 - liquid_count_ones_mod2 @1328 - liquid_cplxpair @1329 - liquid_cplxpair_cleanup @1330 - liquid_csqrtf @1331 - liquid_expf @1332 - liquid_factor @1333 - liquid_factorialf @1334 - liquid_fft_estimate_method @1335 - liquid_filter_autocorr @1336 - liquid_filter_crosscorr @1337 - liquid_filter_energy @1338 - liquid_filter_isi @1339 - liquid_firdes_arkaiser @1340 - liquid_firdes_doppler @1341 - liquid_firdes_farcsech @1342 - liquid_firdes_farcsech_freqresponse @1343 - liquid_firdes_fexp @1344 - liquid_firdes_fexp_freqresponse @1345 - liquid_firdes_fnyquist @1346 - liquid_firdes_fsech @1347 - liquid_firdes_fsech_freqresponse @1348 - liquid_firdes_gmskrx @1349 - liquid_firdes_gmsktx @1350 - liquid_firdes_hM3 @1351 - liquid_firdes_kaiser @1352 - liquid_firdes_notch @1353 - liquid_firdes_prototype @1354 - liquid_firdes_rcos @1355 - liquid_firdes_rfarcsech @1356 - liquid_firdes_rfexp @1357 - liquid_firdes_rfsech @1358 - liquid_firdes_rkaiser @1359 - liquid_firdes_rkaiser_bisection @1360 - liquid_firdes_rkaiser_internal_isi @1361 - liquid_firdes_rkaiser_quadratic @1362 - liquid_firdes_rrcos @1363 - liquid_firfilt_type_str @1364 DATA - liquid_flattop @1365 - liquid_gammaf @1366 - liquid_gcd @1367 - liquid_get_scale @1368 - liquid_getopt_str2crc @1369 - liquid_getopt_str2fec @1370 - liquid_getopt_str2firfilt @1371 - liquid_getopt_str2mod @1372 - liquid_getopt_str2window @1373 - liquid_hamming @1374 - liquid_hann @1375 - liquid_iirdes @1376 - liquid_invgauss @1377 - liquid_is_prime @1378 - liquid_kaiser @1379 - liquid_kbd @1380 - liquid_kbd_window @1381 - liquid_lbcircshift @1382 - liquid_lbshift @1383 - liquid_lcircshift @1384 - liquid_levinson @1385 - liquid_libversion @1386 - liquid_libversion_number @1387 - liquid_lnbesselif @1388 - liquid_lngammaf @1389 - liquid_lnlowergammaf @1390 - liquid_lnuppergammaf @1391 - liquid_logf @1392 - liquid_lowergammaf @1393 - liquid_lpc @1394 - liquid_lshift @1395 - liquid_modem_is_apsk @1396 - liquid_modem_is_ask @1397 - liquid_modem_is_dpsk @1398 - liquid_modem_is_psk @1399 - liquid_modem_is_qam @1400 - liquid_modpow @1401 - liquid_msb_index @1402 - liquid_multimodal @1403 - liquid_nchoosek @1404 - liquid_nextpow2 @1405 - liquid_pack_array @1406 - liquid_pack_bytes @1407 - liquid_pack_soft_bits @1408 - liquid_primitive_root @1409 - liquid_primitive_root_prime @1410 - liquid_print_bitstring @1411 - liquid_print_crc_schemes @1412 - liquid_print_fec_schemes @1413 - liquid_print_modulation_schemes @1414 - liquid_print_windows @1415 - liquid_rbcircshift @1416 - liquid_rbshift @1417 - liquid_rcircshift @1418 - liquid_rcostaper_window @1419 - liquid_repack_bytes @1420 - liquid_reverse_byte @1421 - liquid_reverse_byte_gentab @1422 DATA - liquid_reverse_uint16 @1423 - liquid_reverse_uint24 @1424 - liquid_reverse_uint32 @1425 - liquid_rosenbrock @1426 - liquid_rshift @1427 - liquid_sincosf @1428 - liquid_sinf @1429 - liquid_spiral @1430 - liquid_sumsqcf @1431 - liquid_sumsqf @1432 - liquid_tanf @1433 - liquid_totient @1434 - liquid_triangular @1435 - liquid_unique_factor @1436 - liquid_unpack_array @1437 - liquid_unpack_bytes @1438 - liquid_unpack_soft_bits @1439 - liquid_unwrap_phase @1440 - liquid_unwrap_phase2 @1441 - liquid_uppergammaf @1442 - liquid_vectorcf_abs @1443 - liquid_vectorcf_add @1444 - liquid_vectorcf_addscalar @1445 - liquid_vectorcf_carg @1446 - liquid_vectorcf_cexpj @1447 - liquid_vectorcf_mul @1448 - liquid_vectorcf_mulscalar @1449 - liquid_vectorcf_norm @1450 - liquid_vectorcf_normalize @1451 - liquid_vectorf_abs @1452 - liquid_vectorf_add @1453 - liquid_vectorf_addscalar @1454 - liquid_vectorf_carg @1455 - liquid_vectorf_cexpj @1456 - liquid_vectorf_mul @1457 - liquid_vectorf_mulscalar @1458 - liquid_vectorf_norm @1459 - liquid_vectorf_normalize @1460 - liquid_version @1461 DATA - liquid_window_str @1462 DATA - liquid_windowf @1463 - matrix_add @1464 - matrix_aug @1465 - matrix_cgsolve @1466 - matrix_chol @1467 - matrix_det @1468 - matrix_det2x2 @1469 - matrix_div @1470 - matrix_eye @1471 - matrix_gjelim @1472 - matrix_gramschmidt @1473 - matrix_hermitian @1474 - matrix_hermitian_mul @1475 - matrix_inv @1476 - matrix_linsolve @1477 - matrix_ludecomp_crout @1478 - matrix_ludecomp_doolittle @1479 - matrix_mul @1480 - matrix_mul_hermitian @1481 - matrix_mul_transpose @1482 - matrix_ones @1483 - matrix_pdiv @1484 - matrix_pivot @1485 - matrix_pmul @1486 - matrix_print @1487 - matrix_proj @1488 - matrix_qrdecomp_gramschmidt @1489 - matrix_sub @1490 - matrix_swaprows @1491 - matrix_trans @1492 - matrix_transpose_mul @1493 - matrix_zeros @1494 - matrixc_add @1495 - matrixc_aug @1496 - matrixc_cgsolve @1497 - matrixc_chol @1498 - matrixc_det @1499 - matrixc_det2x2 @1500 - matrixc_div @1501 - matrixc_eye @1502 - matrixc_gjelim @1503 - matrixc_gramschmidt @1504 - matrixc_hermitian @1505 - matrixc_hermitian_mul @1506 - matrixc_inv @1507 - matrixc_linsolve @1508 - matrixc_ludecomp_crout @1509 - matrixc_ludecomp_doolittle @1510 - matrixc_mul @1511 - matrixc_mul_hermitian @1512 - matrixc_mul_transpose @1513 - matrixc_ones @1514 - matrixc_pdiv @1515 - matrixc_pivot @1516 - matrixc_pmul @1517 - matrixc_print @1518 - matrixc_proj @1519 - matrixc_qrdecomp_gramschmidt @1520 - matrixc_sub @1521 - matrixc_swaprows @1522 - matrixc_trans @1523 - matrixc_transpose_mul @1524 - matrixc_zeros @1525 - matrixcf_add @1526 - matrixcf_aug @1527 - matrixcf_cgsolve @1528 - matrixcf_chol @1529 - matrixcf_det @1530 - matrixcf_det2x2 @1531 - matrixcf_div @1532 - matrixcf_eye @1533 - matrixcf_gjelim @1534 - matrixcf_gramschmidt @1535 - matrixcf_hermitian @1536 - matrixcf_hermitian_mul @1537 - matrixcf_inv @1538 - matrixcf_linsolve @1539 - matrixcf_ludecomp_crout @1540 - matrixcf_ludecomp_doolittle @1541 - matrixcf_mul @1542 - matrixcf_mul_hermitian @1543 - matrixcf_mul_transpose @1544 - matrixcf_ones @1545 - matrixcf_pdiv @1546 - matrixcf_pivot @1547 - matrixcf_pmul @1548 - matrixcf_print @1549 - matrixcf_proj @1550 - matrixcf_qrdecomp_gramschmidt @1551 - matrixcf_sub @1552 - matrixcf_swaprows @1553 - matrixcf_trans @1554 - matrixcf_transpose_mul @1555 - matrixcf_zeros @1556 - matrixf_add @1557 - matrixf_aug @1558 - matrixf_cgsolve @1559 - matrixf_chol @1560 - matrixf_det @1561 - matrixf_det2x2 @1562 - matrixf_div @1563 - matrixf_eye @1564 - matrixf_gjelim @1565 - matrixf_gramschmidt @1566 - matrixf_hermitian @1567 - matrixf_hermitian_mul @1568 - matrixf_inv @1569 - matrixf_linsolve @1570 - matrixf_ludecomp_crout @1571 - matrixf_ludecomp_doolittle @1572 - matrixf_mul @1573 - matrixf_mul_hermitian @1574 - matrixf_mul_transpose @1575 - matrixf_ones @1576 - matrixf_pdiv @1577 - matrixf_pivot @1578 - matrixf_pmul @1579 - matrixf_print @1580 - matrixf_proj @1581 - matrixf_qrdecomp_gramschmidt @1582 - matrixf_sub @1583 - matrixf_swaprows @1584 - matrixf_trans @1585 - matrixf_transpose_mul @1586 - matrixf_zeros @1587 - modem_arb128opt @1588 DATA - modem_arb16opt @1589 DATA - modem_arb256opt @1590 DATA - modem_arb32opt @1591 DATA - modem_arb64opt @1592 DATA - modem_arb_V29 @1593 DATA - modem_arb_balance_iq @1594 - modem_arb_init @1595 - modem_arb_init_file @1596 - modem_arb_scale @1597 - modem_arb_sqam128 @1598 DATA - modem_arb_sqam32 @1599 DATA - modem_arb_vt64 @1600 DATA - modem_create @1601 - modem_create_V29 @1602 - modem_create_apsk @1603 - modem_create_arb @1604 - modem_create_arb128opt @1605 - modem_create_arb16opt @1606 - modem_create_arb256opt @1607 - modem_create_arb32opt @1608 - modem_create_arb64opt @1609 - modem_create_arb64vt @1610 - modem_create_arbitrary @1611 - modem_create_ask @1612 - modem_create_bpsk @1613 - modem_create_dpsk @1614 - modem_create_ook @1615 - modem_create_psk @1616 - modem_create_qam @1617 - modem_create_qpsk @1618 - modem_create_sqam128 @1619 - modem_create_sqam32 @1620 - modem_demodsoft_gentab @1621 - modem_demodulate @1622 - modem_demodulate_apsk @1623 - modem_demodulate_arb @1624 - modem_demodulate_ask @1625 - modem_demodulate_bpsk @1626 - modem_demodulate_dpsk @1627 - modem_demodulate_linear_array @1628 - modem_demodulate_linear_array_ref @1629 - modem_demodulate_ook @1630 - modem_demodulate_psk @1631 - modem_demodulate_qam @1632 - modem_demodulate_qpsk @1633 - modem_demodulate_soft @1634 - modem_demodulate_soft_arb @1635 - modem_demodulate_soft_bpsk @1636 - modem_demodulate_soft_qpsk @1637 - modem_demodulate_soft_table @1638 - modem_demodulate_sqam128 @1639 - modem_demodulate_sqam32 @1640 - modem_destroy @1641 - modem_gen_rand_sym @1642 - modem_get_bps @1643 - modem_get_demodulator_evm @1644 - modem_get_demodulator_phase_error @1645 - modem_get_demodulator_sample @1646 - modem_get_scheme @1647 - modem_init @1648 - modem_init_map @1649 - modem_modulate @1650 - modem_modulate_apsk @1651 - modem_modulate_arb @1652 - modem_modulate_ask @1653 - modem_modulate_bpsk @1654 - modem_modulate_dpsk @1655 - modem_modulate_map @1656 - modem_modulate_ook @1657 - modem_modulate_psk @1658 - modem_modulate_qam @1659 - modem_modulate_qpsk @1660 - modem_modulate_sqam128 @1661 - modem_modulate_sqam32 @1662 - modem_print @1663 - modem_recreate @1664 - modem_reset @1665 - modulation_types @1666 DATA - msequence_advance @1667 - msequence_create @1668 - msequence_create_default @1669 - msequence_create_genpoly @1670 - msequence_default @1671 DATA - msequence_destroy @1672 - msequence_generate_symbol @1673 - msequence_get_length @1674 - msequence_get_state @1675 - msequence_print @1676 - msequence_reset @1677 - msequence_set_state @1678 - msourcecf_add_chirp @1679 - msourcecf_add_fsk @1680 - msourcecf_add_gmsk @1681 - msourcecf_add_modem @1682 - msourcecf_add_noise @1683 - msourcecf_add_source @1684 - msourcecf_add_tone @1685 - msourcecf_add_user @1686 - msourcecf_create @1687 - msourcecf_create_default @1688 - msourcecf_destroy @1689 - msourcecf_disable @1690 - msourcecf_enable @1691 - msourcecf_find @1692 - msourcecf_generate @1693 - msourcecf_get_frequency @1694 - msourcecf_get_gain @1695 - msourcecf_get_num_samples @1696 - msourcecf_get_source @1697 - msourcecf_print @1698 - msourcecf_remove @1699 - msourcecf_reset @1700 - msourcecf_set_frequency @1701 - msourcecf_set_gain @1702 - msourcecf_write_samples @1703 - msresamp2_cccf_create @1704 - msresamp2_cccf_decim_execute @1705 - msresamp2_cccf_destroy @1706 - msresamp2_cccf_execute @1707 - msresamp2_cccf_get_delay @1708 - msresamp2_cccf_get_num_stages @1709 - msresamp2_cccf_get_rate @1710 - msresamp2_cccf_get_type @1711 - msresamp2_cccf_interp_execute @1712 - msresamp2_cccf_print @1713 - msresamp2_cccf_reset @1714 - msresamp2_crcf_create @1715 - msresamp2_crcf_decim_execute @1716 - msresamp2_crcf_destroy @1717 - msresamp2_crcf_execute @1718 - msresamp2_crcf_get_delay @1719 - msresamp2_crcf_get_num_stages @1720 - msresamp2_crcf_get_rate @1721 - msresamp2_crcf_get_type @1722 - msresamp2_crcf_interp_execute @1723 - msresamp2_crcf_print @1724 - msresamp2_crcf_reset @1725 - msresamp2_rrrf_create @1726 - msresamp2_rrrf_decim_execute @1727 - msresamp2_rrrf_destroy @1728 - msresamp2_rrrf_execute @1729 - msresamp2_rrrf_get_delay @1730 - msresamp2_rrrf_get_num_stages @1731 - msresamp2_rrrf_get_rate @1732 - msresamp2_rrrf_get_type @1733 - msresamp2_rrrf_interp_execute @1734 - msresamp2_rrrf_print @1735 - msresamp2_rrrf_reset @1736 - msresamp_cccf_create @1737 - msresamp_cccf_decim_execute @1738 - msresamp_cccf_destroy @1739 - msresamp_cccf_execute @1740 - msresamp_cccf_get_delay @1741 - msresamp_cccf_get_rate @1742 - msresamp_cccf_interp_execute @1743 - msresamp_cccf_print @1744 - msresamp_cccf_reset @1745 - msresamp_crcf_create @1746 - msresamp_crcf_decim_execute @1747 - msresamp_crcf_destroy @1748 - msresamp_crcf_execute @1749 - msresamp_crcf_get_delay @1750 - msresamp_crcf_get_rate @1751 - msresamp_crcf_interp_execute @1752 - msresamp_crcf_print @1753 - msresamp_crcf_reset @1754 - msresamp_rrrf_create @1755 - msresamp_rrrf_decim_execute @1756 - msresamp_rrrf_destroy @1757 - msresamp_rrrf_execute @1758 - msresamp_rrrf_get_delay @1759 - msresamp_rrrf_get_rate @1760 - msresamp_rrrf_interp_execute @1761 - msresamp_rrrf_print @1762 - msresamp_rrrf_reset @1763 - nco_crcf_adjust_frequency @1764 - nco_crcf_adjust_phase @1765 - nco_crcf_cexpf @1766 - nco_crcf_constrain @1767 - nco_crcf_cos @1768 - nco_crcf_create @1769 - nco_crcf_destroy @1770 - nco_crcf_get_frequency @1771 - nco_crcf_get_phase @1772 - nco_crcf_index @1773 - nco_crcf_mix_block_down @1774 - nco_crcf_mix_block_up @1775 - nco_crcf_mix_down @1776 - nco_crcf_mix_up @1777 - nco_crcf_pll_reset @1778 - nco_crcf_pll_set_bandwidth @1779 - nco_crcf_pll_step @1780 - nco_crcf_print @1781 - nco_crcf_reset @1782 - nco_crcf_set_frequency @1783 - nco_crcf_set_phase @1784 - nco_crcf_sin @1785 - nco_crcf_sincos @1786 - nco_crcf_step @1787 - ofdmflexframegen_assemble @1788 - ofdmflexframegen_create @1789 - ofdmflexframegen_destroy @1790 - ofdmflexframegen_encode_header @1791 - ofdmflexframegen_gen_S0a @1792 - ofdmflexframegen_gen_S0b @1793 - ofdmflexframegen_gen_S1 @1794 - ofdmflexframegen_gen_header @1795 - ofdmflexframegen_gen_payload @1796 - ofdmflexframegen_gen_symbol @1797 - ofdmflexframegen_gen_tail @1798 - ofdmflexframegen_gen_zeros @1799 - ofdmflexframegen_getframelen @1800 - ofdmflexframegen_getprops @1801 - ofdmflexframegen_is_assembled @1802 - ofdmflexframegen_modulate_header @1803 - ofdmflexframegen_print @1804 - ofdmflexframegen_reconfigure @1805 - ofdmflexframegen_reset @1806 - ofdmflexframegen_set_header_len @1807 - ofdmflexframegen_set_header_props @1808 - ofdmflexframegen_setprops @1809 - ofdmflexframegen_write @1810 - ofdmflexframegenprops_init_default @1811 - ofdmflexframesync_create @1812 - ofdmflexframesync_debug_disable @1813 - ofdmflexframesync_debug_enable @1814 - ofdmflexframesync_debug_print @1815 - ofdmflexframesync_decode_header @1816 - ofdmflexframesync_decode_header_soft @1817 - ofdmflexframesync_decode_payload_soft @1818 - ofdmflexframesync_destroy @1819 - ofdmflexframesync_execute @1820 - ofdmflexframesync_get_cfo @1821 - ofdmflexframesync_get_framedatastats @1822 - ofdmflexframesync_get_rssi @1823 - ofdmflexframesync_internal_callback @1824 - ofdmflexframesync_is_frame_open @1825 - ofdmflexframesync_print @1826 - ofdmflexframesync_reset @1827 - ofdmflexframesync_reset_framedatastats @1828 - ofdmflexframesync_rxheader @1829 - ofdmflexframesync_rxpayload @1830 - ofdmflexframesync_set_cfo @1831 - ofdmflexframesync_set_header_len @1832 - ofdmflexframesync_set_header_props @1833 - ofdmframe_init_S0 @1834 - ofdmframe_init_S1 @1835 - ofdmframe_init_default_sctype @1836 - ofdmframe_init_sctype_range @1837 - ofdmframe_print_sctype @1838 - ofdmframe_validate_sctype @1839 - ofdmframegen_create @1840 - ofdmframegen_destroy @1841 - ofdmframegen_gensymbol @1842 - ofdmframegen_print @1843 - ofdmframegen_reset @1844 - ofdmframegen_write_S0a @1845 - ofdmframegen_write_S0b @1846 - ofdmframegen_write_S1 @1847 - ofdmframegen_writesymbol @1848 - ofdmframegen_writetail @1849 - ofdmframesync_S0_metrics @1850 - ofdmframesync_create @1851 - ofdmframesync_debug_disable @1852 - ofdmframesync_debug_enable @1853 - ofdmframesync_debug_print @1854 - ofdmframesync_destroy @1855 - ofdmframesync_estimate_eqgain @1856 - ofdmframesync_estimate_eqgain_poly @1857 - ofdmframesync_estimate_gain_S0 @1858 - ofdmframesync_estimate_gain_S1 @1859 - ofdmframesync_execute @1860 - ofdmframesync_execute_S0a @1861 - ofdmframesync_execute_S0b @1862 - ofdmframesync_execute_S1 @1863 - ofdmframesync_execute_rxsymbols @1864 - ofdmframesync_execute_seekplcp @1865 - ofdmframesync_get_cfo @1866 - ofdmframesync_get_rssi @1867 - ofdmframesync_is_frame_open @1868 - ofdmframesync_print @1869 - ofdmframesync_reset @1870 - ofdmframesync_rxsymbol @1871 - ofdmframesync_set_cfo @1872 - optim_sort @1873 - optim_threshold_switch @1874 - ordfilt_rrrf_create @1875 - ordfilt_rrrf_create_medfilt @1876 - ordfilt_rrrf_destroy @1877 - ordfilt_rrrf_execute @1878 - ordfilt_rrrf_execute_block @1879 - ordfilt_rrrf_print @1880 - ordfilt_rrrf_push @1881 - ordfilt_rrrf_reset @1882 - ordfilt_rrrf_write @1883 - ordfilt_sort_compf @1884 - packetizer_compute_dec_msg_len @1885 - packetizer_compute_enc_msg_len @1886 - packetizer_create @1887 - packetizer_decode @1888 - packetizer_decode_soft @1889 - packetizer_destroy @1890 - packetizer_encode @1891 - packetizer_get_crc @1892 - packetizer_get_dec_msg_len @1893 - packetizer_get_enc_msg_len @1894 - packetizer_get_fec0 @1895 - packetizer_get_fec1 @1896 - packetizer_print @1897 - packetizer_realloc_buffers @1898 - packetizer_recreate @1899 - packetizer_set_scheme @1900 - poly_expandbinomial @1901 - poly_expandbinomial_pm @1902 - poly_expandroots @1903 - poly_expandroots2 @1904 - poly_findroots @1905 - poly_findroots_bairstow @1906 - poly_findroots_bairstow_persistent @1907 - poly_findroots_bairstow_recursion @1908 - poly_findroots_durandkerner @1909 - poly_fit @1910 - poly_fit_lagrange @1911 - poly_fit_lagrange_barycentric @1912 - poly_interp_lagrange @1913 - poly_mul @1914 - poly_sort_roots_compare @1915 - poly_val @1916 - poly_val_lagrange_barycentric @1917 - polyc_expandbinomial @1918 - polyc_expandbinomial_pm @1919 - polyc_expandroots @1920 - polyc_expandroots2 @1921 - polyc_findroots @1922 - polyc_findroots_bairstow @1923 - polyc_findroots_bairstow_persistent @1924 - polyc_findroots_bairstow_recursion @1925 - polyc_findroots_durandkerner @1926 - polyc_fit @1927 - polyc_fit_lagrange @1928 - polyc_fit_lagrange_barycentric @1929 - polyc_interp_lagrange @1930 - polyc_mul @1931 - polyc_sort_roots_compare @1932 - polyc_val @1933 - polyc_val_lagrange_barycentric @1934 - polycf_expandbinomial @1935 - polycf_expandbinomial_pm @1936 - polycf_expandroots @1937 - polycf_expandroots2 @1938 - polycf_findroots @1939 - polycf_findroots_bairstow @1940 - polycf_findroots_bairstow_persistent @1941 - polycf_findroots_bairstow_recursion @1942 - polycf_findroots_durandkerner @1943 - polycf_fit @1944 - polycf_fit_lagrange @1945 - polycf_fit_lagrange_barycentric @1946 - polycf_interp_lagrange @1947 - polycf_mul @1948 - polycf_sort_roots_compare @1949 - polycf_val @1950 - polycf_val_lagrange_barycentric @1951 - polyf_expandbinomial @1952 - polyf_expandbinomial_pm @1953 - polyf_expandroots @1954 - polyf_expandroots2 @1955 - polyf_findroots @1956 - polyf_findroots_bairstow @1957 - polyf_findroots_bairstow_persistent @1958 - polyf_findroots_bairstow_recursion @1959 - polyf_findroots_durandkerner @1960 - polyf_fit @1961 - polyf_fit_lagrange @1962 - polyf_fit_lagrange_barycentric @1963 - polyf_interp_lagrange @1964 - polyf_mul @1965 - polyf_sort_roots_compare @1966 - polyf_val @1967 - polyf_val_lagrange_barycentric @1968 - presync_cccf_correlate @1969 - presync_cccf_create @1970 - presync_cccf_destroy @1971 - presync_cccf_execute @1972 - presync_cccf_print @1973 - presync_cccf_push @1974 - presync_cccf_reset @1975 - qdetector_cccf_create @1976 - qdetector_cccf_create_cpfsk @1977 - qdetector_cccf_create_gmsk @1978 - qdetector_cccf_create_linear @1979 - qdetector_cccf_destroy @1980 - qdetector_cccf_execute @1981 - qdetector_cccf_execute_align @1982 - qdetector_cccf_execute_seek @1983 - qdetector_cccf_get_buf_len @1984 - qdetector_cccf_get_dphi @1985 - qdetector_cccf_get_gamma @1986 - qdetector_cccf_get_phi @1987 - qdetector_cccf_get_rxy @1988 - qdetector_cccf_get_seq_len @1989 - qdetector_cccf_get_sequence @1990 - qdetector_cccf_get_tau @1991 - qdetector_cccf_print @1992 - qdetector_cccf_reset @1993 - qdetector_cccf_set_range @1994 - qdetector_cccf_set_threshold @1995 - qnsearch_compute_Hessian @1996 - qnsearch_compute_gradient @1997 - qnsearch_create @1998 - qnsearch_destroy @1999 - qnsearch_normalize_gradient @2000 - qnsearch_print @2001 - qnsearch_reset @2002 - qnsearch_run @2003 - qnsearch_step @2004 - qpacketmodem_configure @2005 - qpacketmodem_create @2006 - qpacketmodem_decode @2007 - qpacketmodem_decode_bits @2008 - qpacketmodem_decode_soft @2009 - qpacketmodem_decode_soft_payload @2010 - qpacketmodem_decode_soft_sym @2011 - qpacketmodem_decode_syms @2012 - qpacketmodem_destroy @2013 - qpacketmodem_encode @2014 - qpacketmodem_encode_syms @2015 - qpacketmodem_get_crc @2016 - qpacketmodem_get_demodulator_evm @2017 - qpacketmodem_get_demodulator_phase_error @2018 - qpacketmodem_get_fec0 @2019 - qpacketmodem_get_fec1 @2020 - qpacketmodem_get_frame_len @2021 - qpacketmodem_get_modscheme @2022 - qpacketmodem_get_payload_len @2023 - qpacketmodem_print @2024 - qpacketmodem_reset @2025 - qpilot_frame_len @2026 - qpilot_num_pilots @2027 - qpilotgen_create @2028 - qpilotgen_destroy @2029 - qpilotgen_execute @2030 - qpilotgen_get_frame_len @2031 - qpilotgen_print @2032 - qpilotgen_recreate @2033 - qpilotgen_reset @2034 - qpilotsync_create @2035 - qpilotsync_destroy @2036 - qpilotsync_execute @2037 - qpilotsync_get_dphi @2038 - qpilotsync_get_evm @2039 - qpilotsync_get_frame_len @2040 - qpilotsync_get_gain @2041 - qpilotsync_get_phi @2042 - qpilotsync_print @2043 - qpilotsync_recreate @2044 - qpilotsync_reset @2045 - qsourcecf_create @2046 - qsourcecf_destroy @2047 - qsourcecf_disable @2048 - qsourcecf_enable @2049 - qsourcecf_generate @2050 - qsourcecf_generate_into @2051 - qsourcecf_get_frequency @2052 - qsourcecf_get_gain @2053 - qsourcecf_get_id @2054 - qsourcecf_get_num_samples @2055 - qsourcecf_init_chirp @2056 - qsourcecf_init_fsk @2057 - qsourcecf_init_gmsk @2058 - qsourcecf_init_modem @2059 - qsourcecf_init_noise @2060 - qsourcecf_init_tone @2061 - qsourcecf_init_user @2062 - qsourcecf_print @2063 - qsourcecf_reset @2064 - qsourcecf_set_frequency @2065 - qsourcecf_set_gain @2066 - qsourcecf_set_id @2067 - quantize_adc @2068 - quantize_dac @2069 - quantizercf_create @2070 - quantizercf_destroy @2071 - quantizercf_execute_adc @2072 - quantizercf_execute_dac @2073 - quantizercf_print @2074 - quantizerf_create @2075 - quantizerf_destroy @2076 - quantizerf_execute_adc @2077 - quantizerf_execute_dac @2078 - quantizerf_print @2079 - randexpf @2080 - randexpf_cdf @2081 - randexpf_pdf @2082 - randf @2083 - randf_cdf @2084 - randf_pdf @2085 - randgammaf @2086 - randgammaf_cdf @2087 - randgammaf_delta @2088 - randgammaf_pdf @2089 - randnakmf @2090 - randnakmf_cdf @2091 - randnakmf_pdf @2092 - randnf @2093 - randnf_cdf @2094 - randnf_pdf @2095 - randricekf @2096 - randricekf_cdf @2097 - randricekf_pdf @2098 - randuf @2099 - randuf_cdf @2100 - randuf_pdf @2101 - randweibf @2102 - randweibf_cdf @2103 - randweibf_pdf @2104 - resamp2_cccf_analyzer_execute @2105 - resamp2_cccf_create @2106 - resamp2_cccf_decim_execute @2107 - resamp2_cccf_destroy @2108 - resamp2_cccf_filter_execute @2109 - resamp2_cccf_get_delay @2110 - resamp2_cccf_interp_execute @2111 - resamp2_cccf_print @2112 - resamp2_cccf_recreate @2113 - resamp2_cccf_reset @2114 - resamp2_cccf_synthesizer_execute @2115 - resamp2_crcf_analyzer_execute @2116 - resamp2_crcf_create @2117 - resamp2_crcf_decim_execute @2118 - resamp2_crcf_destroy @2119 - resamp2_crcf_filter_execute @2120 - resamp2_crcf_get_delay @2121 - resamp2_crcf_interp_execute @2122 - resamp2_crcf_print @2123 - resamp2_crcf_recreate @2124 - resamp2_crcf_reset @2125 - resamp2_crcf_synthesizer_execute @2126 - resamp2_rrrf_analyzer_execute @2127 - resamp2_rrrf_create @2128 - resamp2_rrrf_decim_execute @2129 - resamp2_rrrf_destroy @2130 - resamp2_rrrf_filter_execute @2131 - resamp2_rrrf_get_delay @2132 - resamp2_rrrf_interp_execute @2133 - resamp2_rrrf_print @2134 - resamp2_rrrf_recreate @2135 - resamp2_rrrf_reset @2136 - resamp2_rrrf_synthesizer_execute @2137 - resamp_cccf_adjust_rate @2138 - resamp_cccf_adjust_timing_phase @2139 - resamp_cccf_create @2140 - resamp_cccf_create_default @2141 - resamp_cccf_destroy @2142 - resamp_cccf_execute @2143 - resamp_cccf_execute_block @2144 - resamp_cccf_get_delay @2145 - resamp_cccf_get_rate @2146 - resamp_cccf_print @2147 - resamp_cccf_reset @2148 - resamp_cccf_set_rate @2149 - resamp_cccf_set_timing_phase @2150 - resamp_crcf_adjust_rate @2151 - resamp_crcf_adjust_timing_phase @2152 - resamp_crcf_create @2153 - resamp_crcf_create_default @2154 - resamp_crcf_destroy @2155 - resamp_crcf_execute @2156 - resamp_crcf_execute_block @2157 - resamp_crcf_get_delay @2158 - resamp_crcf_get_rate @2159 - resamp_crcf_print @2160 - resamp_crcf_reset @2161 - resamp_crcf_set_rate @2162 - resamp_crcf_set_timing_phase @2163 - resamp_rrrf_adjust_rate @2164 - resamp_rrrf_adjust_timing_phase @2165 - resamp_rrrf_create @2166 - resamp_rrrf_create_default @2167 - resamp_rrrf_destroy @2168 - resamp_rrrf_execute @2169 - resamp_rrrf_execute_block @2170 - resamp_rrrf_get_delay @2171 - resamp_rrrf_get_rate @2172 - resamp_rrrf_print @2173 - resamp_rrrf_reset @2174 - resamp_rrrf_set_rate @2175 - resamp_rrrf_set_timing_phase @2176 - rkaiser_approximate_rho @2177 - rresamp_cccf_create @2178 - rresamp_cccf_create_default @2179 - rresamp_cccf_create_kaiser @2180 - rresamp_cccf_create_prototype @2181 - rresamp_cccf_destroy @2182 - rresamp_cccf_execute @2183 - rresamp_cccf_execute_primitive @2184 - rresamp_cccf_get_P @2185 - rresamp_cccf_get_Q @2186 - rresamp_cccf_get_block_len @2187 - rresamp_cccf_get_decim @2188 - rresamp_cccf_get_delay @2189 - rresamp_cccf_get_interp @2190 - rresamp_cccf_get_rate @2191 - rresamp_cccf_get_scale @2192 - rresamp_cccf_print @2193 - rresamp_cccf_reset @2194 - rresamp_cccf_set_scale @2195 - rresamp_crcf_create @2196 - rresamp_crcf_create_default @2197 - rresamp_crcf_create_kaiser @2198 - rresamp_crcf_create_prototype @2199 - rresamp_crcf_destroy @2200 - rresamp_crcf_execute @2201 - rresamp_crcf_execute_primitive @2202 - rresamp_crcf_get_P @2203 - rresamp_crcf_get_Q @2204 - rresamp_crcf_get_block_len @2205 - rresamp_crcf_get_decim @2206 - rresamp_crcf_get_delay @2207 - rresamp_crcf_get_interp @2208 - rresamp_crcf_get_rate @2209 - rresamp_crcf_get_scale @2210 - rresamp_crcf_print @2211 - rresamp_crcf_reset @2212 - rresamp_crcf_set_scale @2213 - rresamp_rrrf_create @2214 - rresamp_rrrf_create_default @2215 - rresamp_rrrf_create_kaiser @2216 - rresamp_rrrf_create_prototype @2217 - rresamp_rrrf_destroy @2218 - rresamp_rrrf_execute @2219 - rresamp_rrrf_execute_primitive @2220 - rresamp_rrrf_get_P @2221 - rresamp_rrrf_get_Q @2222 - rresamp_rrrf_get_block_len @2223 - rresamp_rrrf_get_decim @2224 - rresamp_rrrf_get_delay @2225 - rresamp_rrrf_get_interp @2226 - rresamp_rrrf_get_rate @2227 - rresamp_rrrf_get_scale @2228 - rresamp_rrrf_print @2229 - rresamp_rrrf_reset @2230 - rresamp_rrrf_set_scale @2231 - scramble_data @2232 - secded2216_P @2233 DATA - secded2216_syndrome_w1 @2234 DATA - secded3932_P @2235 DATA - secded3932_syndrome_w1 @2236 DATA - secded7264_P @2237 DATA - secded7264_syndrome_w1 @2238 DATA - sincf @2239 - smatrix_indexsearch @2240 - smatrixb_clear @2241 - smatrixb_create @2242 - smatrixb_create_array @2243 - smatrixb_delete @2244 - smatrixb_destroy @2245 - smatrixb_eye @2246 - smatrixb_get @2247 - smatrixb_insert @2248 - smatrixb_isset @2249 - smatrixb_mul @2250 - smatrixb_mulf @2251 - smatrixb_print @2252 - smatrixb_print_expanded @2253 - smatrixb_reset @2254 - smatrixb_reset_max_mlist @2255 - smatrixb_reset_max_nlist @2256 - smatrixb_set @2257 - smatrixb_size @2258 - smatrixb_vmul @2259 - smatrixb_vmulf @2260 - smatrixf_clear @2261 - smatrixf_create @2262 - smatrixf_create_array @2263 - smatrixf_delete @2264 - smatrixf_destroy @2265 - smatrixf_eye @2266 - smatrixf_get @2267 - smatrixf_insert @2268 - smatrixf_isset @2269 - smatrixf_mul @2270 - smatrixf_print @2271 - smatrixf_print_expanded @2272 - smatrixf_reset @2273 - smatrixf_reset_max_mlist @2274 - smatrixf_reset_max_nlist @2275 - smatrixf_set @2276 - smatrixf_size @2277 - smatrixf_vmul @2278 - smatrixi_clear @2279 - smatrixi_create @2280 - smatrixi_create_array @2281 - smatrixi_delete @2282 - smatrixi_destroy @2283 - smatrixi_eye @2284 - smatrixi_get @2285 - smatrixi_insert @2286 - smatrixi_isset @2287 - smatrixi_mul @2288 - smatrixi_print @2289 - smatrixi_print_expanded @2290 - smatrixi_reset @2291 - smatrixi_reset_max_mlist @2292 - smatrixi_reset_max_nlist @2293 - smatrixi_set @2294 - smatrixi_size @2295 - smatrixi_vmul @2296 - spgramcf_clear @2297 - spgramcf_create @2298 - spgramcf_create_default @2299 - spgramcf_destroy @2300 - spgramcf_estimate_psd @2301 - spgramcf_export_gnuplot @2302 - spgramcf_get_alpha @2303 - spgramcf_get_delay @2304 - spgramcf_get_nfft @2305 - spgramcf_get_num_samples @2306 - spgramcf_get_num_samples_total @2307 - spgramcf_get_num_transforms @2308 - spgramcf_get_num_transforms_total @2309 - spgramcf_get_psd @2310 - spgramcf_get_window_len @2311 - spgramcf_print @2312 - spgramcf_push @2313 - spgramcf_reset @2314 - spgramcf_set_alpha @2315 - spgramcf_set_freq @2316 - spgramcf_set_rate @2317 - spgramcf_step @2318 - spgramcf_write @2319 - spgramf_clear @2320 - spgramf_create @2321 - spgramf_create_default @2322 - spgramf_destroy @2323 - spgramf_estimate_psd @2324 - spgramf_export_gnuplot @2325 - spgramf_get_alpha @2326 - spgramf_get_delay @2327 - spgramf_get_nfft @2328 - spgramf_get_num_samples @2329 - spgramf_get_num_samples_total @2330 - spgramf_get_num_transforms @2331 - spgramf_get_num_transforms_total @2332 - spgramf_get_psd @2333 - spgramf_get_window_len @2334 - spgramf_print @2335 - spgramf_push @2336 - spgramf_reset @2337 - spgramf_set_alpha @2338 - spgramf_set_freq @2339 - spgramf_set_rate @2340 - spgramf_step @2341 - spgramf_write @2342 - spwaterfallcf_clear @2343 - spwaterfallcf_consolidate_buffer @2344 - spwaterfallcf_create @2345 - spwaterfallcf_create_default @2346 - spwaterfallcf_destroy @2347 - spwaterfallcf_export @2348 - spwaterfallcf_export_bin @2349 - spwaterfallcf_export_gnu @2350 - spwaterfallcf_get_num_freq @2351 - spwaterfallcf_get_num_samples_total @2352 - spwaterfallcf_get_num_time @2353 - spwaterfallcf_get_psd @2354 - spwaterfallcf_print @2355 - spwaterfallcf_push @2356 - spwaterfallcf_reset @2357 - spwaterfallcf_set_commands @2358 - spwaterfallcf_set_dims @2359 - spwaterfallcf_set_freq @2360 - spwaterfallcf_set_rate @2361 - spwaterfallcf_step @2362 - spwaterfallcf_write @2363 - spwaterfallf_clear @2364 - spwaterfallf_consolidate_buffer @2365 - spwaterfallf_create @2366 - spwaterfallf_create_default @2367 - spwaterfallf_destroy @2368 - spwaterfallf_export @2369 - spwaterfallf_export_bin @2370 - spwaterfallf_export_gnu @2371 - spwaterfallf_get_num_freq @2372 - spwaterfallf_get_num_samples_total @2373 - spwaterfallf_get_num_time @2374 - spwaterfallf_get_psd @2375 - spwaterfallf_print @2376 - spwaterfallf_push @2377 - spwaterfallf_reset @2378 - spwaterfallf_set_commands @2379 - spwaterfallf_set_dims @2380 - spwaterfallf_set_freq @2381 - spwaterfallf_set_rate @2382 - spwaterfallf_step @2383 - spwaterfallf_write @2384 - sumproduct_phi @2385 - symstreamcf_create @2386 - symstreamcf_create_linear @2387 - symstreamcf_destroy @2388 - symstreamcf_fill_buffer @2389 - symstreamcf_get_gain @2390 - symstreamcf_get_scheme @2391 - symstreamcf_print @2392 - symstreamcf_reset @2393 - symstreamcf_set_gain @2394 - symstreamcf_set_scheme @2395 - symstreamcf_write_samples @2396 - symsync_crcf_advance_internal_loop @2397 - symsync_crcf_create @2398 - symsync_crcf_create_kaiser @2399 - symsync_crcf_create_rnyquist @2400 - symsync_crcf_destroy @2401 - symsync_crcf_execute @2402 - symsync_crcf_get_tau @2403 - symsync_crcf_lock @2404 - symsync_crcf_output_debug_file @2405 - symsync_crcf_print @2406 - symsync_crcf_reset @2407 - symsync_crcf_set_lf_bw @2408 - symsync_crcf_set_output_rate @2409 - symsync_crcf_step @2410 - symsync_crcf_unlock @2411 - symsync_rrrf_advance_internal_loop @2412 - symsync_rrrf_create @2413 - symsync_rrrf_create_kaiser @2414 - symsync_rrrf_create_rnyquist @2415 - symsync_rrrf_destroy @2416 - symsync_rrrf_execute @2417 - symsync_rrrf_get_tau @2418 - symsync_rrrf_lock @2419 - symsync_rrrf_output_debug_file @2420 - symsync_rrrf_print @2421 - symsync_rrrf_reset @2422 - symsync_rrrf_set_lf_bw @2423 - symsync_rrrf_set_output_rate @2424 - symsync_rrrf_step @2425 - symsync_rrrf_unlock @2426 - symtrack_cccf_adjust_phase @2427 - symtrack_cccf_create @2428 - symtrack_cccf_create_default @2429 - symtrack_cccf_destroy @2430 - symtrack_cccf_execute @2431 - symtrack_cccf_execute_block @2432 - symtrack_cccf_print @2433 - symtrack_cccf_reset @2434 - symtrack_cccf_set_bandwidth @2435 - symtrack_cccf_set_modscheme @2436 - synth_crcf_adjust_frequency @2437 - synth_crcf_adjust_phase @2438 - synth_crcf_compute_synth @2439 - synth_crcf_constrain_frequency @2440 - synth_crcf_constrain_phase @2441 - synth_crcf_create @2442 - synth_crcf_despread @2443 - synth_crcf_despread_triple @2444 - synth_crcf_destroy @2445 - synth_crcf_get_current @2446 - synth_crcf_get_frequency @2447 - synth_crcf_get_half_next @2448 - synth_crcf_get_half_previous @2449 - synth_crcf_get_length @2450 - synth_crcf_get_phase @2451 - synth_crcf_mix_block_down @2452 - synth_crcf_mix_block_up @2453 - synth_crcf_mix_down @2454 - synth_crcf_mix_up @2455 - synth_crcf_pll_reset @2456 - synth_crcf_pll_set_bandwidth @2457 - synth_crcf_pll_step @2458 - synth_crcf_reset @2459 - synth_crcf_set_frequency @2460 - synth_crcf_set_phase @2461 - synth_crcf_spread @2462 - synth_crcf_step @2463 - tvmpch_cccf_create @2464 - tvmpch_cccf_destroy @2465 - tvmpch_cccf_execute @2466 - tvmpch_cccf_execute_block @2467 - tvmpch_cccf_print @2468 - tvmpch_cccf_push @2469 - tvmpch_cccf_reset @2470 - unscramble_data @2471 - unscramble_data_soft @2472 - wdelaycf_create @2473 - wdelaycf_destroy @2474 - wdelaycf_print @2475 - wdelaycf_push @2476 - wdelaycf_read @2477 - wdelaycf_recreate @2478 - wdelaycf_reset @2479 - wdelayf_create @2480 - wdelayf_destroy @2481 - wdelayf_print @2482 - wdelayf_push @2483 - wdelayf_read @2484 - wdelayf_recreate @2485 - wdelayf_reset @2486 - windowcf_create @2487 - windowcf_debug_print @2488 - windowcf_destroy @2489 - windowcf_index @2490 - windowcf_print @2491 - windowcf_push @2492 - windowcf_read @2493 - windowcf_recreate @2494 - windowcf_reset @2495 - windowcf_write @2496 - windowf_create @2497 - windowf_debug_print @2498 - windowf_destroy @2499 - windowf_index @2500 - windowf_print @2501 - windowf_push @2502 - windowf_read @2503 - windowf_recreate @2504 - windowf_reset @2505 - windowf_write @2506 + gmskframegen_write @1075 + gmskframegen_write_header @1076 + gmskframegen_write_payload @1077 + gmskframegen_write_preamble @1078 + gmskframegen_write_samples @1079 + gmskframegen_write_tail @1080 + gmskframesync_create @1081 + gmskframesync_debug_disable @1082 + gmskframesync_debug_enable @1083 + gmskframesync_debug_print @1084 + gmskframesync_decode_header @1085 + gmskframesync_destroy @1086 + gmskframesync_execute @1087 + gmskframesync_execute_detectframe @1088 + gmskframesync_execute_rxheader @1089 + gmskframesync_execute_rxpayload @1090 + gmskframesync_execute_rxpreamble @1091 + gmskframesync_execute_sample @1092 + gmskframesync_is_frame_open @1093 + gmskframesync_print @1094 + gmskframesync_pushpn @1095 + gmskframesync_reset @1096 + gmskframesync_set_header_len @1097 + gmskframesync_syncpn @1098 + gmskframesync_update_fi @1099 + gmskframesync_update_symsync @1100 + gmskmod_create @1101 + gmskmod_destroy @1102 + gmskmod_modulate @1103 + gmskmod_print @1104 + gmskmod_reset @1105 + golay2412_Gt @1106 DATA + golay2412_H @1107 DATA + golay2412_P @1108 DATA + golay2412_matrix_mul @1109 + golay2412_parity_search @1110 + gradsearch_create @1111 + gradsearch_destroy @1112 + gradsearch_execute @1113 + gradsearch_gradient @1114 + gradsearch_linesearch @1115 + gradsearch_norm @1116 + gradsearch_print @1117 + gradsearch_step @1118 + gray_decode @1119 + gray_encode @1120 + hamming128_enc_gentab @1121 DATA + hamming74_dec_gentab @1122 DATA + hamming74_enc_gentab @1123 DATA + hamming84_dec_gentab @1124 DATA + hamming84_enc_gentab @1125 DATA + icrandnf @1126 + iir_group_delay @1127 + iirdecim_cccf_create @1128 + iirdecim_cccf_create_default @1129 + iirdecim_cccf_create_prototype @1130 + iirdecim_cccf_destroy @1131 + iirdecim_cccf_execute @1132 + iirdecim_cccf_execute_block @1133 + iirdecim_cccf_groupdelay @1134 + iirdecim_cccf_print @1135 + iirdecim_cccf_reset @1136 + iirdecim_crcf_create @1137 + iirdecim_crcf_create_default @1138 + iirdecim_crcf_create_prototype @1139 + iirdecim_crcf_destroy @1140 + iirdecim_crcf_execute @1141 + iirdecim_crcf_execute_block @1142 + iirdecim_crcf_groupdelay @1143 + iirdecim_crcf_print @1144 + iirdecim_crcf_reset @1145 + iirdecim_rrrf_create @1146 + iirdecim_rrrf_create_default @1147 + iirdecim_rrrf_create_prototype @1148 + iirdecim_rrrf_destroy @1149 + iirdecim_rrrf_execute @1150 + iirdecim_rrrf_execute_block @1151 + iirdecim_rrrf_groupdelay @1152 + iirdecim_rrrf_print @1153 + iirdecim_rrrf_reset @1154 + iirdes_dzpk2sosf @1155 + iirdes_dzpk2tff @1156 + iirdes_dzpk_lp2bp @1157 + iirdes_dzpk_lp2hp @1158 + iirdes_freqprewarp @1159 + iirdes_isstable @1160 + iirdes_pll_active_PI @1161 + iirdes_pll_active_lag @1162 + iirfilt_cccf_create @1163 + iirfilt_cccf_create_dc_blocker @1164 + iirfilt_cccf_create_differentiator @1165 + iirfilt_cccf_create_integrator @1166 + iirfilt_cccf_create_lowpass @1167 + iirfilt_cccf_create_pll @1168 + iirfilt_cccf_create_prototype @1169 + iirfilt_cccf_create_sos @1170 + iirfilt_cccf_destroy @1171 + iirfilt_cccf_execute @1172 + iirfilt_cccf_execute_block @1173 + iirfilt_cccf_execute_norm @1174 + iirfilt_cccf_execute_sos @1175 + iirfilt_cccf_freqresponse @1176 + iirfilt_cccf_get_length @1177 + iirfilt_cccf_groupdelay @1178 + iirfilt_cccf_init @1179 + iirfilt_cccf_print @1180 + iirfilt_cccf_reset @1181 + iirfilt_crcf_create @1182 + iirfilt_crcf_create_dc_blocker @1183 + iirfilt_crcf_create_differentiator @1184 + iirfilt_crcf_create_integrator @1185 + iirfilt_crcf_create_lowpass @1186 + iirfilt_crcf_create_pll @1187 + iirfilt_crcf_create_prototype @1188 + iirfilt_crcf_create_sos @1189 + iirfilt_crcf_destroy @1190 + iirfilt_crcf_execute @1191 + iirfilt_crcf_execute_block @1192 + iirfilt_crcf_execute_norm @1193 + iirfilt_crcf_execute_sos @1194 + iirfilt_crcf_freqresponse @1195 + iirfilt_crcf_get_length @1196 + iirfilt_crcf_groupdelay @1197 + iirfilt_crcf_init @1198 + iirfilt_crcf_print @1199 + iirfilt_crcf_reset @1200 + iirfilt_rrrf_create @1201 + iirfilt_rrrf_create_dc_blocker @1202 + iirfilt_rrrf_create_differentiator @1203 + iirfilt_rrrf_create_integrator @1204 + iirfilt_rrrf_create_lowpass @1205 + iirfilt_rrrf_create_pll @1206 + iirfilt_rrrf_create_prototype @1207 + iirfilt_rrrf_create_sos @1208 + iirfilt_rrrf_destroy @1209 + iirfilt_rrrf_execute @1210 + iirfilt_rrrf_execute_block @1211 + iirfilt_rrrf_execute_norm @1212 + iirfilt_rrrf_execute_sos @1213 + iirfilt_rrrf_freqresponse @1214 + iirfilt_rrrf_get_length @1215 + iirfilt_rrrf_groupdelay @1216 + iirfilt_rrrf_init @1217 + iirfilt_rrrf_print @1218 + iirfilt_rrrf_reset @1219 + iirfiltsos_cccf_create @1220 + iirfiltsos_cccf_destroy @1221 + iirfiltsos_cccf_execute @1222 + iirfiltsos_cccf_execute_df1 @1223 + iirfiltsos_cccf_execute_df2 @1224 + iirfiltsos_cccf_groupdelay @1225 + iirfiltsos_cccf_print @1226 + iirfiltsos_cccf_reset @1227 + iirfiltsos_cccf_set_coefficients @1228 + iirfiltsos_crcf_create @1229 + iirfiltsos_crcf_destroy @1230 + iirfiltsos_crcf_execute @1231 + iirfiltsos_crcf_execute_df1 @1232 + iirfiltsos_crcf_execute_df2 @1233 + iirfiltsos_crcf_groupdelay @1234 + iirfiltsos_crcf_print @1235 + iirfiltsos_crcf_reset @1236 + iirfiltsos_crcf_set_coefficients @1237 + iirfiltsos_rrrf_create @1238 + iirfiltsos_rrrf_destroy @1239 + iirfiltsos_rrrf_execute @1240 + iirfiltsos_rrrf_execute_df1 @1241 + iirfiltsos_rrrf_execute_df2 @1242 + iirfiltsos_rrrf_groupdelay @1243 + iirfiltsos_rrrf_print @1244 + iirfiltsos_rrrf_reset @1245 + iirfiltsos_rrrf_set_coefficients @1246 + iirhilbf_c2r_execute @1247 + iirhilbf_create @1248 + iirhilbf_create_default @1249 + iirhilbf_decim_execute @1250 + iirhilbf_decim_execute_block @1251 + iirhilbf_destroy @1252 + iirhilbf_interp_execute @1253 + iirhilbf_interp_execute_block @1254 + iirhilbf_print @1255 + iirhilbf_r2c_execute @1256 + iirhilbf_reset @1257 + iirinterp_cccf_create @1258 + iirinterp_cccf_create_default @1259 + iirinterp_cccf_create_prototype @1260 + iirinterp_cccf_destroy @1261 + iirinterp_cccf_execute @1262 + iirinterp_cccf_execute_block @1263 + iirinterp_cccf_groupdelay @1264 + iirinterp_cccf_print @1265 + iirinterp_cccf_reset @1266 + iirinterp_crcf_create @1267 + iirinterp_crcf_create_default @1268 + iirinterp_crcf_create_prototype @1269 + iirinterp_crcf_destroy @1270 + iirinterp_crcf_execute @1271 + iirinterp_crcf_execute_block @1272 + iirinterp_crcf_groupdelay @1273 + iirinterp_crcf_print @1274 + iirinterp_crcf_reset @1275 + iirinterp_rrrf_create @1276 + iirinterp_rrrf_create_default @1277 + iirinterp_rrrf_create_prototype @1278 + iirinterp_rrrf_destroy @1279 + iirinterp_rrrf_execute @1280 + iirinterp_rrrf_execute_block @1281 + iirinterp_rrrf_groupdelay @1282 + iirinterp_rrrf_print @1283 + iirinterp_rrrf_reset @1284 + interleaver_create @1285 + interleaver_decode @1286 + interleaver_decode_soft @1287 + interleaver_destroy @1288 + interleaver_encode @1289 + interleaver_encode_soft @1290 + interleaver_permute @1291 + interleaver_permute_mask @1292 + interleaver_permute_mask_soft @1293 + interleaver_permute_soft @1294 + interleaver_print @1295 + interleaver_set_depth @1296 + kaiser_beta_As @1297 + landenf @1298 + liquid_MarcumQ1f @1299 + liquid_MarcumQf @1300 + liquid_Qf @1301 + liquid_apsk128 @1302 DATA + liquid_apsk16 @1303 DATA + liquid_apsk256 @1304 DATA + liquid_apsk32 @1305 DATA + liquid_apsk4 @1306 DATA + liquid_apsk64 @1307 DATA + liquid_apsk8 @1308 DATA + liquid_asechf @1309 + liquid_bdotprod @1310 + liquid_besseli0f @1311 + liquid_besselif @1312 + liquid_besselj0f @1313 + liquid_besseljf @1314 + liquid_blackmanharris @1315 + liquid_blackmanharris7 @1316 + liquid_c_leading_zeros @1317 DATA + liquid_c_ones @1318 DATA + liquid_c_ones_mod2 @1319 DATA + liquid_cacosf @1320 + liquid_cargf_approx @1321 + liquid_casinf @1322 + liquid_catanf @1323 + liquid_cexpf @1324 + liquid_clogf @1325 + liquid_cosf @1326 + liquid_count_leading_zeros @1327 + liquid_count_ones @1328 + liquid_count_ones_mod2 @1329 + liquid_cplxpair @1330 + liquid_cplxpair_cleanup @1331 + liquid_csqrtf @1332 + liquid_error_config_fl @1333 + liquid_error_fl @1334 + liquid_error_info @1335 + liquid_error_str @1336 DATA + liquid_expf @1337 + liquid_factor @1338 + liquid_factorialf @1339 + liquid_fft_estimate_method @1340 + liquid_filter_autocorr @1341 + liquid_filter_crosscorr @1342 + liquid_filter_energy @1343 + liquid_filter_isi @1344 + liquid_firdes_arkaiser @1345 + liquid_firdes_doppler @1346 + liquid_firdes_farcsech @1347 + liquid_firdes_farcsech_freqresponse @1348 + liquid_firdes_fexp @1349 + liquid_firdes_fexp_freqresponse @1350 + liquid_firdes_fnyquist @1351 + liquid_firdes_fsech @1352 + liquid_firdes_fsech_freqresponse @1353 + liquid_firdes_gmskrx @1354 + liquid_firdes_gmsktx @1355 + liquid_firdes_hM3 @1356 + liquid_firdes_kaiser @1357 + liquid_firdes_notch @1358 + liquid_firdes_prototype @1359 + liquid_firdes_rcos @1360 + liquid_firdes_rfarcsech @1361 + liquid_firdes_rfexp @1362 + liquid_firdes_rfsech @1363 + liquid_firdes_rkaiser @1364 + liquid_firdes_rkaiser_bisection @1365 + liquid_firdes_rkaiser_internal_isi @1366 + liquid_firdes_rkaiser_quadratic @1367 + liquid_firdes_rrcos @1368 + liquid_firfilt_type_str @1369 DATA + liquid_flattop @1370 + liquid_gammaf @1371 + liquid_gcd @1372 + liquid_get_scale @1373 + liquid_getopt_str2crc @1374 + liquid_getopt_str2fec @1375 + liquid_getopt_str2firfilt @1376 + liquid_getopt_str2mod @1377 + liquid_getopt_str2window @1378 + liquid_hamming @1379 + liquid_hann @1380 + liquid_iirdes @1381 + liquid_invgauss @1382 + liquid_is_prime @1383 + liquid_kaiser @1384 + liquid_kbd @1385 + liquid_kbd_window @1386 + liquid_lbcircshift @1387 + liquid_lbshift @1388 + liquid_lcircshift @1389 + liquid_levinson @1390 + liquid_libversion @1391 + liquid_libversion_number @1392 + liquid_lnbesselif @1393 + liquid_lngammaf @1394 + liquid_lnlowergammaf @1395 + liquid_lnuppergammaf @1396 + liquid_logf @1397 + liquid_lowergammaf @1398 + liquid_lpc @1399 + liquid_lshift @1400 + liquid_modem_is_apsk @1401 + liquid_modem_is_ask @1402 + liquid_modem_is_dpsk @1403 + liquid_modem_is_psk @1404 + liquid_modem_is_qam @1405 + liquid_modpow @1406 + liquid_msb_index @1407 + liquid_multimodal @1408 + liquid_nchoosek @1409 + liquid_nextpow2 @1410 + liquid_pack_array @1411 + liquid_pack_bytes @1412 + liquid_pack_soft_bits @1413 + liquid_primitive_root @1414 + liquid_primitive_root_prime @1415 + liquid_print_bitstring @1416 + liquid_print_crc_schemes @1417 + liquid_print_fec_schemes @1418 + liquid_print_modulation_schemes @1419 + liquid_print_windows @1420 + liquid_rbcircshift @1421 + liquid_rbshift @1422 + liquid_rcircshift @1423 + liquid_rcostaper_window @1424 + liquid_repack_bytes @1425 + liquid_reverse_byte @1426 + liquid_reverse_byte_gentab @1427 DATA + liquid_reverse_uint16 @1428 + liquid_reverse_uint24 @1429 + liquid_reverse_uint32 @1430 + liquid_rosenbrock @1431 + liquid_rshift @1432 + liquid_sincosf @1433 + liquid_sinf @1434 + liquid_spiral @1435 + liquid_sumsqcf @1436 + liquid_sumsqf @1437 + liquid_tanf @1438 + liquid_totient @1439 + liquid_triangular @1440 + liquid_unique_factor @1441 + liquid_unpack_array @1442 + liquid_unpack_bytes @1443 + liquid_unpack_soft_bits @1444 + liquid_unwrap_phase @1445 + liquid_unwrap_phase2 @1446 + liquid_uppergammaf @1447 + liquid_vectorcf_abs @1448 + liquid_vectorcf_add @1449 + liquid_vectorcf_addscalar @1450 + liquid_vectorcf_carg @1451 + liquid_vectorcf_cexpj @1452 + liquid_vectorcf_mul @1453 + liquid_vectorcf_mulscalar @1454 + liquid_vectorcf_norm @1455 + liquid_vectorcf_normalize @1456 + liquid_vectorf_abs @1457 + liquid_vectorf_add @1458 + liquid_vectorf_addscalar @1459 + liquid_vectorf_carg @1460 + liquid_vectorf_cexpj @1461 + liquid_vectorf_mul @1462 + liquid_vectorf_mulscalar @1463 + liquid_vectorf_norm @1464 + liquid_vectorf_normalize @1465 + liquid_version @1466 DATA + liquid_window_str @1467 DATA + liquid_windowf @1468 + matrix_add @1469 + matrix_aug @1470 + matrix_cgsolve @1471 + matrix_chol @1472 + matrix_det @1473 + matrix_det2x2 @1474 + matrix_div @1475 + matrix_eye @1476 + matrix_gjelim @1477 + matrix_gramschmidt @1478 + matrix_hermitian @1479 + matrix_hermitian_mul @1480 + matrix_inv @1481 + matrix_linsolve @1482 + matrix_ludecomp_crout @1483 + matrix_ludecomp_doolittle @1484 + matrix_mul @1485 + matrix_mul_hermitian @1486 + matrix_mul_transpose @1487 + matrix_ones @1488 + matrix_pdiv @1489 + matrix_pivot @1490 + matrix_pmul @1491 + matrix_print @1492 + matrix_proj @1493 + matrix_qrdecomp_gramschmidt @1494 + matrix_sub @1495 + matrix_swaprows @1496 + matrix_trans @1497 + matrix_transpose_mul @1498 + matrix_zeros @1499 + matrixc_add @1500 + matrixc_aug @1501 + matrixc_cgsolve @1502 + matrixc_chol @1503 + matrixc_det @1504 + matrixc_det2x2 @1505 + matrixc_div @1506 + matrixc_eye @1507 + matrixc_gjelim @1508 + matrixc_gramschmidt @1509 + matrixc_hermitian @1510 + matrixc_hermitian_mul @1511 + matrixc_inv @1512 + matrixc_linsolve @1513 + matrixc_ludecomp_crout @1514 + matrixc_ludecomp_doolittle @1515 + matrixc_mul @1516 + matrixc_mul_hermitian @1517 + matrixc_mul_transpose @1518 + matrixc_ones @1519 + matrixc_pdiv @1520 + matrixc_pivot @1521 + matrixc_pmul @1522 + matrixc_print @1523 + matrixc_proj @1524 + matrixc_qrdecomp_gramschmidt @1525 + matrixc_sub @1526 + matrixc_swaprows @1527 + matrixc_trans @1528 + matrixc_transpose_mul @1529 + matrixc_zeros @1530 + matrixcf_add @1531 + matrixcf_aug @1532 + matrixcf_cgsolve @1533 + matrixcf_chol @1534 + matrixcf_det @1535 + matrixcf_det2x2 @1536 + matrixcf_div @1537 + matrixcf_eye @1538 + matrixcf_gjelim @1539 + matrixcf_gramschmidt @1540 + matrixcf_hermitian @1541 + matrixcf_hermitian_mul @1542 + matrixcf_inv @1543 + matrixcf_linsolve @1544 + matrixcf_ludecomp_crout @1545 + matrixcf_ludecomp_doolittle @1546 + matrixcf_mul @1547 + matrixcf_mul_hermitian @1548 + matrixcf_mul_transpose @1549 + matrixcf_ones @1550 + matrixcf_pdiv @1551 + matrixcf_pivot @1552 + matrixcf_pmul @1553 + matrixcf_print @1554 + matrixcf_proj @1555 + matrixcf_qrdecomp_gramschmidt @1556 + matrixcf_sub @1557 + matrixcf_swaprows @1558 + matrixcf_trans @1559 + matrixcf_transpose_mul @1560 + matrixcf_zeros @1561 + matrixf_add @1562 + matrixf_aug @1563 + matrixf_cgsolve @1564 + matrixf_chol @1565 + matrixf_det @1566 + matrixf_det2x2 @1567 + matrixf_div @1568 + matrixf_eye @1569 + matrixf_gjelim @1570 + matrixf_gramschmidt @1571 + matrixf_hermitian @1572 + matrixf_hermitian_mul @1573 + matrixf_inv @1574 + matrixf_linsolve @1575 + matrixf_ludecomp_crout @1576 + matrixf_ludecomp_doolittle @1577 + matrixf_mul @1578 + matrixf_mul_hermitian @1579 + matrixf_mul_transpose @1580 + matrixf_ones @1581 + matrixf_pdiv @1582 + matrixf_pivot @1583 + matrixf_pmul @1584 + matrixf_print @1585 + matrixf_proj @1586 + matrixf_qrdecomp_gramschmidt @1587 + matrixf_sub @1588 + matrixf_swaprows @1589 + matrixf_trans @1590 + matrixf_transpose_mul @1591 + matrixf_zeros @1592 + modem_arb128opt @1593 DATA + modem_arb16opt @1594 DATA + modem_arb256opt @1595 DATA + modem_arb32opt @1596 DATA + modem_arb64opt @1597 DATA + modem_arb_V29 @1598 DATA + modem_arb_balance_iq @1599 + modem_arb_init @1600 + modem_arb_init_file @1601 + modem_arb_scale @1602 + modem_arb_sqam128 @1603 DATA + modem_arb_sqam32 @1604 DATA + modem_arb_vt64 @1605 DATA + modem_create @1606 + modem_create_V29 @1607 + modem_create_apsk @1608 + modem_create_arb @1609 + modem_create_arb128opt @1610 + modem_create_arb16opt @1611 + modem_create_arb256opt @1612 + modem_create_arb32opt @1613 + modem_create_arb64opt @1614 + modem_create_arb64vt @1615 + modem_create_arbitrary @1616 + modem_create_ask @1617 + modem_create_bpsk @1618 + modem_create_dpsk @1619 + modem_create_ook @1620 + modem_create_psk @1621 + modem_create_qam @1622 + modem_create_qpsk @1623 + modem_create_sqam128 @1624 + modem_create_sqam32 @1625 + modem_demodsoft_gentab @1626 + modem_demodulate @1627 + modem_demodulate_apsk @1628 + modem_demodulate_arb @1629 + modem_demodulate_ask @1630 + modem_demodulate_bpsk @1631 + modem_demodulate_dpsk @1632 + modem_demodulate_linear_array @1633 + modem_demodulate_linear_array_ref @1634 + modem_demodulate_ook @1635 + modem_demodulate_psk @1636 + modem_demodulate_qam @1637 + modem_demodulate_qpsk @1638 + modem_demodulate_soft @1639 + modem_demodulate_soft_arb @1640 + modem_demodulate_soft_bpsk @1641 + modem_demodulate_soft_qpsk @1642 + modem_demodulate_soft_table @1643 + modem_demodulate_sqam128 @1644 + modem_demodulate_sqam32 @1645 + modem_destroy @1646 + modem_gen_rand_sym @1647 + modem_get_bps @1648 + modem_get_demodulator_evm @1649 + modem_get_demodulator_phase_error @1650 + modem_get_demodulator_sample @1651 + modem_get_scheme @1652 + modem_init @1653 + modem_init_map @1654 + modem_modulate @1655 + modem_modulate_apsk @1656 + modem_modulate_arb @1657 + modem_modulate_ask @1658 + modem_modulate_bpsk @1659 + modem_modulate_dpsk @1660 + modem_modulate_map @1661 + modem_modulate_ook @1662 + modem_modulate_psk @1663 + modem_modulate_qam @1664 + modem_modulate_qpsk @1665 + modem_modulate_sqam128 @1666 + modem_modulate_sqam32 @1667 + modem_print @1668 + modem_recreate @1669 + modem_reset @1670 + modulation_types @1671 DATA + msequence_advance @1672 + msequence_create @1673 + msequence_create_default @1674 + msequence_create_genpoly @1675 + msequence_default @1676 DATA + msequence_destroy @1677 + msequence_generate_symbol @1678 + msequence_get_length @1679 + msequence_get_state @1680 + msequence_print @1681 + msequence_reset @1682 + msequence_set_state @1683 + msourcecf_add_chirp @1684 + msourcecf_add_fsk @1685 + msourcecf_add_gmsk @1686 + msourcecf_add_modem @1687 + msourcecf_add_noise @1688 + msourcecf_add_source @1689 + msourcecf_add_tone @1690 + msourcecf_add_user @1691 + msourcecf_create @1692 + msourcecf_create_default @1693 + msourcecf_destroy @1694 + msourcecf_disable @1695 + msourcecf_enable @1696 + msourcecf_find @1697 + msourcecf_generate @1698 + msourcecf_get_frequency @1699 + msourcecf_get_gain @1700 + msourcecf_get_num_samples @1701 + msourcecf_get_source @1702 + msourcecf_print @1703 + msourcecf_remove @1704 + msourcecf_reset @1705 + msourcecf_set_frequency @1706 + msourcecf_set_gain @1707 + msourcecf_write_samples @1708 + msresamp2_cccf_create @1709 + msresamp2_cccf_decim_execute @1710 + msresamp2_cccf_destroy @1711 + msresamp2_cccf_execute @1712 + msresamp2_cccf_get_delay @1713 + msresamp2_cccf_get_num_stages @1714 + msresamp2_cccf_get_rate @1715 + msresamp2_cccf_get_type @1716 + msresamp2_cccf_interp_execute @1717 + msresamp2_cccf_print @1718 + msresamp2_cccf_reset @1719 + msresamp2_crcf_create @1720 + msresamp2_crcf_decim_execute @1721 + msresamp2_crcf_destroy @1722 + msresamp2_crcf_execute @1723 + msresamp2_crcf_get_delay @1724 + msresamp2_crcf_get_num_stages @1725 + msresamp2_crcf_get_rate @1726 + msresamp2_crcf_get_type @1727 + msresamp2_crcf_interp_execute @1728 + msresamp2_crcf_print @1729 + msresamp2_crcf_reset @1730 + msresamp2_rrrf_create @1731 + msresamp2_rrrf_decim_execute @1732 + msresamp2_rrrf_destroy @1733 + msresamp2_rrrf_execute @1734 + msresamp2_rrrf_get_delay @1735 + msresamp2_rrrf_get_num_stages @1736 + msresamp2_rrrf_get_rate @1737 + msresamp2_rrrf_get_type @1738 + msresamp2_rrrf_interp_execute @1739 + msresamp2_rrrf_print @1740 + msresamp2_rrrf_reset @1741 + msresamp_cccf_create @1742 + msresamp_cccf_decim_execute @1743 + msresamp_cccf_destroy @1744 + msresamp_cccf_execute @1745 + msresamp_cccf_get_delay @1746 + msresamp_cccf_get_rate @1747 + msresamp_cccf_interp_execute @1748 + msresamp_cccf_print @1749 + msresamp_cccf_reset @1750 + msresamp_crcf_create @1751 + msresamp_crcf_decim_execute @1752 + msresamp_crcf_destroy @1753 + msresamp_crcf_execute @1754 + msresamp_crcf_get_delay @1755 + msresamp_crcf_get_rate @1756 + msresamp_crcf_interp_execute @1757 + msresamp_crcf_print @1758 + msresamp_crcf_reset @1759 + msresamp_rrrf_create @1760 + msresamp_rrrf_decim_execute @1761 + msresamp_rrrf_destroy @1762 + msresamp_rrrf_execute @1763 + msresamp_rrrf_get_delay @1764 + msresamp_rrrf_get_rate @1765 + msresamp_rrrf_interp_execute @1766 + msresamp_rrrf_print @1767 + msresamp_rrrf_reset @1768 + nco_crcf_adjust_frequency @1769 + nco_crcf_adjust_phase @1770 + nco_crcf_cexpf @1771 + nco_crcf_constrain @1772 + nco_crcf_cos @1773 + nco_crcf_create @1774 + nco_crcf_destroy @1775 + nco_crcf_get_frequency @1776 + nco_crcf_get_phase @1777 + nco_crcf_index @1778 + nco_crcf_mix_block_down @1779 + nco_crcf_mix_block_up @1780 + nco_crcf_mix_down @1781 + nco_crcf_mix_up @1782 + nco_crcf_pll_reset @1783 + nco_crcf_pll_set_bandwidth @1784 + nco_crcf_pll_step @1785 + nco_crcf_print @1786 + nco_crcf_reset @1787 + nco_crcf_set_frequency @1788 + nco_crcf_set_phase @1789 + nco_crcf_sin @1790 + nco_crcf_sincos @1791 + nco_crcf_step @1792 + ofdmflexframegen_assemble @1793 + ofdmflexframegen_create @1794 + ofdmflexframegen_destroy @1795 + ofdmflexframegen_encode_header @1796 + ofdmflexframegen_gen_S0a @1797 + ofdmflexframegen_gen_S0b @1798 + ofdmflexframegen_gen_S1 @1799 + ofdmflexframegen_gen_header @1800 + ofdmflexframegen_gen_payload @1801 + ofdmflexframegen_gen_symbol @1802 + ofdmflexframegen_gen_tail @1803 + ofdmflexframegen_gen_zeros @1804 + ofdmflexframegen_getframelen @1805 + ofdmflexframegen_getprops @1806 + ofdmflexframegen_is_assembled @1807 + ofdmflexframegen_modulate_header @1808 + ofdmflexframegen_print @1809 + ofdmflexframegen_reconfigure @1810 + ofdmflexframegen_reset @1811 + ofdmflexframegen_set_header_len @1812 + ofdmflexframegen_set_header_props @1813 + ofdmflexframegen_setprops @1814 + ofdmflexframegen_write @1815 + ofdmflexframegenprops_init_default @1816 + ofdmflexframesync_create @1817 + ofdmflexframesync_debug_disable @1818 + ofdmflexframesync_debug_enable @1819 + ofdmflexframesync_debug_print @1820 + ofdmflexframesync_decode_header @1821 + ofdmflexframesync_decode_header_soft @1822 + ofdmflexframesync_decode_payload_soft @1823 + ofdmflexframesync_destroy @1824 + ofdmflexframesync_execute @1825 + ofdmflexframesync_get_cfo @1826 + ofdmflexframesync_get_framedatastats @1827 + ofdmflexframesync_get_rssi @1828 + ofdmflexframesync_internal_callback @1829 + ofdmflexframesync_is_frame_open @1830 + ofdmflexframesync_print @1831 + ofdmflexframesync_reset @1832 + ofdmflexframesync_reset_framedatastats @1833 + ofdmflexframesync_rxheader @1834 + ofdmflexframesync_rxpayload @1835 + ofdmflexframesync_set_cfo @1836 + ofdmflexframesync_set_header_len @1837 + ofdmflexframesync_set_header_props @1838 + ofdmframe_init_S0 @1839 + ofdmframe_init_S1 @1840 + ofdmframe_init_default_sctype @1841 + ofdmframe_init_sctype_range @1842 + ofdmframe_print_sctype @1843 + ofdmframe_validate_sctype @1844 + ofdmframegen_create @1845 + ofdmframegen_destroy @1846 + ofdmframegen_gensymbol @1847 + ofdmframegen_print @1848 + ofdmframegen_reset @1849 + ofdmframegen_write_S0a @1850 + ofdmframegen_write_S0b @1851 + ofdmframegen_write_S1 @1852 + ofdmframegen_writesymbol @1853 + ofdmframegen_writetail @1854 + ofdmframesync_S0_metrics @1855 + ofdmframesync_create @1856 + ofdmframesync_debug_disable @1857 + ofdmframesync_debug_enable @1858 + ofdmframesync_debug_print @1859 + ofdmframesync_destroy @1860 + ofdmframesync_estimate_eqgain @1861 + ofdmframesync_estimate_eqgain_poly @1862 + ofdmframesync_estimate_gain_S0 @1863 + ofdmframesync_estimate_gain_S1 @1864 + ofdmframesync_execute @1865 + ofdmframesync_execute_S0a @1866 + ofdmframesync_execute_S0b @1867 + ofdmframesync_execute_S1 @1868 + ofdmframesync_execute_rxsymbols @1869 + ofdmframesync_execute_seekplcp @1870 + ofdmframesync_get_cfo @1871 + ofdmframesync_get_rssi @1872 + ofdmframesync_is_frame_open @1873 + ofdmframesync_print @1874 + ofdmframesync_reset @1875 + ofdmframesync_rxsymbol @1876 + ofdmframesync_set_cfo @1877 + optim_sort @1878 + optim_threshold_switch @1879 + ordfilt_rrrf_create @1880 + ordfilt_rrrf_create_medfilt @1881 + ordfilt_rrrf_destroy @1882 + ordfilt_rrrf_execute @1883 + ordfilt_rrrf_execute_block @1884 + ordfilt_rrrf_print @1885 + ordfilt_rrrf_push @1886 + ordfilt_rrrf_reset @1887 + ordfilt_rrrf_write @1888 + ordfilt_sort_compf @1889 + packetizer_compute_dec_msg_len @1890 + packetizer_compute_enc_msg_len @1891 + packetizer_create @1892 + packetizer_decode @1893 + packetizer_decode_soft @1894 + packetizer_destroy @1895 + packetizer_encode @1896 + packetizer_get_crc @1897 + packetizer_get_dec_msg_len @1898 + packetizer_get_enc_msg_len @1899 + packetizer_get_fec0 @1900 + packetizer_get_fec1 @1901 + packetizer_print @1902 + packetizer_realloc_buffers @1903 + packetizer_recreate @1904 + packetizer_set_scheme @1905 + poly_expandbinomial @1906 + poly_expandbinomial_pm @1907 + poly_expandroots @1908 + poly_expandroots2 @1909 + poly_findroots @1910 + poly_findroots_bairstow @1911 + poly_findroots_bairstow_persistent @1912 + poly_findroots_bairstow_recursion @1913 + poly_findroots_durandkerner @1914 + poly_fit @1915 + poly_fit_lagrange @1916 + poly_fit_lagrange_barycentric @1917 + poly_interp_lagrange @1918 + poly_mul @1919 + poly_sort_roots_compare @1920 + poly_val @1921 + poly_val_lagrange_barycentric @1922 + polyc_expandbinomial @1923 + polyc_expandbinomial_pm @1924 + polyc_expandroots @1925 + polyc_expandroots2 @1926 + polyc_findroots @1927 + polyc_findroots_bairstow @1928 + polyc_findroots_bairstow_persistent @1929 + polyc_findroots_bairstow_recursion @1930 + polyc_findroots_durandkerner @1931 + polyc_fit @1932 + polyc_fit_lagrange @1933 + polyc_fit_lagrange_barycentric @1934 + polyc_interp_lagrange @1935 + polyc_mul @1936 + polyc_sort_roots_compare @1937 + polyc_val @1938 + polyc_val_lagrange_barycentric @1939 + polycf_expandbinomial @1940 + polycf_expandbinomial_pm @1941 + polycf_expandroots @1942 + polycf_expandroots2 @1943 + polycf_findroots @1944 + polycf_findroots_bairstow @1945 + polycf_findroots_bairstow_persistent @1946 + polycf_findroots_bairstow_recursion @1947 + polycf_findroots_durandkerner @1948 + polycf_fit @1949 + polycf_fit_lagrange @1950 + polycf_fit_lagrange_barycentric @1951 + polycf_interp_lagrange @1952 + polycf_mul @1953 + polycf_sort_roots_compare @1954 + polycf_val @1955 + polycf_val_lagrange_barycentric @1956 + polyf_expandbinomial @1957 + polyf_expandbinomial_pm @1958 + polyf_expandroots @1959 + polyf_expandroots2 @1960 + polyf_findroots @1961 + polyf_findroots_bairstow @1962 + polyf_findroots_bairstow_persistent @1963 + polyf_findroots_bairstow_recursion @1964 + polyf_findroots_durandkerner @1965 + polyf_fit @1966 + polyf_fit_lagrange @1967 + polyf_fit_lagrange_barycentric @1968 + polyf_interp_lagrange @1969 + polyf_mul @1970 + polyf_sort_roots_compare @1971 + polyf_val @1972 + polyf_val_lagrange_barycentric @1973 + presync_cccf_correlate @1974 + presync_cccf_create @1975 + presync_cccf_destroy @1976 + presync_cccf_execute @1977 + presync_cccf_print @1978 + presync_cccf_push @1979 + presync_cccf_reset @1980 + qdetector_cccf_create @1981 + qdetector_cccf_create_cpfsk @1982 + qdetector_cccf_create_gmsk @1983 + qdetector_cccf_create_linear @1984 + qdetector_cccf_destroy @1985 + qdetector_cccf_execute @1986 + qdetector_cccf_execute_align @1987 + qdetector_cccf_execute_seek @1988 + qdetector_cccf_get_buf_len @1989 + qdetector_cccf_get_dphi @1990 + qdetector_cccf_get_gamma @1991 + qdetector_cccf_get_phi @1992 + qdetector_cccf_get_rxy @1993 + qdetector_cccf_get_seq_len @1994 + qdetector_cccf_get_sequence @1995 + qdetector_cccf_get_tau @1996 + qdetector_cccf_print @1997 + qdetector_cccf_reset @1998 + qdetector_cccf_set_range @1999 + qdetector_cccf_set_threshold @2000 + qnsearch_compute_Hessian @2001 + qnsearch_compute_gradient @2002 + qnsearch_create @2003 + qnsearch_destroy @2004 + qnsearch_normalize_gradient @2005 + qnsearch_print @2006 + qnsearch_reset @2007 + qnsearch_run @2008 + qnsearch_step @2009 + qpacketmodem_configure @2010 + qpacketmodem_create @2011 + qpacketmodem_decode @2012 + qpacketmodem_decode_bits @2013 + qpacketmodem_decode_soft @2014 + qpacketmodem_decode_soft_payload @2015 + qpacketmodem_decode_soft_sym @2016 + qpacketmodem_decode_syms @2017 + qpacketmodem_destroy @2018 + qpacketmodem_encode @2019 + qpacketmodem_encode_syms @2020 + qpacketmodem_get_crc @2021 + qpacketmodem_get_demodulator_evm @2022 + qpacketmodem_get_demodulator_phase_error @2023 + qpacketmodem_get_fec0 @2024 + qpacketmodem_get_fec1 @2025 + qpacketmodem_get_frame_len @2026 + qpacketmodem_get_modscheme @2027 + qpacketmodem_get_payload_len @2028 + qpacketmodem_print @2029 + qpacketmodem_reset @2030 + qpilot_frame_len @2031 + qpilot_num_pilots @2032 + qpilotgen_create @2033 + qpilotgen_destroy @2034 + qpilotgen_execute @2035 + qpilotgen_get_frame_len @2036 + qpilotgen_print @2037 + qpilotgen_recreate @2038 + qpilotgen_reset @2039 + qpilotsync_create @2040 + qpilotsync_destroy @2041 + qpilotsync_execute @2042 + qpilotsync_get_dphi @2043 + qpilotsync_get_evm @2044 + qpilotsync_get_frame_len @2045 + qpilotsync_get_gain @2046 + qpilotsync_get_phi @2047 + qpilotsync_print @2048 + qpilotsync_recreate @2049 + qpilotsync_reset @2050 + qsourcecf_create @2051 + qsourcecf_destroy @2052 + qsourcecf_disable @2053 + qsourcecf_enable @2054 + qsourcecf_generate @2055 + qsourcecf_generate_into @2056 + qsourcecf_get_frequency @2057 + qsourcecf_get_gain @2058 + qsourcecf_get_id @2059 + qsourcecf_get_num_samples @2060 + qsourcecf_init_chirp @2061 + qsourcecf_init_fsk @2062 + qsourcecf_init_gmsk @2063 + qsourcecf_init_modem @2064 + qsourcecf_init_noise @2065 + qsourcecf_init_tone @2066 + qsourcecf_init_user @2067 + qsourcecf_print @2068 + qsourcecf_reset @2069 + qsourcecf_set_frequency @2070 + qsourcecf_set_gain @2071 + qsourcecf_set_id @2072 + quantize_adc @2073 + quantize_dac @2074 + quantizercf_create @2075 + quantizercf_destroy @2076 + quantizercf_execute_adc @2077 + quantizercf_execute_dac @2078 + quantizercf_print @2079 + quantizerf_create @2080 + quantizerf_destroy @2081 + quantizerf_execute_adc @2082 + quantizerf_execute_dac @2083 + quantizerf_print @2084 + randexpf @2085 + randexpf_cdf @2086 + randexpf_pdf @2087 + randf @2088 + randf_cdf @2089 + randf_pdf @2090 + randgammaf @2091 + randgammaf_cdf @2092 + randgammaf_delta @2093 + randgammaf_pdf @2094 + randnakmf @2095 + randnakmf_cdf @2096 + randnakmf_pdf @2097 + randnf @2098 + randnf_cdf @2099 + randnf_pdf @2100 + randricekf @2101 + randricekf_cdf @2102 + randricekf_pdf @2103 + randuf @2104 + randuf_cdf @2105 + randuf_pdf @2106 + randweibf @2107 + randweibf_cdf @2108 + randweibf_pdf @2109 + resamp2_cccf_analyzer_execute @2110 + resamp2_cccf_create @2111 + resamp2_cccf_decim_execute @2112 + resamp2_cccf_destroy @2113 + resamp2_cccf_filter_execute @2114 + resamp2_cccf_get_delay @2115 + resamp2_cccf_interp_execute @2116 + resamp2_cccf_print @2117 + resamp2_cccf_recreate @2118 + resamp2_cccf_reset @2119 + resamp2_cccf_synthesizer_execute @2120 + resamp2_crcf_analyzer_execute @2121 + resamp2_crcf_create @2122 + resamp2_crcf_decim_execute @2123 + resamp2_crcf_destroy @2124 + resamp2_crcf_filter_execute @2125 + resamp2_crcf_get_delay @2126 + resamp2_crcf_interp_execute @2127 + resamp2_crcf_print @2128 + resamp2_crcf_recreate @2129 + resamp2_crcf_reset @2130 + resamp2_crcf_synthesizer_execute @2131 + resamp2_rrrf_analyzer_execute @2132 + resamp2_rrrf_create @2133 + resamp2_rrrf_decim_execute @2134 + resamp2_rrrf_destroy @2135 + resamp2_rrrf_filter_execute @2136 + resamp2_rrrf_get_delay @2137 + resamp2_rrrf_interp_execute @2138 + resamp2_rrrf_print @2139 + resamp2_rrrf_recreate @2140 + resamp2_rrrf_reset @2141 + resamp2_rrrf_synthesizer_execute @2142 + resamp_cccf_adjust_rate @2143 + resamp_cccf_adjust_timing_phase @2144 + resamp_cccf_create @2145 + resamp_cccf_create_default @2146 + resamp_cccf_destroy @2147 + resamp_cccf_execute @2148 + resamp_cccf_execute_block @2149 + resamp_cccf_get_delay @2150 + resamp_cccf_get_rate @2151 + resamp_cccf_print @2152 + resamp_cccf_reset @2153 + resamp_cccf_set_rate @2154 + resamp_cccf_set_timing_phase @2155 + resamp_crcf_adjust_rate @2156 + resamp_crcf_adjust_timing_phase @2157 + resamp_crcf_create @2158 + resamp_crcf_create_default @2159 + resamp_crcf_destroy @2160 + resamp_crcf_execute @2161 + resamp_crcf_execute_block @2162 + resamp_crcf_get_delay @2163 + resamp_crcf_get_rate @2164 + resamp_crcf_print @2165 + resamp_crcf_reset @2166 + resamp_crcf_set_rate @2167 + resamp_crcf_set_timing_phase @2168 + resamp_rrrf_adjust_rate @2169 + resamp_rrrf_adjust_timing_phase @2170 + resamp_rrrf_create @2171 + resamp_rrrf_create_default @2172 + resamp_rrrf_destroy @2173 + resamp_rrrf_execute @2174 + resamp_rrrf_execute_block @2175 + resamp_rrrf_get_delay @2176 + resamp_rrrf_get_rate @2177 + resamp_rrrf_print @2178 + resamp_rrrf_reset @2179 + resamp_rrrf_set_rate @2180 + resamp_rrrf_set_timing_phase @2181 + rkaiser_approximate_rho @2182 + rresamp_cccf_create @2183 + rresamp_cccf_create_default @2184 + rresamp_cccf_create_kaiser @2185 + rresamp_cccf_create_prototype @2186 + rresamp_cccf_destroy @2187 + rresamp_cccf_execute @2188 + rresamp_cccf_execute_primitive @2189 + rresamp_cccf_get_P @2190 + rresamp_cccf_get_Q @2191 + rresamp_cccf_get_block_len @2192 + rresamp_cccf_get_decim @2193 + rresamp_cccf_get_delay @2194 + rresamp_cccf_get_interp @2195 + rresamp_cccf_get_rate @2196 + rresamp_cccf_get_scale @2197 + rresamp_cccf_print @2198 + rresamp_cccf_reset @2199 + rresamp_cccf_set_scale @2200 + rresamp_crcf_create @2201 + rresamp_crcf_create_default @2202 + rresamp_crcf_create_kaiser @2203 + rresamp_crcf_create_prototype @2204 + rresamp_crcf_destroy @2205 + rresamp_crcf_execute @2206 + rresamp_crcf_execute_primitive @2207 + rresamp_crcf_get_P @2208 + rresamp_crcf_get_Q @2209 + rresamp_crcf_get_block_len @2210 + rresamp_crcf_get_decim @2211 + rresamp_crcf_get_delay @2212 + rresamp_crcf_get_interp @2213 + rresamp_crcf_get_rate @2214 + rresamp_crcf_get_scale @2215 + rresamp_crcf_print @2216 + rresamp_crcf_reset @2217 + rresamp_crcf_set_scale @2218 + rresamp_rrrf_create @2219 + rresamp_rrrf_create_default @2220 + rresamp_rrrf_create_kaiser @2221 + rresamp_rrrf_create_prototype @2222 + rresamp_rrrf_destroy @2223 + rresamp_rrrf_execute @2224 + rresamp_rrrf_execute_primitive @2225 + rresamp_rrrf_get_P @2226 + rresamp_rrrf_get_Q @2227 + rresamp_rrrf_get_block_len @2228 + rresamp_rrrf_get_decim @2229 + rresamp_rrrf_get_delay @2230 + rresamp_rrrf_get_interp @2231 + rresamp_rrrf_get_rate @2232 + rresamp_rrrf_get_scale @2233 + rresamp_rrrf_print @2234 + rresamp_rrrf_reset @2235 + rresamp_rrrf_set_scale @2236 + scramble_data @2237 + secded2216_P @2238 DATA + secded2216_syndrome_w1 @2239 DATA + secded3932_P @2240 DATA + secded3932_syndrome_w1 @2241 DATA + secded7264_P @2242 DATA + secded7264_syndrome_w1 @2243 DATA + sincf @2244 + smatrix_indexsearch @2245 + smatrixb_clear @2246 + smatrixb_create @2247 + smatrixb_create_array @2248 + smatrixb_delete @2249 + smatrixb_destroy @2250 + smatrixb_eye @2251 + smatrixb_get @2252 + smatrixb_insert @2253 + smatrixb_isset @2254 + smatrixb_mul @2255 + smatrixb_mulf @2256 + smatrixb_print @2257 + smatrixb_print_expanded @2258 + smatrixb_reset @2259 + smatrixb_reset_max_mlist @2260 + smatrixb_reset_max_nlist @2261 + smatrixb_set @2262 + smatrixb_size @2263 + smatrixb_vmul @2264 + smatrixb_vmulf @2265 + smatrixf_clear @2266 + smatrixf_create @2267 + smatrixf_create_array @2268 + smatrixf_delete @2269 + smatrixf_destroy @2270 + smatrixf_eye @2271 + smatrixf_get @2272 + smatrixf_insert @2273 + smatrixf_isset @2274 + smatrixf_mul @2275 + smatrixf_print @2276 + smatrixf_print_expanded @2277 + smatrixf_reset @2278 + smatrixf_reset_max_mlist @2279 + smatrixf_reset_max_nlist @2280 + smatrixf_set @2281 + smatrixf_size @2282 + smatrixf_vmul @2283 + smatrixi_clear @2284 + smatrixi_create @2285 + smatrixi_create_array @2286 + smatrixi_delete @2287 + smatrixi_destroy @2288 + smatrixi_eye @2289 + smatrixi_get @2290 + smatrixi_insert @2291 + smatrixi_isset @2292 + smatrixi_mul @2293 + smatrixi_print @2294 + smatrixi_print_expanded @2295 + smatrixi_reset @2296 + smatrixi_reset_max_mlist @2297 + smatrixi_reset_max_nlist @2298 + smatrixi_set @2299 + smatrixi_size @2300 + smatrixi_vmul @2301 + spgramcf_clear @2302 + spgramcf_create @2303 + spgramcf_create_default @2304 + spgramcf_destroy @2305 + spgramcf_estimate_psd @2306 + spgramcf_export_gnuplot @2307 + spgramcf_get_alpha @2308 + spgramcf_get_delay @2309 + spgramcf_get_nfft @2310 + spgramcf_get_num_samples @2311 + spgramcf_get_num_samples_total @2312 + spgramcf_get_num_transforms @2313 + spgramcf_get_num_transforms_total @2314 + spgramcf_get_psd @2315 + spgramcf_get_psd_mag @2316 + spgramcf_get_window_len @2317 + spgramcf_print @2318 + spgramcf_push @2319 + spgramcf_reset @2320 + spgramcf_set_alpha @2321 + spgramcf_set_freq @2322 + spgramcf_set_rate @2323 + spgramcf_step @2324 + spgramcf_write @2325 + spgramf_clear @2326 + spgramf_create @2327 + spgramf_create_default @2328 + spgramf_destroy @2329 + spgramf_estimate_psd @2330 + spgramf_export_gnuplot @2331 + spgramf_get_alpha @2332 + spgramf_get_delay @2333 + spgramf_get_nfft @2334 + spgramf_get_num_samples @2335 + spgramf_get_num_samples_total @2336 + spgramf_get_num_transforms @2337 + spgramf_get_num_transforms_total @2338 + spgramf_get_psd @2339 + spgramf_get_psd_mag @2340 + spgramf_get_window_len @2341 + spgramf_print @2342 + spgramf_push @2343 + spgramf_reset @2344 + spgramf_set_alpha @2345 + spgramf_set_freq @2346 + spgramf_set_rate @2347 + spgramf_step @2348 + spgramf_write @2349 + spwaterfallcf_clear @2350 + spwaterfallcf_consolidate_buffer @2351 + spwaterfallcf_create @2352 + spwaterfallcf_create_default @2353 + spwaterfallcf_destroy @2354 + spwaterfallcf_export @2355 + spwaterfallcf_export_bin @2356 + spwaterfallcf_export_gnu @2357 + spwaterfallcf_get_num_freq @2358 + spwaterfallcf_get_num_samples_total @2359 + spwaterfallcf_get_num_time @2360 + spwaterfallcf_get_psd @2361 + spwaterfallcf_print @2362 + spwaterfallcf_push @2363 + spwaterfallcf_reset @2364 + spwaterfallcf_set_commands @2365 + spwaterfallcf_set_dims @2366 + spwaterfallcf_set_freq @2367 + spwaterfallcf_set_rate @2368 + spwaterfallcf_step @2369 + spwaterfallcf_write @2370 + spwaterfallf_clear @2371 + spwaterfallf_consolidate_buffer @2372 + spwaterfallf_create @2373 + spwaterfallf_create_default @2374 + spwaterfallf_destroy @2375 + spwaterfallf_export @2376 + spwaterfallf_export_bin @2377 + spwaterfallf_export_gnu @2378 + spwaterfallf_get_num_freq @2379 + spwaterfallf_get_num_samples_total @2380 + spwaterfallf_get_num_time @2381 + spwaterfallf_get_psd @2382 + spwaterfallf_print @2383 + spwaterfallf_push @2384 + spwaterfallf_reset @2385 + spwaterfallf_set_commands @2386 + spwaterfallf_set_dims @2387 + spwaterfallf_set_freq @2388 + spwaterfallf_set_rate @2389 + spwaterfallf_step @2390 + spwaterfallf_write @2391 + sumproduct_phi @2392 + symstreamcf_create @2393 + symstreamcf_create_linear @2394 + symstreamcf_destroy @2395 + symstreamcf_fill_buffer @2396 + symstreamcf_get_gain @2397 + symstreamcf_get_scheme @2398 + symstreamcf_print @2399 + symstreamcf_reset @2400 + symstreamcf_set_gain @2401 + symstreamcf_set_scheme @2402 + symstreamcf_write_samples @2403 + symsync_crcf_advance_internal_loop @2404 + symsync_crcf_create @2405 + symsync_crcf_create_kaiser @2406 + symsync_crcf_create_rnyquist @2407 + symsync_crcf_destroy @2408 + symsync_crcf_execute @2409 + symsync_crcf_get_tau @2410 + symsync_crcf_lock @2411 + symsync_crcf_output_debug_file @2412 + symsync_crcf_print @2413 + symsync_crcf_reset @2414 + symsync_crcf_set_lf_bw @2415 + symsync_crcf_set_output_rate @2416 + symsync_crcf_step @2417 + symsync_crcf_unlock @2418 + symsync_rrrf_advance_internal_loop @2419 + symsync_rrrf_create @2420 + symsync_rrrf_create_kaiser @2421 + symsync_rrrf_create_rnyquist @2422 + symsync_rrrf_destroy @2423 + symsync_rrrf_execute @2424 + symsync_rrrf_get_tau @2425 + symsync_rrrf_lock @2426 + symsync_rrrf_output_debug_file @2427 + symsync_rrrf_print @2428 + symsync_rrrf_reset @2429 + symsync_rrrf_set_lf_bw @2430 + symsync_rrrf_set_output_rate @2431 + symsync_rrrf_step @2432 + symsync_rrrf_unlock @2433 + symtrack_cccf_adjust_phase @2434 + symtrack_cccf_create @2435 + symtrack_cccf_create_default @2436 + symtrack_cccf_destroy @2437 + symtrack_cccf_execute @2438 + symtrack_cccf_execute_block @2439 + symtrack_cccf_print @2440 + symtrack_cccf_reset @2441 + symtrack_cccf_set_bandwidth @2442 + symtrack_cccf_set_eq_cm @2443 + symtrack_cccf_set_eq_dd @2444 + symtrack_cccf_set_eq_off @2445 + symtrack_cccf_set_modscheme @2446 + synth_crcf_adjust_frequency @2447 + synth_crcf_adjust_phase @2448 + synth_crcf_compute_synth @2449 + synth_crcf_constrain_frequency @2450 + synth_crcf_constrain_phase @2451 + synth_crcf_create @2452 + synth_crcf_despread @2453 + synth_crcf_despread_triple @2454 + synth_crcf_destroy @2455 + synth_crcf_get_current @2456 + synth_crcf_get_frequency @2457 + synth_crcf_get_half_next @2458 + synth_crcf_get_half_previous @2459 + synth_crcf_get_length @2460 + synth_crcf_get_phase @2461 + synth_crcf_mix_block_down @2462 + synth_crcf_mix_block_up @2463 + synth_crcf_mix_down @2464 + synth_crcf_mix_up @2465 + synth_crcf_pll_reset @2466 + synth_crcf_pll_set_bandwidth @2467 + synth_crcf_pll_step @2468 + synth_crcf_reset @2469 + synth_crcf_set_frequency @2470 + synth_crcf_set_phase @2471 + synth_crcf_spread @2472 + synth_crcf_step @2473 + tvmpch_cccf_create @2474 + tvmpch_cccf_destroy @2475 + tvmpch_cccf_execute @2476 + tvmpch_cccf_execute_block @2477 + tvmpch_cccf_print @2478 + tvmpch_cccf_push @2479 + tvmpch_cccf_reset @2480 + unscramble_data @2481 + unscramble_data_soft @2482 + wdelaycf_create @2483 + wdelaycf_destroy @2484 + wdelaycf_print @2485 + wdelaycf_push @2486 + wdelaycf_read @2487 + wdelaycf_recreate @2488 + wdelaycf_reset @2489 + wdelayf_create @2490 + wdelayf_destroy @2491 + wdelayf_print @2492 + wdelayf_push @2493 + wdelayf_read @2494 + wdelayf_recreate @2495 + wdelayf_reset @2496 + windowcf_create @2497 + windowcf_debug_print @2498 + windowcf_destroy @2499 + windowcf_index @2500 + windowcf_print @2501 + windowcf_push @2502 + windowcf_read @2503 + windowcf_recreate @2504 + windowcf_reset @2505 + windowcf_write @2506 + windowf_create @2507 + windowf_debug_print @2508 + windowf_destroy @2509 + windowf_index @2510 + windowf_print @2511 + windowf_push @2512 + windowf_read @2513 + windowf_recreate @2514 + windowf_reset @2515 + windowf_write @2516 diff --git a/external/liquid-dsp/msvc/32/libliquid.dll b/external/liquid-dsp/msvc/32/libliquid.dll index 0093ec9..a971845 100644 Binary files a/external/liquid-dsp/msvc/32/libliquid.dll and b/external/liquid-dsp/msvc/32/libliquid.dll differ diff --git a/external/liquid-dsp/msvc/32/libliquid.lib b/external/liquid-dsp/msvc/32/libliquid.lib index 67a5093..fc75619 100644 Binary files a/external/liquid-dsp/msvc/32/libliquid.lib and b/external/liquid-dsp/msvc/32/libliquid.lib differ diff --git a/external/liquid-dsp/msvc/64/libliquid.def b/external/liquid-dsp/msvc/64/libliquid.def index 78453e3..c0355d4 100644 --- a/external/liquid-dsp/msvc/64/libliquid.def +++ b/external/liquid-dsp/msvc/64/libliquid.def @@ -1073,1435 +1073,1445 @@ EXPORTS gmskframegen_print @1072 gmskframegen_reset @1073 gmskframegen_set_header_len @1074 - gmskframegen_write_header @1075 - gmskframegen_write_payload @1076 - gmskframegen_write_preamble @1077 - gmskframegen_write_samples @1078 - gmskframegen_write_tail @1079 - gmskframesync_create @1080 - gmskframesync_debug_disable @1081 - gmskframesync_debug_enable @1082 - gmskframesync_debug_print @1083 - gmskframesync_decode_header @1084 - gmskframesync_destroy @1085 - gmskframesync_execute @1086 - gmskframesync_execute_detectframe @1087 - gmskframesync_execute_rxheader @1088 - gmskframesync_execute_rxpayload @1089 - gmskframesync_execute_rxpreamble @1090 - gmskframesync_execute_sample @1091 - gmskframesync_is_frame_open @1092 - gmskframesync_print @1093 - gmskframesync_pushpn @1094 - gmskframesync_reset @1095 - gmskframesync_set_header_len @1096 - gmskframesync_syncpn @1097 - gmskframesync_update_fi @1098 - gmskframesync_update_symsync @1099 - gmskmod_create @1100 - gmskmod_destroy @1101 - gmskmod_modulate @1102 - gmskmod_print @1103 - gmskmod_reset @1104 - golay2412_Gt @1105 DATA - golay2412_H @1106 DATA - golay2412_P @1107 DATA - golay2412_matrix_mul @1108 - golay2412_parity_search @1109 - gradsearch_create @1110 - gradsearch_destroy @1111 - gradsearch_execute @1112 - gradsearch_gradient @1113 - gradsearch_linesearch @1114 - gradsearch_norm @1115 - gradsearch_print @1116 - gradsearch_step @1117 - gray_decode @1118 - gray_encode @1119 - hamming128_enc_gentab @1120 DATA - hamming74_dec_gentab @1121 DATA - hamming74_enc_gentab @1122 DATA - hamming84_dec_gentab @1123 DATA - hamming84_enc_gentab @1124 DATA - icrandnf @1125 - iir_group_delay @1126 - iirdecim_cccf_create @1127 - iirdecim_cccf_create_default @1128 - iirdecim_cccf_create_prototype @1129 - iirdecim_cccf_destroy @1130 - iirdecim_cccf_execute @1131 - iirdecim_cccf_execute_block @1132 - iirdecim_cccf_groupdelay @1133 - iirdecim_cccf_print @1134 - iirdecim_cccf_reset @1135 - iirdecim_crcf_create @1136 - iirdecim_crcf_create_default @1137 - iirdecim_crcf_create_prototype @1138 - iirdecim_crcf_destroy @1139 - iirdecim_crcf_execute @1140 - iirdecim_crcf_execute_block @1141 - iirdecim_crcf_groupdelay @1142 - iirdecim_crcf_print @1143 - iirdecim_crcf_reset @1144 - iirdecim_rrrf_create @1145 - iirdecim_rrrf_create_default @1146 - iirdecim_rrrf_create_prototype @1147 - iirdecim_rrrf_destroy @1148 - iirdecim_rrrf_execute @1149 - iirdecim_rrrf_execute_block @1150 - iirdecim_rrrf_groupdelay @1151 - iirdecim_rrrf_print @1152 - iirdecim_rrrf_reset @1153 - iirdes_dzpk2sosf @1154 - iirdes_dzpk2tff @1155 - iirdes_dzpk_lp2bp @1156 - iirdes_dzpk_lp2hp @1157 - iirdes_freqprewarp @1158 - iirdes_isstable @1159 - iirdes_pll_active_PI @1160 - iirdes_pll_active_lag @1161 - iirfilt_cccf_create @1162 - iirfilt_cccf_create_dc_blocker @1163 - iirfilt_cccf_create_differentiator @1164 - iirfilt_cccf_create_integrator @1165 - iirfilt_cccf_create_lowpass @1166 - iirfilt_cccf_create_pll @1167 - iirfilt_cccf_create_prototype @1168 - iirfilt_cccf_create_sos @1169 - iirfilt_cccf_destroy @1170 - iirfilt_cccf_execute @1171 - iirfilt_cccf_execute_block @1172 - iirfilt_cccf_execute_norm @1173 - iirfilt_cccf_execute_sos @1174 - iirfilt_cccf_freqresponse @1175 - iirfilt_cccf_get_length @1176 - iirfilt_cccf_groupdelay @1177 - iirfilt_cccf_init @1178 - iirfilt_cccf_print @1179 - iirfilt_cccf_reset @1180 - iirfilt_crcf_create @1181 - iirfilt_crcf_create_dc_blocker @1182 - iirfilt_crcf_create_differentiator @1183 - iirfilt_crcf_create_integrator @1184 - iirfilt_crcf_create_lowpass @1185 - iirfilt_crcf_create_pll @1186 - iirfilt_crcf_create_prototype @1187 - iirfilt_crcf_create_sos @1188 - iirfilt_crcf_destroy @1189 - iirfilt_crcf_execute @1190 - iirfilt_crcf_execute_block @1191 - iirfilt_crcf_execute_norm @1192 - iirfilt_crcf_execute_sos @1193 - iirfilt_crcf_freqresponse @1194 - iirfilt_crcf_get_length @1195 - iirfilt_crcf_groupdelay @1196 - iirfilt_crcf_init @1197 - iirfilt_crcf_print @1198 - iirfilt_crcf_reset @1199 - iirfilt_rrrf_create @1200 - iirfilt_rrrf_create_dc_blocker @1201 - iirfilt_rrrf_create_differentiator @1202 - iirfilt_rrrf_create_integrator @1203 - iirfilt_rrrf_create_lowpass @1204 - iirfilt_rrrf_create_pll @1205 - iirfilt_rrrf_create_prototype @1206 - iirfilt_rrrf_create_sos @1207 - iirfilt_rrrf_destroy @1208 - iirfilt_rrrf_execute @1209 - iirfilt_rrrf_execute_block @1210 - iirfilt_rrrf_execute_norm @1211 - iirfilt_rrrf_execute_sos @1212 - iirfilt_rrrf_freqresponse @1213 - iirfilt_rrrf_get_length @1214 - iirfilt_rrrf_groupdelay @1215 - iirfilt_rrrf_init @1216 - iirfilt_rrrf_print @1217 - iirfilt_rrrf_reset @1218 - iirfiltsos_cccf_create @1219 - iirfiltsos_cccf_destroy @1220 - iirfiltsos_cccf_execute @1221 - iirfiltsos_cccf_execute_df1 @1222 - iirfiltsos_cccf_execute_df2 @1223 - iirfiltsos_cccf_groupdelay @1224 - iirfiltsos_cccf_print @1225 - iirfiltsos_cccf_reset @1226 - iirfiltsos_cccf_set_coefficients @1227 - iirfiltsos_crcf_create @1228 - iirfiltsos_crcf_destroy @1229 - iirfiltsos_crcf_execute @1230 - iirfiltsos_crcf_execute_df1 @1231 - iirfiltsos_crcf_execute_df2 @1232 - iirfiltsos_crcf_groupdelay @1233 - iirfiltsos_crcf_print @1234 - iirfiltsos_crcf_reset @1235 - iirfiltsos_crcf_set_coefficients @1236 - iirfiltsos_rrrf_create @1237 - iirfiltsos_rrrf_destroy @1238 - iirfiltsos_rrrf_execute @1239 - iirfiltsos_rrrf_execute_df1 @1240 - iirfiltsos_rrrf_execute_df2 @1241 - iirfiltsos_rrrf_groupdelay @1242 - iirfiltsos_rrrf_print @1243 - iirfiltsos_rrrf_reset @1244 - iirfiltsos_rrrf_set_coefficients @1245 - iirhilbf_c2r_execute @1246 - iirhilbf_create @1247 - iirhilbf_create_default @1248 - iirhilbf_decim_execute @1249 - iirhilbf_decim_execute_block @1250 - iirhilbf_destroy @1251 - iirhilbf_interp_execute @1252 - iirhilbf_interp_execute_block @1253 - iirhilbf_print @1254 - iirhilbf_r2c_execute @1255 - iirhilbf_reset @1256 - iirinterp_cccf_create @1257 - iirinterp_cccf_create_default @1258 - iirinterp_cccf_create_prototype @1259 - iirinterp_cccf_destroy @1260 - iirinterp_cccf_execute @1261 - iirinterp_cccf_execute_block @1262 - iirinterp_cccf_groupdelay @1263 - iirinterp_cccf_print @1264 - iirinterp_cccf_reset @1265 - iirinterp_crcf_create @1266 - iirinterp_crcf_create_default @1267 - iirinterp_crcf_create_prototype @1268 - iirinterp_crcf_destroy @1269 - iirinterp_crcf_execute @1270 - iirinterp_crcf_execute_block @1271 - iirinterp_crcf_groupdelay @1272 - iirinterp_crcf_print @1273 - iirinterp_crcf_reset @1274 - iirinterp_rrrf_create @1275 - iirinterp_rrrf_create_default @1276 - iirinterp_rrrf_create_prototype @1277 - iirinterp_rrrf_destroy @1278 - iirinterp_rrrf_execute @1279 - iirinterp_rrrf_execute_block @1280 - iirinterp_rrrf_groupdelay @1281 - iirinterp_rrrf_print @1282 - iirinterp_rrrf_reset @1283 - interleaver_create @1284 - interleaver_decode @1285 - interleaver_decode_soft @1286 - interleaver_destroy @1287 - interleaver_encode @1288 - interleaver_encode_soft @1289 - interleaver_permute @1290 - interleaver_permute_mask @1291 - interleaver_permute_mask_soft @1292 - interleaver_permute_soft @1293 - interleaver_print @1294 - interleaver_set_depth @1295 - kaiser_beta_As @1296 - landenf @1297 - liquid_MarcumQ1f @1298 - liquid_MarcumQf @1299 - liquid_Qf @1300 - liquid_apsk128 @1301 DATA - liquid_apsk16 @1302 DATA - liquid_apsk256 @1303 DATA - liquid_apsk32 @1304 DATA - liquid_apsk4 @1305 DATA - liquid_apsk64 @1306 DATA - liquid_apsk8 @1307 DATA - liquid_asechf @1308 - liquid_bdotprod @1309 - liquid_besseli0f @1310 - liquid_besselif @1311 - liquid_besselj0f @1312 - liquid_besseljf @1313 - liquid_blackmanharris @1314 - liquid_blackmanharris7 @1315 - liquid_c_leading_zeros @1316 DATA - liquid_c_ones @1317 DATA - liquid_c_ones_mod2 @1318 DATA - liquid_cacosf @1319 - liquid_cargf_approx @1320 - liquid_casinf @1321 - liquid_catanf @1322 - liquid_cexpf @1323 - liquid_clogf @1324 - liquid_cosf @1325 - liquid_count_leading_zeros @1326 - liquid_count_ones @1327 - liquid_count_ones_mod2 @1328 - liquid_cplxpair @1329 - liquid_cplxpair_cleanup @1330 - liquid_csqrtf @1331 - liquid_expf @1332 - liquid_factor @1333 - liquid_factorialf @1334 - liquid_fft_estimate_method @1335 - liquid_filter_autocorr @1336 - liquid_filter_crosscorr @1337 - liquid_filter_energy @1338 - liquid_filter_isi @1339 - liquid_firdes_arkaiser @1340 - liquid_firdes_doppler @1341 - liquid_firdes_farcsech @1342 - liquid_firdes_farcsech_freqresponse @1343 - liquid_firdes_fexp @1344 - liquid_firdes_fexp_freqresponse @1345 - liquid_firdes_fnyquist @1346 - liquid_firdes_fsech @1347 - liquid_firdes_fsech_freqresponse @1348 - liquid_firdes_gmskrx @1349 - liquid_firdes_gmsktx @1350 - liquid_firdes_hM3 @1351 - liquid_firdes_kaiser @1352 - liquid_firdes_notch @1353 - liquid_firdes_prototype @1354 - liquid_firdes_rcos @1355 - liquid_firdes_rfarcsech @1356 - liquid_firdes_rfexp @1357 - liquid_firdes_rfsech @1358 - liquid_firdes_rkaiser @1359 - liquid_firdes_rkaiser_bisection @1360 - liquid_firdes_rkaiser_internal_isi @1361 - liquid_firdes_rkaiser_quadratic @1362 - liquid_firdes_rrcos @1363 - liquid_firfilt_type_str @1364 DATA - liquid_flattop @1365 - liquid_gammaf @1366 - liquid_gcd @1367 - liquid_get_scale @1368 - liquid_getopt_str2crc @1369 - liquid_getopt_str2fec @1370 - liquid_getopt_str2firfilt @1371 - liquid_getopt_str2mod @1372 - liquid_getopt_str2window @1373 - liquid_hamming @1374 - liquid_hann @1375 - liquid_iirdes @1376 - liquid_invgauss @1377 - liquid_is_prime @1378 - liquid_kaiser @1379 - liquid_kbd @1380 - liquid_kbd_window @1381 - liquid_lbcircshift @1382 - liquid_lbshift @1383 - liquid_lcircshift @1384 - liquid_levinson @1385 - liquid_libversion @1386 - liquid_libversion_number @1387 - liquid_lnbesselif @1388 - liquid_lngammaf @1389 - liquid_lnlowergammaf @1390 - liquid_lnuppergammaf @1391 - liquid_logf @1392 - liquid_lowergammaf @1393 - liquid_lpc @1394 - liquid_lshift @1395 - liquid_modem_is_apsk @1396 - liquid_modem_is_ask @1397 - liquid_modem_is_dpsk @1398 - liquid_modem_is_psk @1399 - liquid_modem_is_qam @1400 - liquid_modpow @1401 - liquid_msb_index @1402 - liquid_multimodal @1403 - liquid_nchoosek @1404 - liquid_nextpow2 @1405 - liquid_pack_array @1406 - liquid_pack_bytes @1407 - liquid_pack_soft_bits @1408 - liquid_primitive_root @1409 - liquid_primitive_root_prime @1410 - liquid_print_bitstring @1411 - liquid_print_crc_schemes @1412 - liquid_print_fec_schemes @1413 - liquid_print_modulation_schemes @1414 - liquid_print_windows @1415 - liquid_rbcircshift @1416 - liquid_rbshift @1417 - liquid_rcircshift @1418 - liquid_rcostaper_window @1419 - liquid_repack_bytes @1420 - liquid_reverse_byte @1421 - liquid_reverse_byte_gentab @1422 DATA - liquid_reverse_uint16 @1423 - liquid_reverse_uint24 @1424 - liquid_reverse_uint32 @1425 - liquid_rosenbrock @1426 - liquid_rshift @1427 - liquid_sincosf @1428 - liquid_sinf @1429 - liquid_spiral @1430 - liquid_sumsqcf @1431 - liquid_sumsqf @1432 - liquid_tanf @1433 - liquid_totient @1434 - liquid_triangular @1435 - liquid_unique_factor @1436 - liquid_unpack_array @1437 - liquid_unpack_bytes @1438 - liquid_unpack_soft_bits @1439 - liquid_unwrap_phase @1440 - liquid_unwrap_phase2 @1441 - liquid_uppergammaf @1442 - liquid_vectorcf_abs @1443 - liquid_vectorcf_add @1444 - liquid_vectorcf_addscalar @1445 - liquid_vectorcf_carg @1446 - liquid_vectorcf_cexpj @1447 - liquid_vectorcf_mul @1448 - liquid_vectorcf_mulscalar @1449 - liquid_vectorcf_norm @1450 - liquid_vectorcf_normalize @1451 - liquid_vectorf_abs @1452 - liquid_vectorf_add @1453 - liquid_vectorf_addscalar @1454 - liquid_vectorf_carg @1455 - liquid_vectorf_cexpj @1456 - liquid_vectorf_mul @1457 - liquid_vectorf_mulscalar @1458 - liquid_vectorf_norm @1459 - liquid_vectorf_normalize @1460 - liquid_version @1461 DATA - liquid_window_str @1462 DATA - liquid_windowf @1463 - matrix_add @1464 - matrix_aug @1465 - matrix_cgsolve @1466 - matrix_chol @1467 - matrix_det @1468 - matrix_det2x2 @1469 - matrix_div @1470 - matrix_eye @1471 - matrix_gjelim @1472 - matrix_gramschmidt @1473 - matrix_hermitian @1474 - matrix_hermitian_mul @1475 - matrix_inv @1476 - matrix_linsolve @1477 - matrix_ludecomp_crout @1478 - matrix_ludecomp_doolittle @1479 - matrix_mul @1480 - matrix_mul_hermitian @1481 - matrix_mul_transpose @1482 - matrix_ones @1483 - matrix_pdiv @1484 - matrix_pivot @1485 - matrix_pmul @1486 - matrix_print @1487 - matrix_proj @1488 - matrix_qrdecomp_gramschmidt @1489 - matrix_sub @1490 - matrix_swaprows @1491 - matrix_trans @1492 - matrix_transpose_mul @1493 - matrix_zeros @1494 - matrixc_add @1495 - matrixc_aug @1496 - matrixc_cgsolve @1497 - matrixc_chol @1498 - matrixc_det @1499 - matrixc_det2x2 @1500 - matrixc_div @1501 - matrixc_eye @1502 - matrixc_gjelim @1503 - matrixc_gramschmidt @1504 - matrixc_hermitian @1505 - matrixc_hermitian_mul @1506 - matrixc_inv @1507 - matrixc_linsolve @1508 - matrixc_ludecomp_crout @1509 - matrixc_ludecomp_doolittle @1510 - matrixc_mul @1511 - matrixc_mul_hermitian @1512 - matrixc_mul_transpose @1513 - matrixc_ones @1514 - matrixc_pdiv @1515 - matrixc_pivot @1516 - matrixc_pmul @1517 - matrixc_print @1518 - matrixc_proj @1519 - matrixc_qrdecomp_gramschmidt @1520 - matrixc_sub @1521 - matrixc_swaprows @1522 - matrixc_trans @1523 - matrixc_transpose_mul @1524 - matrixc_zeros @1525 - matrixcf_add @1526 - matrixcf_aug @1527 - matrixcf_cgsolve @1528 - matrixcf_chol @1529 - matrixcf_det @1530 - matrixcf_det2x2 @1531 - matrixcf_div @1532 - matrixcf_eye @1533 - matrixcf_gjelim @1534 - matrixcf_gramschmidt @1535 - matrixcf_hermitian @1536 - matrixcf_hermitian_mul @1537 - matrixcf_inv @1538 - matrixcf_linsolve @1539 - matrixcf_ludecomp_crout @1540 - matrixcf_ludecomp_doolittle @1541 - matrixcf_mul @1542 - matrixcf_mul_hermitian @1543 - matrixcf_mul_transpose @1544 - matrixcf_ones @1545 - matrixcf_pdiv @1546 - matrixcf_pivot @1547 - matrixcf_pmul @1548 - matrixcf_print @1549 - matrixcf_proj @1550 - matrixcf_qrdecomp_gramschmidt @1551 - matrixcf_sub @1552 - matrixcf_swaprows @1553 - matrixcf_trans @1554 - matrixcf_transpose_mul @1555 - matrixcf_zeros @1556 - matrixf_add @1557 - matrixf_aug @1558 - matrixf_cgsolve @1559 - matrixf_chol @1560 - matrixf_det @1561 - matrixf_det2x2 @1562 - matrixf_div @1563 - matrixf_eye @1564 - matrixf_gjelim @1565 - matrixf_gramschmidt @1566 - matrixf_hermitian @1567 - matrixf_hermitian_mul @1568 - matrixf_inv @1569 - matrixf_linsolve @1570 - matrixf_ludecomp_crout @1571 - matrixf_ludecomp_doolittle @1572 - matrixf_mul @1573 - matrixf_mul_hermitian @1574 - matrixf_mul_transpose @1575 - matrixf_ones @1576 - matrixf_pdiv @1577 - matrixf_pivot @1578 - matrixf_pmul @1579 - matrixf_print @1580 - matrixf_proj @1581 - matrixf_qrdecomp_gramschmidt @1582 - matrixf_sub @1583 - matrixf_swaprows @1584 - matrixf_trans @1585 - matrixf_transpose_mul @1586 - matrixf_zeros @1587 - modem_arb128opt @1588 DATA - modem_arb16opt @1589 DATA - modem_arb256opt @1590 DATA - modem_arb32opt @1591 DATA - modem_arb64opt @1592 DATA - modem_arb_V29 @1593 DATA - modem_arb_balance_iq @1594 - modem_arb_init @1595 - modem_arb_init_file @1596 - modem_arb_scale @1597 - modem_arb_sqam128 @1598 DATA - modem_arb_sqam32 @1599 DATA - modem_arb_vt64 @1600 DATA - modem_create @1601 - modem_create_V29 @1602 - modem_create_apsk @1603 - modem_create_arb @1604 - modem_create_arb128opt @1605 - modem_create_arb16opt @1606 - modem_create_arb256opt @1607 - modem_create_arb32opt @1608 - modem_create_arb64opt @1609 - modem_create_arb64vt @1610 - modem_create_arbitrary @1611 - modem_create_ask @1612 - modem_create_bpsk @1613 - modem_create_dpsk @1614 - modem_create_ook @1615 - modem_create_psk @1616 - modem_create_qam @1617 - modem_create_qpsk @1618 - modem_create_sqam128 @1619 - modem_create_sqam32 @1620 - modem_demodsoft_gentab @1621 - modem_demodulate @1622 - modem_demodulate_apsk @1623 - modem_demodulate_arb @1624 - modem_demodulate_ask @1625 - modem_demodulate_bpsk @1626 - modem_demodulate_dpsk @1627 - modem_demodulate_linear_array @1628 - modem_demodulate_linear_array_ref @1629 - modem_demodulate_ook @1630 - modem_demodulate_psk @1631 - modem_demodulate_qam @1632 - modem_demodulate_qpsk @1633 - modem_demodulate_soft @1634 - modem_demodulate_soft_arb @1635 - modem_demodulate_soft_bpsk @1636 - modem_demodulate_soft_qpsk @1637 - modem_demodulate_soft_table @1638 - modem_demodulate_sqam128 @1639 - modem_demodulate_sqam32 @1640 - modem_destroy @1641 - modem_gen_rand_sym @1642 - modem_get_bps @1643 - modem_get_demodulator_evm @1644 - modem_get_demodulator_phase_error @1645 - modem_get_demodulator_sample @1646 - modem_get_scheme @1647 - modem_init @1648 - modem_init_map @1649 - modem_modulate @1650 - modem_modulate_apsk @1651 - modem_modulate_arb @1652 - modem_modulate_ask @1653 - modem_modulate_bpsk @1654 - modem_modulate_dpsk @1655 - modem_modulate_map @1656 - modem_modulate_ook @1657 - modem_modulate_psk @1658 - modem_modulate_qam @1659 - modem_modulate_qpsk @1660 - modem_modulate_sqam128 @1661 - modem_modulate_sqam32 @1662 - modem_print @1663 - modem_recreate @1664 - modem_reset @1665 - modulation_types @1666 DATA - msequence_advance @1667 - msequence_create @1668 - msequence_create_default @1669 - msequence_create_genpoly @1670 - msequence_default @1671 DATA - msequence_destroy @1672 - msequence_generate_symbol @1673 - msequence_get_length @1674 - msequence_get_state @1675 - msequence_print @1676 - msequence_reset @1677 - msequence_set_state @1678 - msourcecf_add_chirp @1679 - msourcecf_add_fsk @1680 - msourcecf_add_gmsk @1681 - msourcecf_add_modem @1682 - msourcecf_add_noise @1683 - msourcecf_add_source @1684 - msourcecf_add_tone @1685 - msourcecf_add_user @1686 - msourcecf_create @1687 - msourcecf_create_default @1688 - msourcecf_destroy @1689 - msourcecf_disable @1690 - msourcecf_enable @1691 - msourcecf_find @1692 - msourcecf_generate @1693 - msourcecf_get_frequency @1694 - msourcecf_get_gain @1695 - msourcecf_get_num_samples @1696 - msourcecf_get_source @1697 - msourcecf_print @1698 - msourcecf_remove @1699 - msourcecf_reset @1700 - msourcecf_set_frequency @1701 - msourcecf_set_gain @1702 - msourcecf_write_samples @1703 - msresamp2_cccf_create @1704 - msresamp2_cccf_decim_execute @1705 - msresamp2_cccf_destroy @1706 - msresamp2_cccf_execute @1707 - msresamp2_cccf_get_delay @1708 - msresamp2_cccf_get_num_stages @1709 - msresamp2_cccf_get_rate @1710 - msresamp2_cccf_get_type @1711 - msresamp2_cccf_interp_execute @1712 - msresamp2_cccf_print @1713 - msresamp2_cccf_reset @1714 - msresamp2_crcf_create @1715 - msresamp2_crcf_decim_execute @1716 - msresamp2_crcf_destroy @1717 - msresamp2_crcf_execute @1718 - msresamp2_crcf_get_delay @1719 - msresamp2_crcf_get_num_stages @1720 - msresamp2_crcf_get_rate @1721 - msresamp2_crcf_get_type @1722 - msresamp2_crcf_interp_execute @1723 - msresamp2_crcf_print @1724 - msresamp2_crcf_reset @1725 - msresamp2_rrrf_create @1726 - msresamp2_rrrf_decim_execute @1727 - msresamp2_rrrf_destroy @1728 - msresamp2_rrrf_execute @1729 - msresamp2_rrrf_get_delay @1730 - msresamp2_rrrf_get_num_stages @1731 - msresamp2_rrrf_get_rate @1732 - msresamp2_rrrf_get_type @1733 - msresamp2_rrrf_interp_execute @1734 - msresamp2_rrrf_print @1735 - msresamp2_rrrf_reset @1736 - msresamp_cccf_create @1737 - msresamp_cccf_decim_execute @1738 - msresamp_cccf_destroy @1739 - msresamp_cccf_execute @1740 - msresamp_cccf_get_delay @1741 - msresamp_cccf_get_rate @1742 - msresamp_cccf_interp_execute @1743 - msresamp_cccf_print @1744 - msresamp_cccf_reset @1745 - msresamp_crcf_create @1746 - msresamp_crcf_decim_execute @1747 - msresamp_crcf_destroy @1748 - msresamp_crcf_execute @1749 - msresamp_crcf_get_delay @1750 - msresamp_crcf_get_rate @1751 - msresamp_crcf_interp_execute @1752 - msresamp_crcf_print @1753 - msresamp_crcf_reset @1754 - msresamp_rrrf_create @1755 - msresamp_rrrf_decim_execute @1756 - msresamp_rrrf_destroy @1757 - msresamp_rrrf_execute @1758 - msresamp_rrrf_get_delay @1759 - msresamp_rrrf_get_rate @1760 - msresamp_rrrf_interp_execute @1761 - msresamp_rrrf_print @1762 - msresamp_rrrf_reset @1763 - nco_crcf_adjust_frequency @1764 - nco_crcf_adjust_phase @1765 - nco_crcf_cexpf @1766 - nco_crcf_constrain @1767 - nco_crcf_cos @1768 - nco_crcf_create @1769 - nco_crcf_destroy @1770 - nco_crcf_get_frequency @1771 - nco_crcf_get_phase @1772 - nco_crcf_index @1773 - nco_crcf_mix_block_down @1774 - nco_crcf_mix_block_up @1775 - nco_crcf_mix_down @1776 - nco_crcf_mix_up @1777 - nco_crcf_pll_reset @1778 - nco_crcf_pll_set_bandwidth @1779 - nco_crcf_pll_step @1780 - nco_crcf_print @1781 - nco_crcf_reset @1782 - nco_crcf_set_frequency @1783 - nco_crcf_set_phase @1784 - nco_crcf_sin @1785 - nco_crcf_sincos @1786 - nco_crcf_step @1787 - ofdmflexframegen_assemble @1788 - ofdmflexframegen_create @1789 - ofdmflexframegen_destroy @1790 - ofdmflexframegen_encode_header @1791 - ofdmflexframegen_gen_S0a @1792 - ofdmflexframegen_gen_S0b @1793 - ofdmflexframegen_gen_S1 @1794 - ofdmflexframegen_gen_header @1795 - ofdmflexframegen_gen_payload @1796 - ofdmflexframegen_gen_symbol @1797 - ofdmflexframegen_gen_tail @1798 - ofdmflexframegen_gen_zeros @1799 - ofdmflexframegen_getframelen @1800 - ofdmflexframegen_getprops @1801 - ofdmflexframegen_is_assembled @1802 - ofdmflexframegen_modulate_header @1803 - ofdmflexframegen_print @1804 - ofdmflexframegen_reconfigure @1805 - ofdmflexframegen_reset @1806 - ofdmflexframegen_set_header_len @1807 - ofdmflexframegen_set_header_props @1808 - ofdmflexframegen_setprops @1809 - ofdmflexframegen_write @1810 - ofdmflexframegenprops_init_default @1811 - ofdmflexframesync_create @1812 - ofdmflexframesync_debug_disable @1813 - ofdmflexframesync_debug_enable @1814 - ofdmflexframesync_debug_print @1815 - ofdmflexframesync_decode_header @1816 - ofdmflexframesync_decode_header_soft @1817 - ofdmflexframesync_decode_payload_soft @1818 - ofdmflexframesync_destroy @1819 - ofdmflexframesync_execute @1820 - ofdmflexframesync_get_cfo @1821 - ofdmflexframesync_get_framedatastats @1822 - ofdmflexframesync_get_rssi @1823 - ofdmflexframesync_internal_callback @1824 - ofdmflexframesync_is_frame_open @1825 - ofdmflexframesync_print @1826 - ofdmflexframesync_reset @1827 - ofdmflexframesync_reset_framedatastats @1828 - ofdmflexframesync_rxheader @1829 - ofdmflexframesync_rxpayload @1830 - ofdmflexframesync_set_cfo @1831 - ofdmflexframesync_set_header_len @1832 - ofdmflexframesync_set_header_props @1833 - ofdmframe_init_S0 @1834 - ofdmframe_init_S1 @1835 - ofdmframe_init_default_sctype @1836 - ofdmframe_init_sctype_range @1837 - ofdmframe_print_sctype @1838 - ofdmframe_validate_sctype @1839 - ofdmframegen_create @1840 - ofdmframegen_destroy @1841 - ofdmframegen_gensymbol @1842 - ofdmframegen_print @1843 - ofdmframegen_reset @1844 - ofdmframegen_write_S0a @1845 - ofdmframegen_write_S0b @1846 - ofdmframegen_write_S1 @1847 - ofdmframegen_writesymbol @1848 - ofdmframegen_writetail @1849 - ofdmframesync_S0_metrics @1850 - ofdmframesync_create @1851 - ofdmframesync_debug_disable @1852 - ofdmframesync_debug_enable @1853 - ofdmframesync_debug_print @1854 - ofdmframesync_destroy @1855 - ofdmframesync_estimate_eqgain @1856 - ofdmframesync_estimate_eqgain_poly @1857 - ofdmframesync_estimate_gain_S0 @1858 - ofdmframesync_estimate_gain_S1 @1859 - ofdmframesync_execute @1860 - ofdmframesync_execute_S0a @1861 - ofdmframesync_execute_S0b @1862 - ofdmframesync_execute_S1 @1863 - ofdmframesync_execute_rxsymbols @1864 - ofdmframesync_execute_seekplcp @1865 - ofdmframesync_get_cfo @1866 - ofdmframesync_get_rssi @1867 - ofdmframesync_is_frame_open @1868 - ofdmframesync_print @1869 - ofdmframesync_reset @1870 - ofdmframesync_rxsymbol @1871 - ofdmframesync_set_cfo @1872 - optim_sort @1873 - optim_threshold_switch @1874 - ordfilt_rrrf_create @1875 - ordfilt_rrrf_create_medfilt @1876 - ordfilt_rrrf_destroy @1877 - ordfilt_rrrf_execute @1878 - ordfilt_rrrf_execute_block @1879 - ordfilt_rrrf_print @1880 - ordfilt_rrrf_push @1881 - ordfilt_rrrf_reset @1882 - ordfilt_rrrf_write @1883 - ordfilt_sort_compf @1884 - packetizer_compute_dec_msg_len @1885 - packetizer_compute_enc_msg_len @1886 - packetizer_create @1887 - packetizer_decode @1888 - packetizer_decode_soft @1889 - packetizer_destroy @1890 - packetizer_encode @1891 - packetizer_get_crc @1892 - packetizer_get_dec_msg_len @1893 - packetizer_get_enc_msg_len @1894 - packetizer_get_fec0 @1895 - packetizer_get_fec1 @1896 - packetizer_print @1897 - packetizer_realloc_buffers @1898 - packetizer_recreate @1899 - packetizer_set_scheme @1900 - poly_expandbinomial @1901 - poly_expandbinomial_pm @1902 - poly_expandroots @1903 - poly_expandroots2 @1904 - poly_findroots @1905 - poly_findroots_bairstow @1906 - poly_findroots_bairstow_persistent @1907 - poly_findroots_bairstow_recursion @1908 - poly_findroots_durandkerner @1909 - poly_fit @1910 - poly_fit_lagrange @1911 - poly_fit_lagrange_barycentric @1912 - poly_interp_lagrange @1913 - poly_mul @1914 - poly_sort_roots_compare @1915 - poly_val @1916 - poly_val_lagrange_barycentric @1917 - polyc_expandbinomial @1918 - polyc_expandbinomial_pm @1919 - polyc_expandroots @1920 - polyc_expandroots2 @1921 - polyc_findroots @1922 - polyc_findroots_bairstow @1923 - polyc_findroots_bairstow_persistent @1924 - polyc_findroots_bairstow_recursion @1925 - polyc_findroots_durandkerner @1926 - polyc_fit @1927 - polyc_fit_lagrange @1928 - polyc_fit_lagrange_barycentric @1929 - polyc_interp_lagrange @1930 - polyc_mul @1931 - polyc_sort_roots_compare @1932 - polyc_val @1933 - polyc_val_lagrange_barycentric @1934 - polycf_expandbinomial @1935 - polycf_expandbinomial_pm @1936 - polycf_expandroots @1937 - polycf_expandroots2 @1938 - polycf_findroots @1939 - polycf_findroots_bairstow @1940 - polycf_findroots_bairstow_persistent @1941 - polycf_findroots_bairstow_recursion @1942 - polycf_findroots_durandkerner @1943 - polycf_fit @1944 - polycf_fit_lagrange @1945 - polycf_fit_lagrange_barycentric @1946 - polycf_interp_lagrange @1947 - polycf_mul @1948 - polycf_sort_roots_compare @1949 - polycf_val @1950 - polycf_val_lagrange_barycentric @1951 - polyf_expandbinomial @1952 - polyf_expandbinomial_pm @1953 - polyf_expandroots @1954 - polyf_expandroots2 @1955 - polyf_findroots @1956 - polyf_findroots_bairstow @1957 - polyf_findroots_bairstow_persistent @1958 - polyf_findroots_bairstow_recursion @1959 - polyf_findroots_durandkerner @1960 - polyf_fit @1961 - polyf_fit_lagrange @1962 - polyf_fit_lagrange_barycentric @1963 - polyf_interp_lagrange @1964 - polyf_mul @1965 - polyf_sort_roots_compare @1966 - polyf_val @1967 - polyf_val_lagrange_barycentric @1968 - presync_cccf_correlate @1969 - presync_cccf_create @1970 - presync_cccf_destroy @1971 - presync_cccf_execute @1972 - presync_cccf_print @1973 - presync_cccf_push @1974 - presync_cccf_reset @1975 - qdetector_cccf_create @1976 - qdetector_cccf_create_cpfsk @1977 - qdetector_cccf_create_gmsk @1978 - qdetector_cccf_create_linear @1979 - qdetector_cccf_destroy @1980 - qdetector_cccf_execute @1981 - qdetector_cccf_execute_align @1982 - qdetector_cccf_execute_seek @1983 - qdetector_cccf_get_buf_len @1984 - qdetector_cccf_get_dphi @1985 - qdetector_cccf_get_gamma @1986 - qdetector_cccf_get_phi @1987 - qdetector_cccf_get_rxy @1988 - qdetector_cccf_get_seq_len @1989 - qdetector_cccf_get_sequence @1990 - qdetector_cccf_get_tau @1991 - qdetector_cccf_print @1992 - qdetector_cccf_reset @1993 - qdetector_cccf_set_range @1994 - qdetector_cccf_set_threshold @1995 - qnsearch_compute_Hessian @1996 - qnsearch_compute_gradient @1997 - qnsearch_create @1998 - qnsearch_destroy @1999 - qnsearch_normalize_gradient @2000 - qnsearch_print @2001 - qnsearch_reset @2002 - qnsearch_run @2003 - qnsearch_step @2004 - qpacketmodem_configure @2005 - qpacketmodem_create @2006 - qpacketmodem_decode @2007 - qpacketmodem_decode_bits @2008 - qpacketmodem_decode_soft @2009 - qpacketmodem_decode_soft_payload @2010 - qpacketmodem_decode_soft_sym @2011 - qpacketmodem_decode_syms @2012 - qpacketmodem_destroy @2013 - qpacketmodem_encode @2014 - qpacketmodem_encode_syms @2015 - qpacketmodem_get_crc @2016 - qpacketmodem_get_demodulator_evm @2017 - qpacketmodem_get_demodulator_phase_error @2018 - qpacketmodem_get_fec0 @2019 - qpacketmodem_get_fec1 @2020 - qpacketmodem_get_frame_len @2021 - qpacketmodem_get_modscheme @2022 - qpacketmodem_get_payload_len @2023 - qpacketmodem_print @2024 - qpacketmodem_reset @2025 - qpilot_frame_len @2026 - qpilot_num_pilots @2027 - qpilotgen_create @2028 - qpilotgen_destroy @2029 - qpilotgen_execute @2030 - qpilotgen_get_frame_len @2031 - qpilotgen_print @2032 - qpilotgen_recreate @2033 - qpilotgen_reset @2034 - qpilotsync_create @2035 - qpilotsync_destroy @2036 - qpilotsync_execute @2037 - qpilotsync_get_dphi @2038 - qpilotsync_get_evm @2039 - qpilotsync_get_frame_len @2040 - qpilotsync_get_gain @2041 - qpilotsync_get_phi @2042 - qpilotsync_print @2043 - qpilotsync_recreate @2044 - qpilotsync_reset @2045 - qsourcecf_create @2046 - qsourcecf_destroy @2047 - qsourcecf_disable @2048 - qsourcecf_enable @2049 - qsourcecf_generate @2050 - qsourcecf_generate_into @2051 - qsourcecf_get_frequency @2052 - qsourcecf_get_gain @2053 - qsourcecf_get_id @2054 - qsourcecf_get_num_samples @2055 - qsourcecf_init_chirp @2056 - qsourcecf_init_fsk @2057 - qsourcecf_init_gmsk @2058 - qsourcecf_init_modem @2059 - qsourcecf_init_noise @2060 - qsourcecf_init_tone @2061 - qsourcecf_init_user @2062 - qsourcecf_print @2063 - qsourcecf_reset @2064 - qsourcecf_set_frequency @2065 - qsourcecf_set_gain @2066 - qsourcecf_set_id @2067 - quantize_adc @2068 - quantize_dac @2069 - quantizercf_create @2070 - quantizercf_destroy @2071 - quantizercf_execute_adc @2072 - quantizercf_execute_dac @2073 - quantizercf_print @2074 - quantizerf_create @2075 - quantizerf_destroy @2076 - quantizerf_execute_adc @2077 - quantizerf_execute_dac @2078 - quantizerf_print @2079 - randexpf @2080 - randexpf_cdf @2081 - randexpf_pdf @2082 - randf @2083 - randf_cdf @2084 - randf_pdf @2085 - randgammaf @2086 - randgammaf_cdf @2087 - randgammaf_delta @2088 - randgammaf_pdf @2089 - randnakmf @2090 - randnakmf_cdf @2091 - randnakmf_pdf @2092 - randnf @2093 - randnf_cdf @2094 - randnf_pdf @2095 - randricekf @2096 - randricekf_cdf @2097 - randricekf_pdf @2098 - randuf @2099 - randuf_cdf @2100 - randuf_pdf @2101 - randweibf @2102 - randweibf_cdf @2103 - randweibf_pdf @2104 - resamp2_cccf_analyzer_execute @2105 - resamp2_cccf_create @2106 - resamp2_cccf_decim_execute @2107 - resamp2_cccf_destroy @2108 - resamp2_cccf_filter_execute @2109 - resamp2_cccf_get_delay @2110 - resamp2_cccf_interp_execute @2111 - resamp2_cccf_print @2112 - resamp2_cccf_recreate @2113 - resamp2_cccf_reset @2114 - resamp2_cccf_synthesizer_execute @2115 - resamp2_crcf_analyzer_execute @2116 - resamp2_crcf_create @2117 - resamp2_crcf_decim_execute @2118 - resamp2_crcf_destroy @2119 - resamp2_crcf_filter_execute @2120 - resamp2_crcf_get_delay @2121 - resamp2_crcf_interp_execute @2122 - resamp2_crcf_print @2123 - resamp2_crcf_recreate @2124 - resamp2_crcf_reset @2125 - resamp2_crcf_synthesizer_execute @2126 - resamp2_rrrf_analyzer_execute @2127 - resamp2_rrrf_create @2128 - resamp2_rrrf_decim_execute @2129 - resamp2_rrrf_destroy @2130 - resamp2_rrrf_filter_execute @2131 - resamp2_rrrf_get_delay @2132 - resamp2_rrrf_interp_execute @2133 - resamp2_rrrf_print @2134 - resamp2_rrrf_recreate @2135 - resamp2_rrrf_reset @2136 - resamp2_rrrf_synthesizer_execute @2137 - resamp_cccf_adjust_rate @2138 - resamp_cccf_adjust_timing_phase @2139 - resamp_cccf_create @2140 - resamp_cccf_create_default @2141 - resamp_cccf_destroy @2142 - resamp_cccf_execute @2143 - resamp_cccf_execute_block @2144 - resamp_cccf_get_delay @2145 - resamp_cccf_get_rate @2146 - resamp_cccf_print @2147 - resamp_cccf_reset @2148 - resamp_cccf_set_rate @2149 - resamp_cccf_set_timing_phase @2150 - resamp_crcf_adjust_rate @2151 - resamp_crcf_adjust_timing_phase @2152 - resamp_crcf_create @2153 - resamp_crcf_create_default @2154 - resamp_crcf_destroy @2155 - resamp_crcf_execute @2156 - resamp_crcf_execute_block @2157 - resamp_crcf_get_delay @2158 - resamp_crcf_get_rate @2159 - resamp_crcf_print @2160 - resamp_crcf_reset @2161 - resamp_crcf_set_rate @2162 - resamp_crcf_set_timing_phase @2163 - resamp_rrrf_adjust_rate @2164 - resamp_rrrf_adjust_timing_phase @2165 - resamp_rrrf_create @2166 - resamp_rrrf_create_default @2167 - resamp_rrrf_destroy @2168 - resamp_rrrf_execute @2169 - resamp_rrrf_execute_block @2170 - resamp_rrrf_get_delay @2171 - resamp_rrrf_get_rate @2172 - resamp_rrrf_print @2173 - resamp_rrrf_reset @2174 - resamp_rrrf_set_rate @2175 - resamp_rrrf_set_timing_phase @2176 - rkaiser_approximate_rho @2177 - rresamp_cccf_create @2178 - rresamp_cccf_create_default @2179 - rresamp_cccf_create_kaiser @2180 - rresamp_cccf_create_prototype @2181 - rresamp_cccf_destroy @2182 - rresamp_cccf_execute @2183 - rresamp_cccf_execute_primitive @2184 - rresamp_cccf_get_P @2185 - rresamp_cccf_get_Q @2186 - rresamp_cccf_get_block_len @2187 - rresamp_cccf_get_decim @2188 - rresamp_cccf_get_delay @2189 - rresamp_cccf_get_interp @2190 - rresamp_cccf_get_rate @2191 - rresamp_cccf_get_scale @2192 - rresamp_cccf_print @2193 - rresamp_cccf_reset @2194 - rresamp_cccf_set_scale @2195 - rresamp_crcf_create @2196 - rresamp_crcf_create_default @2197 - rresamp_crcf_create_kaiser @2198 - rresamp_crcf_create_prototype @2199 - rresamp_crcf_destroy @2200 - rresamp_crcf_execute @2201 - rresamp_crcf_execute_primitive @2202 - rresamp_crcf_get_P @2203 - rresamp_crcf_get_Q @2204 - rresamp_crcf_get_block_len @2205 - rresamp_crcf_get_decim @2206 - rresamp_crcf_get_delay @2207 - rresamp_crcf_get_interp @2208 - rresamp_crcf_get_rate @2209 - rresamp_crcf_get_scale @2210 - rresamp_crcf_print @2211 - rresamp_crcf_reset @2212 - rresamp_crcf_set_scale @2213 - rresamp_rrrf_create @2214 - rresamp_rrrf_create_default @2215 - rresamp_rrrf_create_kaiser @2216 - rresamp_rrrf_create_prototype @2217 - rresamp_rrrf_destroy @2218 - rresamp_rrrf_execute @2219 - rresamp_rrrf_execute_primitive @2220 - rresamp_rrrf_get_P @2221 - rresamp_rrrf_get_Q @2222 - rresamp_rrrf_get_block_len @2223 - rresamp_rrrf_get_decim @2224 - rresamp_rrrf_get_delay @2225 - rresamp_rrrf_get_interp @2226 - rresamp_rrrf_get_rate @2227 - rresamp_rrrf_get_scale @2228 - rresamp_rrrf_print @2229 - rresamp_rrrf_reset @2230 - rresamp_rrrf_set_scale @2231 - scramble_data @2232 - secded2216_P @2233 DATA - secded2216_syndrome_w1 @2234 DATA - secded3932_P @2235 DATA - secded3932_syndrome_w1 @2236 DATA - secded7264_P @2237 DATA - secded7264_syndrome_w1 @2238 DATA - sincf @2239 - smatrix_indexsearch @2240 - smatrixb_clear @2241 - smatrixb_create @2242 - smatrixb_create_array @2243 - smatrixb_delete @2244 - smatrixb_destroy @2245 - smatrixb_eye @2246 - smatrixb_get @2247 - smatrixb_insert @2248 - smatrixb_isset @2249 - smatrixb_mul @2250 - smatrixb_mulf @2251 - smatrixb_print @2252 - smatrixb_print_expanded @2253 - smatrixb_reset @2254 - smatrixb_reset_max_mlist @2255 - smatrixb_reset_max_nlist @2256 - smatrixb_set @2257 - smatrixb_size @2258 - smatrixb_vmul @2259 - smatrixb_vmulf @2260 - smatrixf_clear @2261 - smatrixf_create @2262 - smatrixf_create_array @2263 - smatrixf_delete @2264 - smatrixf_destroy @2265 - smatrixf_eye @2266 - smatrixf_get @2267 - smatrixf_insert @2268 - smatrixf_isset @2269 - smatrixf_mul @2270 - smatrixf_print @2271 - smatrixf_print_expanded @2272 - smatrixf_reset @2273 - smatrixf_reset_max_mlist @2274 - smatrixf_reset_max_nlist @2275 - smatrixf_set @2276 - smatrixf_size @2277 - smatrixf_vmul @2278 - smatrixi_clear @2279 - smatrixi_create @2280 - smatrixi_create_array @2281 - smatrixi_delete @2282 - smatrixi_destroy @2283 - smatrixi_eye @2284 - smatrixi_get @2285 - smatrixi_insert @2286 - smatrixi_isset @2287 - smatrixi_mul @2288 - smatrixi_print @2289 - smatrixi_print_expanded @2290 - smatrixi_reset @2291 - smatrixi_reset_max_mlist @2292 - smatrixi_reset_max_nlist @2293 - smatrixi_set @2294 - smatrixi_size @2295 - smatrixi_vmul @2296 - spgramcf_clear @2297 - spgramcf_create @2298 - spgramcf_create_default @2299 - spgramcf_destroy @2300 - spgramcf_estimate_psd @2301 - spgramcf_export_gnuplot @2302 - spgramcf_get_alpha @2303 - spgramcf_get_delay @2304 - spgramcf_get_nfft @2305 - spgramcf_get_num_samples @2306 - spgramcf_get_num_samples_total @2307 - spgramcf_get_num_transforms @2308 - spgramcf_get_num_transforms_total @2309 - spgramcf_get_psd @2310 - spgramcf_get_window_len @2311 - spgramcf_print @2312 - spgramcf_push @2313 - spgramcf_reset @2314 - spgramcf_set_alpha @2315 - spgramcf_set_freq @2316 - spgramcf_set_rate @2317 - spgramcf_step @2318 - spgramcf_write @2319 - spgramf_clear @2320 - spgramf_create @2321 - spgramf_create_default @2322 - spgramf_destroy @2323 - spgramf_estimate_psd @2324 - spgramf_export_gnuplot @2325 - spgramf_get_alpha @2326 - spgramf_get_delay @2327 - spgramf_get_nfft @2328 - spgramf_get_num_samples @2329 - spgramf_get_num_samples_total @2330 - spgramf_get_num_transforms @2331 - spgramf_get_num_transforms_total @2332 - spgramf_get_psd @2333 - spgramf_get_window_len @2334 - spgramf_print @2335 - spgramf_push @2336 - spgramf_reset @2337 - spgramf_set_alpha @2338 - spgramf_set_freq @2339 - spgramf_set_rate @2340 - spgramf_step @2341 - spgramf_write @2342 - spwaterfallcf_clear @2343 - spwaterfallcf_consolidate_buffer @2344 - spwaterfallcf_create @2345 - spwaterfallcf_create_default @2346 - spwaterfallcf_destroy @2347 - spwaterfallcf_export @2348 - spwaterfallcf_export_bin @2349 - spwaterfallcf_export_gnu @2350 - spwaterfallcf_get_num_freq @2351 - spwaterfallcf_get_num_samples_total @2352 - spwaterfallcf_get_num_time @2353 - spwaterfallcf_get_psd @2354 - spwaterfallcf_print @2355 - spwaterfallcf_push @2356 - spwaterfallcf_reset @2357 - spwaterfallcf_set_commands @2358 - spwaterfallcf_set_dims @2359 - spwaterfallcf_set_freq @2360 - spwaterfallcf_set_rate @2361 - spwaterfallcf_step @2362 - spwaterfallcf_write @2363 - spwaterfallf_clear @2364 - spwaterfallf_consolidate_buffer @2365 - spwaterfallf_create @2366 - spwaterfallf_create_default @2367 - spwaterfallf_destroy @2368 - spwaterfallf_export @2369 - spwaterfallf_export_bin @2370 - spwaterfallf_export_gnu @2371 - spwaterfallf_get_num_freq @2372 - spwaterfallf_get_num_samples_total @2373 - spwaterfallf_get_num_time @2374 - spwaterfallf_get_psd @2375 - spwaterfallf_print @2376 - spwaterfallf_push @2377 - spwaterfallf_reset @2378 - spwaterfallf_set_commands @2379 - spwaterfallf_set_dims @2380 - spwaterfallf_set_freq @2381 - spwaterfallf_set_rate @2382 - spwaterfallf_step @2383 - spwaterfallf_write @2384 - sumproduct_phi @2385 - symstreamcf_create @2386 - symstreamcf_create_linear @2387 - symstreamcf_destroy @2388 - symstreamcf_fill_buffer @2389 - symstreamcf_get_gain @2390 - symstreamcf_get_scheme @2391 - symstreamcf_print @2392 - symstreamcf_reset @2393 - symstreamcf_set_gain @2394 - symstreamcf_set_scheme @2395 - symstreamcf_write_samples @2396 - symsync_crcf_advance_internal_loop @2397 - symsync_crcf_create @2398 - symsync_crcf_create_kaiser @2399 - symsync_crcf_create_rnyquist @2400 - symsync_crcf_destroy @2401 - symsync_crcf_execute @2402 - symsync_crcf_get_tau @2403 - symsync_crcf_lock @2404 - symsync_crcf_output_debug_file @2405 - symsync_crcf_print @2406 - symsync_crcf_reset @2407 - symsync_crcf_set_lf_bw @2408 - symsync_crcf_set_output_rate @2409 - symsync_crcf_step @2410 - symsync_crcf_unlock @2411 - symsync_rrrf_advance_internal_loop @2412 - symsync_rrrf_create @2413 - symsync_rrrf_create_kaiser @2414 - symsync_rrrf_create_rnyquist @2415 - symsync_rrrf_destroy @2416 - symsync_rrrf_execute @2417 - symsync_rrrf_get_tau @2418 - symsync_rrrf_lock @2419 - symsync_rrrf_output_debug_file @2420 - symsync_rrrf_print @2421 - symsync_rrrf_reset @2422 - symsync_rrrf_set_lf_bw @2423 - symsync_rrrf_set_output_rate @2424 - symsync_rrrf_step @2425 - symsync_rrrf_unlock @2426 - symtrack_cccf_adjust_phase @2427 - symtrack_cccf_create @2428 - symtrack_cccf_create_default @2429 - symtrack_cccf_destroy @2430 - symtrack_cccf_execute @2431 - symtrack_cccf_execute_block @2432 - symtrack_cccf_print @2433 - symtrack_cccf_reset @2434 - symtrack_cccf_set_bandwidth @2435 - symtrack_cccf_set_modscheme @2436 - synth_crcf_adjust_frequency @2437 - synth_crcf_adjust_phase @2438 - synth_crcf_compute_synth @2439 - synth_crcf_constrain_frequency @2440 - synth_crcf_constrain_phase @2441 - synth_crcf_create @2442 - synth_crcf_despread @2443 - synth_crcf_despread_triple @2444 - synth_crcf_destroy @2445 - synth_crcf_get_current @2446 - synth_crcf_get_frequency @2447 - synth_crcf_get_half_next @2448 - synth_crcf_get_half_previous @2449 - synth_crcf_get_length @2450 - synth_crcf_get_phase @2451 - synth_crcf_mix_block_down @2452 - synth_crcf_mix_block_up @2453 - synth_crcf_mix_down @2454 - synth_crcf_mix_up @2455 - synth_crcf_pll_reset @2456 - synth_crcf_pll_set_bandwidth @2457 - synth_crcf_pll_step @2458 - synth_crcf_reset @2459 - synth_crcf_set_frequency @2460 - synth_crcf_set_phase @2461 - synth_crcf_spread @2462 - synth_crcf_step @2463 - tvmpch_cccf_create @2464 - tvmpch_cccf_destroy @2465 - tvmpch_cccf_execute @2466 - tvmpch_cccf_execute_block @2467 - tvmpch_cccf_print @2468 - tvmpch_cccf_push @2469 - tvmpch_cccf_reset @2470 - unscramble_data @2471 - unscramble_data_soft @2472 - wdelaycf_create @2473 - wdelaycf_destroy @2474 - wdelaycf_print @2475 - wdelaycf_push @2476 - wdelaycf_read @2477 - wdelaycf_recreate @2478 - wdelaycf_reset @2479 - wdelayf_create @2480 - wdelayf_destroy @2481 - wdelayf_print @2482 - wdelayf_push @2483 - wdelayf_read @2484 - wdelayf_recreate @2485 - wdelayf_reset @2486 - windowcf_create @2487 - windowcf_debug_print @2488 - windowcf_destroy @2489 - windowcf_index @2490 - windowcf_print @2491 - windowcf_push @2492 - windowcf_read @2493 - windowcf_recreate @2494 - windowcf_reset @2495 - windowcf_write @2496 - windowf_create @2497 - windowf_debug_print @2498 - windowf_destroy @2499 - windowf_index @2500 - windowf_print @2501 - windowf_push @2502 - windowf_read @2503 - windowf_recreate @2504 - windowf_reset @2505 - windowf_write @2506 + gmskframegen_write @1075 + gmskframegen_write_header @1076 + gmskframegen_write_payload @1077 + gmskframegen_write_preamble @1078 + gmskframegen_write_samples @1079 + gmskframegen_write_tail @1080 + gmskframesync_create @1081 + gmskframesync_debug_disable @1082 + gmskframesync_debug_enable @1083 + gmskframesync_debug_print @1084 + gmskframesync_decode_header @1085 + gmskframesync_destroy @1086 + gmskframesync_execute @1087 + gmskframesync_execute_detectframe @1088 + gmskframesync_execute_rxheader @1089 + gmskframesync_execute_rxpayload @1090 + gmskframesync_execute_rxpreamble @1091 + gmskframesync_execute_sample @1092 + gmskframesync_is_frame_open @1093 + gmskframesync_print @1094 + gmskframesync_pushpn @1095 + gmskframesync_reset @1096 + gmskframesync_set_header_len @1097 + gmskframesync_syncpn @1098 + gmskframesync_update_fi @1099 + gmskframesync_update_symsync @1100 + gmskmod_create @1101 + gmskmod_destroy @1102 + gmskmod_modulate @1103 + gmskmod_print @1104 + gmskmod_reset @1105 + golay2412_Gt @1106 DATA + golay2412_H @1107 DATA + golay2412_P @1108 DATA + golay2412_matrix_mul @1109 + golay2412_parity_search @1110 + gradsearch_create @1111 + gradsearch_destroy @1112 + gradsearch_execute @1113 + gradsearch_gradient @1114 + gradsearch_linesearch @1115 + gradsearch_norm @1116 + gradsearch_print @1117 + gradsearch_step @1118 + gray_decode @1119 + gray_encode @1120 + hamming128_enc_gentab @1121 DATA + hamming74_dec_gentab @1122 DATA + hamming74_enc_gentab @1123 DATA + hamming84_dec_gentab @1124 DATA + hamming84_enc_gentab @1125 DATA + icrandnf @1126 + iir_group_delay @1127 + iirdecim_cccf_create @1128 + iirdecim_cccf_create_default @1129 + iirdecim_cccf_create_prototype @1130 + iirdecim_cccf_destroy @1131 + iirdecim_cccf_execute @1132 + iirdecim_cccf_execute_block @1133 + iirdecim_cccf_groupdelay @1134 + iirdecim_cccf_print @1135 + iirdecim_cccf_reset @1136 + iirdecim_crcf_create @1137 + iirdecim_crcf_create_default @1138 + iirdecim_crcf_create_prototype @1139 + iirdecim_crcf_destroy @1140 + iirdecim_crcf_execute @1141 + iirdecim_crcf_execute_block @1142 + iirdecim_crcf_groupdelay @1143 + iirdecim_crcf_print @1144 + iirdecim_crcf_reset @1145 + iirdecim_rrrf_create @1146 + iirdecim_rrrf_create_default @1147 + iirdecim_rrrf_create_prototype @1148 + iirdecim_rrrf_destroy @1149 + iirdecim_rrrf_execute @1150 + iirdecim_rrrf_execute_block @1151 + iirdecim_rrrf_groupdelay @1152 + iirdecim_rrrf_print @1153 + iirdecim_rrrf_reset @1154 + iirdes_dzpk2sosf @1155 + iirdes_dzpk2tff @1156 + iirdes_dzpk_lp2bp @1157 + iirdes_dzpk_lp2hp @1158 + iirdes_freqprewarp @1159 + iirdes_isstable @1160 + iirdes_pll_active_PI @1161 + iirdes_pll_active_lag @1162 + iirfilt_cccf_create @1163 + iirfilt_cccf_create_dc_blocker @1164 + iirfilt_cccf_create_differentiator @1165 + iirfilt_cccf_create_integrator @1166 + iirfilt_cccf_create_lowpass @1167 + iirfilt_cccf_create_pll @1168 + iirfilt_cccf_create_prototype @1169 + iirfilt_cccf_create_sos @1170 + iirfilt_cccf_destroy @1171 + iirfilt_cccf_execute @1172 + iirfilt_cccf_execute_block @1173 + iirfilt_cccf_execute_norm @1174 + iirfilt_cccf_execute_sos @1175 + iirfilt_cccf_freqresponse @1176 + iirfilt_cccf_get_length @1177 + iirfilt_cccf_groupdelay @1178 + iirfilt_cccf_init @1179 + iirfilt_cccf_print @1180 + iirfilt_cccf_reset @1181 + iirfilt_crcf_create @1182 + iirfilt_crcf_create_dc_blocker @1183 + iirfilt_crcf_create_differentiator @1184 + iirfilt_crcf_create_integrator @1185 + iirfilt_crcf_create_lowpass @1186 + iirfilt_crcf_create_pll @1187 + iirfilt_crcf_create_prototype @1188 + iirfilt_crcf_create_sos @1189 + iirfilt_crcf_destroy @1190 + iirfilt_crcf_execute @1191 + iirfilt_crcf_execute_block @1192 + iirfilt_crcf_execute_norm @1193 + iirfilt_crcf_execute_sos @1194 + iirfilt_crcf_freqresponse @1195 + iirfilt_crcf_get_length @1196 + iirfilt_crcf_groupdelay @1197 + iirfilt_crcf_init @1198 + iirfilt_crcf_print @1199 + iirfilt_crcf_reset @1200 + iirfilt_rrrf_create @1201 + iirfilt_rrrf_create_dc_blocker @1202 + iirfilt_rrrf_create_differentiator @1203 + iirfilt_rrrf_create_integrator @1204 + iirfilt_rrrf_create_lowpass @1205 + iirfilt_rrrf_create_pll @1206 + iirfilt_rrrf_create_prototype @1207 + iirfilt_rrrf_create_sos @1208 + iirfilt_rrrf_destroy @1209 + iirfilt_rrrf_execute @1210 + iirfilt_rrrf_execute_block @1211 + iirfilt_rrrf_execute_norm @1212 + iirfilt_rrrf_execute_sos @1213 + iirfilt_rrrf_freqresponse @1214 + iirfilt_rrrf_get_length @1215 + iirfilt_rrrf_groupdelay @1216 + iirfilt_rrrf_init @1217 + iirfilt_rrrf_print @1218 + iirfilt_rrrf_reset @1219 + iirfiltsos_cccf_create @1220 + iirfiltsos_cccf_destroy @1221 + iirfiltsos_cccf_execute @1222 + iirfiltsos_cccf_execute_df1 @1223 + iirfiltsos_cccf_execute_df2 @1224 + iirfiltsos_cccf_groupdelay @1225 + iirfiltsos_cccf_print @1226 + iirfiltsos_cccf_reset @1227 + iirfiltsos_cccf_set_coefficients @1228 + iirfiltsos_crcf_create @1229 + iirfiltsos_crcf_destroy @1230 + iirfiltsos_crcf_execute @1231 + iirfiltsos_crcf_execute_df1 @1232 + iirfiltsos_crcf_execute_df2 @1233 + iirfiltsos_crcf_groupdelay @1234 + iirfiltsos_crcf_print @1235 + iirfiltsos_crcf_reset @1236 + iirfiltsos_crcf_set_coefficients @1237 + iirfiltsos_rrrf_create @1238 + iirfiltsos_rrrf_destroy @1239 + iirfiltsos_rrrf_execute @1240 + iirfiltsos_rrrf_execute_df1 @1241 + iirfiltsos_rrrf_execute_df2 @1242 + iirfiltsos_rrrf_groupdelay @1243 + iirfiltsos_rrrf_print @1244 + iirfiltsos_rrrf_reset @1245 + iirfiltsos_rrrf_set_coefficients @1246 + iirhilbf_c2r_execute @1247 + iirhilbf_create @1248 + iirhilbf_create_default @1249 + iirhilbf_decim_execute @1250 + iirhilbf_decim_execute_block @1251 + iirhilbf_destroy @1252 + iirhilbf_interp_execute @1253 + iirhilbf_interp_execute_block @1254 + iirhilbf_print @1255 + iirhilbf_r2c_execute @1256 + iirhilbf_reset @1257 + iirinterp_cccf_create @1258 + iirinterp_cccf_create_default @1259 + iirinterp_cccf_create_prototype @1260 + iirinterp_cccf_destroy @1261 + iirinterp_cccf_execute @1262 + iirinterp_cccf_execute_block @1263 + iirinterp_cccf_groupdelay @1264 + iirinterp_cccf_print @1265 + iirinterp_cccf_reset @1266 + iirinterp_crcf_create @1267 + iirinterp_crcf_create_default @1268 + iirinterp_crcf_create_prototype @1269 + iirinterp_crcf_destroy @1270 + iirinterp_crcf_execute @1271 + iirinterp_crcf_execute_block @1272 + iirinterp_crcf_groupdelay @1273 + iirinterp_crcf_print @1274 + iirinterp_crcf_reset @1275 + iirinterp_rrrf_create @1276 + iirinterp_rrrf_create_default @1277 + iirinterp_rrrf_create_prototype @1278 + iirinterp_rrrf_destroy @1279 + iirinterp_rrrf_execute @1280 + iirinterp_rrrf_execute_block @1281 + iirinterp_rrrf_groupdelay @1282 + iirinterp_rrrf_print @1283 + iirinterp_rrrf_reset @1284 + interleaver_create @1285 + interleaver_decode @1286 + interleaver_decode_soft @1287 + interleaver_destroy @1288 + interleaver_encode @1289 + interleaver_encode_soft @1290 + interleaver_permute @1291 + interleaver_permute_mask @1292 + interleaver_permute_mask_soft @1293 + interleaver_permute_soft @1294 + interleaver_print @1295 + interleaver_set_depth @1296 + kaiser_beta_As @1297 + landenf @1298 + liquid_MarcumQ1f @1299 + liquid_MarcumQf @1300 + liquid_Qf @1301 + liquid_apsk128 @1302 DATA + liquid_apsk16 @1303 DATA + liquid_apsk256 @1304 DATA + liquid_apsk32 @1305 DATA + liquid_apsk4 @1306 DATA + liquid_apsk64 @1307 DATA + liquid_apsk8 @1308 DATA + liquid_asechf @1309 + liquid_bdotprod @1310 + liquid_besseli0f @1311 + liquid_besselif @1312 + liquid_besselj0f @1313 + liquid_besseljf @1314 + liquid_blackmanharris @1315 + liquid_blackmanharris7 @1316 + liquid_c_leading_zeros @1317 DATA + liquid_c_ones @1318 DATA + liquid_c_ones_mod2 @1319 DATA + liquid_cacosf @1320 + liquid_cargf_approx @1321 + liquid_casinf @1322 + liquid_catanf @1323 + liquid_cexpf @1324 + liquid_clogf @1325 + liquid_cosf @1326 + liquid_count_leading_zeros @1327 + liquid_count_ones @1328 + liquid_count_ones_mod2 @1329 + liquid_cplxpair @1330 + liquid_cplxpair_cleanup @1331 + liquid_csqrtf @1332 + liquid_error_config_fl @1333 + liquid_error_fl @1334 + liquid_error_info @1335 + liquid_error_str @1336 DATA + liquid_expf @1337 + liquid_factor @1338 + liquid_factorialf @1339 + liquid_fft_estimate_method @1340 + liquid_filter_autocorr @1341 + liquid_filter_crosscorr @1342 + liquid_filter_energy @1343 + liquid_filter_isi @1344 + liquid_firdes_arkaiser @1345 + liquid_firdes_doppler @1346 + liquid_firdes_farcsech @1347 + liquid_firdes_farcsech_freqresponse @1348 + liquid_firdes_fexp @1349 + liquid_firdes_fexp_freqresponse @1350 + liquid_firdes_fnyquist @1351 + liquid_firdes_fsech @1352 + liquid_firdes_fsech_freqresponse @1353 + liquid_firdes_gmskrx @1354 + liquid_firdes_gmsktx @1355 + liquid_firdes_hM3 @1356 + liquid_firdes_kaiser @1357 + liquid_firdes_notch @1358 + liquid_firdes_prototype @1359 + liquid_firdes_rcos @1360 + liquid_firdes_rfarcsech @1361 + liquid_firdes_rfexp @1362 + liquid_firdes_rfsech @1363 + liquid_firdes_rkaiser @1364 + liquid_firdes_rkaiser_bisection @1365 + liquid_firdes_rkaiser_internal_isi @1366 + liquid_firdes_rkaiser_quadratic @1367 + liquid_firdes_rrcos @1368 + liquid_firfilt_type_str @1369 DATA + liquid_flattop @1370 + liquid_gammaf @1371 + liquid_gcd @1372 + liquid_get_scale @1373 + liquid_getopt_str2crc @1374 + liquid_getopt_str2fec @1375 + liquid_getopt_str2firfilt @1376 + liquid_getopt_str2mod @1377 + liquid_getopt_str2window @1378 + liquid_hamming @1379 + liquid_hann @1380 + liquid_iirdes @1381 + liquid_invgauss @1382 + liquid_is_prime @1383 + liquid_kaiser @1384 + liquid_kbd @1385 + liquid_kbd_window @1386 + liquid_lbcircshift @1387 + liquid_lbshift @1388 + liquid_lcircshift @1389 + liquid_levinson @1390 + liquid_libversion @1391 + liquid_libversion_number @1392 + liquid_lnbesselif @1393 + liquid_lngammaf @1394 + liquid_lnlowergammaf @1395 + liquid_lnuppergammaf @1396 + liquid_logf @1397 + liquid_lowergammaf @1398 + liquid_lpc @1399 + liquid_lshift @1400 + liquid_modem_is_apsk @1401 + liquid_modem_is_ask @1402 + liquid_modem_is_dpsk @1403 + liquid_modem_is_psk @1404 + liquid_modem_is_qam @1405 + liquid_modpow @1406 + liquid_msb_index @1407 + liquid_multimodal @1408 + liquid_nchoosek @1409 + liquid_nextpow2 @1410 + liquid_pack_array @1411 + liquid_pack_bytes @1412 + liquid_pack_soft_bits @1413 + liquid_primitive_root @1414 + liquid_primitive_root_prime @1415 + liquid_print_bitstring @1416 + liquid_print_crc_schemes @1417 + liquid_print_fec_schemes @1418 + liquid_print_modulation_schemes @1419 + liquid_print_windows @1420 + liquid_rbcircshift @1421 + liquid_rbshift @1422 + liquid_rcircshift @1423 + liquid_rcostaper_window @1424 + liquid_repack_bytes @1425 + liquid_reverse_byte @1426 + liquid_reverse_byte_gentab @1427 DATA + liquid_reverse_uint16 @1428 + liquid_reverse_uint24 @1429 + liquid_reverse_uint32 @1430 + liquid_rosenbrock @1431 + liquid_rshift @1432 + liquid_sincosf @1433 + liquid_sinf @1434 + liquid_spiral @1435 + liquid_sumsqcf @1436 + liquid_sumsqf @1437 + liquid_tanf @1438 + liquid_totient @1439 + liquid_triangular @1440 + liquid_unique_factor @1441 + liquid_unpack_array @1442 + liquid_unpack_bytes @1443 + liquid_unpack_soft_bits @1444 + liquid_unwrap_phase @1445 + liquid_unwrap_phase2 @1446 + liquid_uppergammaf @1447 + liquid_vectorcf_abs @1448 + liquid_vectorcf_add @1449 + liquid_vectorcf_addscalar @1450 + liquid_vectorcf_carg @1451 + liquid_vectorcf_cexpj @1452 + liquid_vectorcf_mul @1453 + liquid_vectorcf_mulscalar @1454 + liquid_vectorcf_norm @1455 + liquid_vectorcf_normalize @1456 + liquid_vectorf_abs @1457 + liquid_vectorf_add @1458 + liquid_vectorf_addscalar @1459 + liquid_vectorf_carg @1460 + liquid_vectorf_cexpj @1461 + liquid_vectorf_mul @1462 + liquid_vectorf_mulscalar @1463 + liquid_vectorf_norm @1464 + liquid_vectorf_normalize @1465 + liquid_version @1466 DATA + liquid_window_str @1467 DATA + liquid_windowf @1468 + matrix_add @1469 + matrix_aug @1470 + matrix_cgsolve @1471 + matrix_chol @1472 + matrix_det @1473 + matrix_det2x2 @1474 + matrix_div @1475 + matrix_eye @1476 + matrix_gjelim @1477 + matrix_gramschmidt @1478 + matrix_hermitian @1479 + matrix_hermitian_mul @1480 + matrix_inv @1481 + matrix_linsolve @1482 + matrix_ludecomp_crout @1483 + matrix_ludecomp_doolittle @1484 + matrix_mul @1485 + matrix_mul_hermitian @1486 + matrix_mul_transpose @1487 + matrix_ones @1488 + matrix_pdiv @1489 + matrix_pivot @1490 + matrix_pmul @1491 + matrix_print @1492 + matrix_proj @1493 + matrix_qrdecomp_gramschmidt @1494 + matrix_sub @1495 + matrix_swaprows @1496 + matrix_trans @1497 + matrix_transpose_mul @1498 + matrix_zeros @1499 + matrixc_add @1500 + matrixc_aug @1501 + matrixc_cgsolve @1502 + matrixc_chol @1503 + matrixc_det @1504 + matrixc_det2x2 @1505 + matrixc_div @1506 + matrixc_eye @1507 + matrixc_gjelim @1508 + matrixc_gramschmidt @1509 + matrixc_hermitian @1510 + matrixc_hermitian_mul @1511 + matrixc_inv @1512 + matrixc_linsolve @1513 + matrixc_ludecomp_crout @1514 + matrixc_ludecomp_doolittle @1515 + matrixc_mul @1516 + matrixc_mul_hermitian @1517 + matrixc_mul_transpose @1518 + matrixc_ones @1519 + matrixc_pdiv @1520 + matrixc_pivot @1521 + matrixc_pmul @1522 + matrixc_print @1523 + matrixc_proj @1524 + matrixc_qrdecomp_gramschmidt @1525 + matrixc_sub @1526 + matrixc_swaprows @1527 + matrixc_trans @1528 + matrixc_transpose_mul @1529 + matrixc_zeros @1530 + matrixcf_add @1531 + matrixcf_aug @1532 + matrixcf_cgsolve @1533 + matrixcf_chol @1534 + matrixcf_det @1535 + matrixcf_det2x2 @1536 + matrixcf_div @1537 + matrixcf_eye @1538 + matrixcf_gjelim @1539 + matrixcf_gramschmidt @1540 + matrixcf_hermitian @1541 + matrixcf_hermitian_mul @1542 + matrixcf_inv @1543 + matrixcf_linsolve @1544 + matrixcf_ludecomp_crout @1545 + matrixcf_ludecomp_doolittle @1546 + matrixcf_mul @1547 + matrixcf_mul_hermitian @1548 + matrixcf_mul_transpose @1549 + matrixcf_ones @1550 + matrixcf_pdiv @1551 + matrixcf_pivot @1552 + matrixcf_pmul @1553 + matrixcf_print @1554 + matrixcf_proj @1555 + matrixcf_qrdecomp_gramschmidt @1556 + matrixcf_sub @1557 + matrixcf_swaprows @1558 + matrixcf_trans @1559 + matrixcf_transpose_mul @1560 + matrixcf_zeros @1561 + matrixf_add @1562 + matrixf_aug @1563 + matrixf_cgsolve @1564 + matrixf_chol @1565 + matrixf_det @1566 + matrixf_det2x2 @1567 + matrixf_div @1568 + matrixf_eye @1569 + matrixf_gjelim @1570 + matrixf_gramschmidt @1571 + matrixf_hermitian @1572 + matrixf_hermitian_mul @1573 + matrixf_inv @1574 + matrixf_linsolve @1575 + matrixf_ludecomp_crout @1576 + matrixf_ludecomp_doolittle @1577 + matrixf_mul @1578 + matrixf_mul_hermitian @1579 + matrixf_mul_transpose @1580 + matrixf_ones @1581 + matrixf_pdiv @1582 + matrixf_pivot @1583 + matrixf_pmul @1584 + matrixf_print @1585 + matrixf_proj @1586 + matrixf_qrdecomp_gramschmidt @1587 + matrixf_sub @1588 + matrixf_swaprows @1589 + matrixf_trans @1590 + matrixf_transpose_mul @1591 + matrixf_zeros @1592 + modem_arb128opt @1593 DATA + modem_arb16opt @1594 DATA + modem_arb256opt @1595 DATA + modem_arb32opt @1596 DATA + modem_arb64opt @1597 DATA + modem_arb_V29 @1598 DATA + modem_arb_balance_iq @1599 + modem_arb_init @1600 + modem_arb_init_file @1601 + modem_arb_scale @1602 + modem_arb_sqam128 @1603 DATA + modem_arb_sqam32 @1604 DATA + modem_arb_vt64 @1605 DATA + modem_create @1606 + modem_create_V29 @1607 + modem_create_apsk @1608 + modem_create_arb @1609 + modem_create_arb128opt @1610 + modem_create_arb16opt @1611 + modem_create_arb256opt @1612 + modem_create_arb32opt @1613 + modem_create_arb64opt @1614 + modem_create_arb64vt @1615 + modem_create_arbitrary @1616 + modem_create_ask @1617 + modem_create_bpsk @1618 + modem_create_dpsk @1619 + modem_create_ook @1620 + modem_create_psk @1621 + modem_create_qam @1622 + modem_create_qpsk @1623 + modem_create_sqam128 @1624 + modem_create_sqam32 @1625 + modem_demodsoft_gentab @1626 + modem_demodulate @1627 + modem_demodulate_apsk @1628 + modem_demodulate_arb @1629 + modem_demodulate_ask @1630 + modem_demodulate_bpsk @1631 + modem_demodulate_dpsk @1632 + modem_demodulate_linear_array @1633 + modem_demodulate_linear_array_ref @1634 + modem_demodulate_ook @1635 + modem_demodulate_psk @1636 + modem_demodulate_qam @1637 + modem_demodulate_qpsk @1638 + modem_demodulate_soft @1639 + modem_demodulate_soft_arb @1640 + modem_demodulate_soft_bpsk @1641 + modem_demodulate_soft_qpsk @1642 + modem_demodulate_soft_table @1643 + modem_demodulate_sqam128 @1644 + modem_demodulate_sqam32 @1645 + modem_destroy @1646 + modem_gen_rand_sym @1647 + modem_get_bps @1648 + modem_get_demodulator_evm @1649 + modem_get_demodulator_phase_error @1650 + modem_get_demodulator_sample @1651 + modem_get_scheme @1652 + modem_init @1653 + modem_init_map @1654 + modem_modulate @1655 + modem_modulate_apsk @1656 + modem_modulate_arb @1657 + modem_modulate_ask @1658 + modem_modulate_bpsk @1659 + modem_modulate_dpsk @1660 + modem_modulate_map @1661 + modem_modulate_ook @1662 + modem_modulate_psk @1663 + modem_modulate_qam @1664 + modem_modulate_qpsk @1665 + modem_modulate_sqam128 @1666 + modem_modulate_sqam32 @1667 + modem_print @1668 + modem_recreate @1669 + modem_reset @1670 + modulation_types @1671 DATA + msequence_advance @1672 + msequence_create @1673 + msequence_create_default @1674 + msequence_create_genpoly @1675 + msequence_default @1676 DATA + msequence_destroy @1677 + msequence_generate_symbol @1678 + msequence_get_length @1679 + msequence_get_state @1680 + msequence_print @1681 + msequence_reset @1682 + msequence_set_state @1683 + msourcecf_add_chirp @1684 + msourcecf_add_fsk @1685 + msourcecf_add_gmsk @1686 + msourcecf_add_modem @1687 + msourcecf_add_noise @1688 + msourcecf_add_source @1689 + msourcecf_add_tone @1690 + msourcecf_add_user @1691 + msourcecf_create @1692 + msourcecf_create_default @1693 + msourcecf_destroy @1694 + msourcecf_disable @1695 + msourcecf_enable @1696 + msourcecf_find @1697 + msourcecf_generate @1698 + msourcecf_get_frequency @1699 + msourcecf_get_gain @1700 + msourcecf_get_num_samples @1701 + msourcecf_get_source @1702 + msourcecf_print @1703 + msourcecf_remove @1704 + msourcecf_reset @1705 + msourcecf_set_frequency @1706 + msourcecf_set_gain @1707 + msourcecf_write_samples @1708 + msresamp2_cccf_create @1709 + msresamp2_cccf_decim_execute @1710 + msresamp2_cccf_destroy @1711 + msresamp2_cccf_execute @1712 + msresamp2_cccf_get_delay @1713 + msresamp2_cccf_get_num_stages @1714 + msresamp2_cccf_get_rate @1715 + msresamp2_cccf_get_type @1716 + msresamp2_cccf_interp_execute @1717 + msresamp2_cccf_print @1718 + msresamp2_cccf_reset @1719 + msresamp2_crcf_create @1720 + msresamp2_crcf_decim_execute @1721 + msresamp2_crcf_destroy @1722 + msresamp2_crcf_execute @1723 + msresamp2_crcf_get_delay @1724 + msresamp2_crcf_get_num_stages @1725 + msresamp2_crcf_get_rate @1726 + msresamp2_crcf_get_type @1727 + msresamp2_crcf_interp_execute @1728 + msresamp2_crcf_print @1729 + msresamp2_crcf_reset @1730 + msresamp2_rrrf_create @1731 + msresamp2_rrrf_decim_execute @1732 + msresamp2_rrrf_destroy @1733 + msresamp2_rrrf_execute @1734 + msresamp2_rrrf_get_delay @1735 + msresamp2_rrrf_get_num_stages @1736 + msresamp2_rrrf_get_rate @1737 + msresamp2_rrrf_get_type @1738 + msresamp2_rrrf_interp_execute @1739 + msresamp2_rrrf_print @1740 + msresamp2_rrrf_reset @1741 + msresamp_cccf_create @1742 + msresamp_cccf_decim_execute @1743 + msresamp_cccf_destroy @1744 + msresamp_cccf_execute @1745 + msresamp_cccf_get_delay @1746 + msresamp_cccf_get_rate @1747 + msresamp_cccf_interp_execute @1748 + msresamp_cccf_print @1749 + msresamp_cccf_reset @1750 + msresamp_crcf_create @1751 + msresamp_crcf_decim_execute @1752 + msresamp_crcf_destroy @1753 + msresamp_crcf_execute @1754 + msresamp_crcf_get_delay @1755 + msresamp_crcf_get_rate @1756 + msresamp_crcf_interp_execute @1757 + msresamp_crcf_print @1758 + msresamp_crcf_reset @1759 + msresamp_rrrf_create @1760 + msresamp_rrrf_decim_execute @1761 + msresamp_rrrf_destroy @1762 + msresamp_rrrf_execute @1763 + msresamp_rrrf_get_delay @1764 + msresamp_rrrf_get_rate @1765 + msresamp_rrrf_interp_execute @1766 + msresamp_rrrf_print @1767 + msresamp_rrrf_reset @1768 + nco_crcf_adjust_frequency @1769 + nco_crcf_adjust_phase @1770 + nco_crcf_cexpf @1771 + nco_crcf_constrain @1772 + nco_crcf_cos @1773 + nco_crcf_create @1774 + nco_crcf_destroy @1775 + nco_crcf_get_frequency @1776 + nco_crcf_get_phase @1777 + nco_crcf_index @1778 + nco_crcf_mix_block_down @1779 + nco_crcf_mix_block_up @1780 + nco_crcf_mix_down @1781 + nco_crcf_mix_up @1782 + nco_crcf_pll_reset @1783 + nco_crcf_pll_set_bandwidth @1784 + nco_crcf_pll_step @1785 + nco_crcf_print @1786 + nco_crcf_reset @1787 + nco_crcf_set_frequency @1788 + nco_crcf_set_phase @1789 + nco_crcf_sin @1790 + nco_crcf_sincos @1791 + nco_crcf_step @1792 + ofdmflexframegen_assemble @1793 + ofdmflexframegen_create @1794 + ofdmflexframegen_destroy @1795 + ofdmflexframegen_encode_header @1796 + ofdmflexframegen_gen_S0a @1797 + ofdmflexframegen_gen_S0b @1798 + ofdmflexframegen_gen_S1 @1799 + ofdmflexframegen_gen_header @1800 + ofdmflexframegen_gen_payload @1801 + ofdmflexframegen_gen_symbol @1802 + ofdmflexframegen_gen_tail @1803 + ofdmflexframegen_gen_zeros @1804 + ofdmflexframegen_getframelen @1805 + ofdmflexframegen_getprops @1806 + ofdmflexframegen_is_assembled @1807 + ofdmflexframegen_modulate_header @1808 + ofdmflexframegen_print @1809 + ofdmflexframegen_reconfigure @1810 + ofdmflexframegen_reset @1811 + ofdmflexframegen_set_header_len @1812 + ofdmflexframegen_set_header_props @1813 + ofdmflexframegen_setprops @1814 + ofdmflexframegen_write @1815 + ofdmflexframegenprops_init_default @1816 + ofdmflexframesync_create @1817 + ofdmflexframesync_debug_disable @1818 + ofdmflexframesync_debug_enable @1819 + ofdmflexframesync_debug_print @1820 + ofdmflexframesync_decode_header @1821 + ofdmflexframesync_decode_header_soft @1822 + ofdmflexframesync_decode_payload_soft @1823 + ofdmflexframesync_destroy @1824 + ofdmflexframesync_execute @1825 + ofdmflexframesync_get_cfo @1826 + ofdmflexframesync_get_framedatastats @1827 + ofdmflexframesync_get_rssi @1828 + ofdmflexframesync_internal_callback @1829 + ofdmflexframesync_is_frame_open @1830 + ofdmflexframesync_print @1831 + ofdmflexframesync_reset @1832 + ofdmflexframesync_reset_framedatastats @1833 + ofdmflexframesync_rxheader @1834 + ofdmflexframesync_rxpayload @1835 + ofdmflexframesync_set_cfo @1836 + ofdmflexframesync_set_header_len @1837 + ofdmflexframesync_set_header_props @1838 + ofdmframe_init_S0 @1839 + ofdmframe_init_S1 @1840 + ofdmframe_init_default_sctype @1841 + ofdmframe_init_sctype_range @1842 + ofdmframe_print_sctype @1843 + ofdmframe_validate_sctype @1844 + ofdmframegen_create @1845 + ofdmframegen_destroy @1846 + ofdmframegen_gensymbol @1847 + ofdmframegen_print @1848 + ofdmframegen_reset @1849 + ofdmframegen_write_S0a @1850 + ofdmframegen_write_S0b @1851 + ofdmframegen_write_S1 @1852 + ofdmframegen_writesymbol @1853 + ofdmframegen_writetail @1854 + ofdmframesync_S0_metrics @1855 + ofdmframesync_create @1856 + ofdmframesync_debug_disable @1857 + ofdmframesync_debug_enable @1858 + ofdmframesync_debug_print @1859 + ofdmframesync_destroy @1860 + ofdmframesync_estimate_eqgain @1861 + ofdmframesync_estimate_eqgain_poly @1862 + ofdmframesync_estimate_gain_S0 @1863 + ofdmframesync_estimate_gain_S1 @1864 + ofdmframesync_execute @1865 + ofdmframesync_execute_S0a @1866 + ofdmframesync_execute_S0b @1867 + ofdmframesync_execute_S1 @1868 + ofdmframesync_execute_rxsymbols @1869 + ofdmframesync_execute_seekplcp @1870 + ofdmframesync_get_cfo @1871 + ofdmframesync_get_rssi @1872 + ofdmframesync_is_frame_open @1873 + ofdmframesync_print @1874 + ofdmframesync_reset @1875 + ofdmframesync_rxsymbol @1876 + ofdmframesync_set_cfo @1877 + optim_sort @1878 + optim_threshold_switch @1879 + ordfilt_rrrf_create @1880 + ordfilt_rrrf_create_medfilt @1881 + ordfilt_rrrf_destroy @1882 + ordfilt_rrrf_execute @1883 + ordfilt_rrrf_execute_block @1884 + ordfilt_rrrf_print @1885 + ordfilt_rrrf_push @1886 + ordfilt_rrrf_reset @1887 + ordfilt_rrrf_write @1888 + ordfilt_sort_compf @1889 + packetizer_compute_dec_msg_len @1890 + packetizer_compute_enc_msg_len @1891 + packetizer_create @1892 + packetizer_decode @1893 + packetizer_decode_soft @1894 + packetizer_destroy @1895 + packetizer_encode @1896 + packetizer_get_crc @1897 + packetizer_get_dec_msg_len @1898 + packetizer_get_enc_msg_len @1899 + packetizer_get_fec0 @1900 + packetizer_get_fec1 @1901 + packetizer_print @1902 + packetizer_realloc_buffers @1903 + packetizer_recreate @1904 + packetizer_set_scheme @1905 + poly_expandbinomial @1906 + poly_expandbinomial_pm @1907 + poly_expandroots @1908 + poly_expandroots2 @1909 + poly_findroots @1910 + poly_findroots_bairstow @1911 + poly_findroots_bairstow_persistent @1912 + poly_findroots_bairstow_recursion @1913 + poly_findroots_durandkerner @1914 + poly_fit @1915 + poly_fit_lagrange @1916 + poly_fit_lagrange_barycentric @1917 + poly_interp_lagrange @1918 + poly_mul @1919 + poly_sort_roots_compare @1920 + poly_val @1921 + poly_val_lagrange_barycentric @1922 + polyc_expandbinomial @1923 + polyc_expandbinomial_pm @1924 + polyc_expandroots @1925 + polyc_expandroots2 @1926 + polyc_findroots @1927 + polyc_findroots_bairstow @1928 + polyc_findroots_bairstow_persistent @1929 + polyc_findroots_bairstow_recursion @1930 + polyc_findroots_durandkerner @1931 + polyc_fit @1932 + polyc_fit_lagrange @1933 + polyc_fit_lagrange_barycentric @1934 + polyc_interp_lagrange @1935 + polyc_mul @1936 + polyc_sort_roots_compare @1937 + polyc_val @1938 + polyc_val_lagrange_barycentric @1939 + polycf_expandbinomial @1940 + polycf_expandbinomial_pm @1941 + polycf_expandroots @1942 + polycf_expandroots2 @1943 + polycf_findroots @1944 + polycf_findroots_bairstow @1945 + polycf_findroots_bairstow_persistent @1946 + polycf_findroots_bairstow_recursion @1947 + polycf_findroots_durandkerner @1948 + polycf_fit @1949 + polycf_fit_lagrange @1950 + polycf_fit_lagrange_barycentric @1951 + polycf_interp_lagrange @1952 + polycf_mul @1953 + polycf_sort_roots_compare @1954 + polycf_val @1955 + polycf_val_lagrange_barycentric @1956 + polyf_expandbinomial @1957 + polyf_expandbinomial_pm @1958 + polyf_expandroots @1959 + polyf_expandroots2 @1960 + polyf_findroots @1961 + polyf_findroots_bairstow @1962 + polyf_findroots_bairstow_persistent @1963 + polyf_findroots_bairstow_recursion @1964 + polyf_findroots_durandkerner @1965 + polyf_fit @1966 + polyf_fit_lagrange @1967 + polyf_fit_lagrange_barycentric @1968 + polyf_interp_lagrange @1969 + polyf_mul @1970 + polyf_sort_roots_compare @1971 + polyf_val @1972 + polyf_val_lagrange_barycentric @1973 + presync_cccf_correlate @1974 + presync_cccf_create @1975 + presync_cccf_destroy @1976 + presync_cccf_execute @1977 + presync_cccf_print @1978 + presync_cccf_push @1979 + presync_cccf_reset @1980 + qdetector_cccf_create @1981 + qdetector_cccf_create_cpfsk @1982 + qdetector_cccf_create_gmsk @1983 + qdetector_cccf_create_linear @1984 + qdetector_cccf_destroy @1985 + qdetector_cccf_execute @1986 + qdetector_cccf_execute_align @1987 + qdetector_cccf_execute_seek @1988 + qdetector_cccf_get_buf_len @1989 + qdetector_cccf_get_dphi @1990 + qdetector_cccf_get_gamma @1991 + qdetector_cccf_get_phi @1992 + qdetector_cccf_get_rxy @1993 + qdetector_cccf_get_seq_len @1994 + qdetector_cccf_get_sequence @1995 + qdetector_cccf_get_tau @1996 + qdetector_cccf_print @1997 + qdetector_cccf_reset @1998 + qdetector_cccf_set_range @1999 + qdetector_cccf_set_threshold @2000 + qnsearch_compute_Hessian @2001 + qnsearch_compute_gradient @2002 + qnsearch_create @2003 + qnsearch_destroy @2004 + qnsearch_normalize_gradient @2005 + qnsearch_print @2006 + qnsearch_reset @2007 + qnsearch_run @2008 + qnsearch_step @2009 + qpacketmodem_configure @2010 + qpacketmodem_create @2011 + qpacketmodem_decode @2012 + qpacketmodem_decode_bits @2013 + qpacketmodem_decode_soft @2014 + qpacketmodem_decode_soft_payload @2015 + qpacketmodem_decode_soft_sym @2016 + qpacketmodem_decode_syms @2017 + qpacketmodem_destroy @2018 + qpacketmodem_encode @2019 + qpacketmodem_encode_syms @2020 + qpacketmodem_get_crc @2021 + qpacketmodem_get_demodulator_evm @2022 + qpacketmodem_get_demodulator_phase_error @2023 + qpacketmodem_get_fec0 @2024 + qpacketmodem_get_fec1 @2025 + qpacketmodem_get_frame_len @2026 + qpacketmodem_get_modscheme @2027 + qpacketmodem_get_payload_len @2028 + qpacketmodem_print @2029 + qpacketmodem_reset @2030 + qpilot_frame_len @2031 + qpilot_num_pilots @2032 + qpilotgen_create @2033 + qpilotgen_destroy @2034 + qpilotgen_execute @2035 + qpilotgen_get_frame_len @2036 + qpilotgen_print @2037 + qpilotgen_recreate @2038 + qpilotgen_reset @2039 + qpilotsync_create @2040 + qpilotsync_destroy @2041 + qpilotsync_execute @2042 + qpilotsync_get_dphi @2043 + qpilotsync_get_evm @2044 + qpilotsync_get_frame_len @2045 + qpilotsync_get_gain @2046 + qpilotsync_get_phi @2047 + qpilotsync_print @2048 + qpilotsync_recreate @2049 + qpilotsync_reset @2050 + qsourcecf_create @2051 + qsourcecf_destroy @2052 + qsourcecf_disable @2053 + qsourcecf_enable @2054 + qsourcecf_generate @2055 + qsourcecf_generate_into @2056 + qsourcecf_get_frequency @2057 + qsourcecf_get_gain @2058 + qsourcecf_get_id @2059 + qsourcecf_get_num_samples @2060 + qsourcecf_init_chirp @2061 + qsourcecf_init_fsk @2062 + qsourcecf_init_gmsk @2063 + qsourcecf_init_modem @2064 + qsourcecf_init_noise @2065 + qsourcecf_init_tone @2066 + qsourcecf_init_user @2067 + qsourcecf_print @2068 + qsourcecf_reset @2069 + qsourcecf_set_frequency @2070 + qsourcecf_set_gain @2071 + qsourcecf_set_id @2072 + quantize_adc @2073 + quantize_dac @2074 + quantizercf_create @2075 + quantizercf_destroy @2076 + quantizercf_execute_adc @2077 + quantizercf_execute_dac @2078 + quantizercf_print @2079 + quantizerf_create @2080 + quantizerf_destroy @2081 + quantizerf_execute_adc @2082 + quantizerf_execute_dac @2083 + quantizerf_print @2084 + randexpf @2085 + randexpf_cdf @2086 + randexpf_pdf @2087 + randf @2088 + randf_cdf @2089 + randf_pdf @2090 + randgammaf @2091 + randgammaf_cdf @2092 + randgammaf_delta @2093 + randgammaf_pdf @2094 + randnakmf @2095 + randnakmf_cdf @2096 + randnakmf_pdf @2097 + randnf @2098 + randnf_cdf @2099 + randnf_pdf @2100 + randricekf @2101 + randricekf_cdf @2102 + randricekf_pdf @2103 + randuf @2104 + randuf_cdf @2105 + randuf_pdf @2106 + randweibf @2107 + randweibf_cdf @2108 + randweibf_pdf @2109 + resamp2_cccf_analyzer_execute @2110 + resamp2_cccf_create @2111 + resamp2_cccf_decim_execute @2112 + resamp2_cccf_destroy @2113 + resamp2_cccf_filter_execute @2114 + resamp2_cccf_get_delay @2115 + resamp2_cccf_interp_execute @2116 + resamp2_cccf_print @2117 + resamp2_cccf_recreate @2118 + resamp2_cccf_reset @2119 + resamp2_cccf_synthesizer_execute @2120 + resamp2_crcf_analyzer_execute @2121 + resamp2_crcf_create @2122 + resamp2_crcf_decim_execute @2123 + resamp2_crcf_destroy @2124 + resamp2_crcf_filter_execute @2125 + resamp2_crcf_get_delay @2126 + resamp2_crcf_interp_execute @2127 + resamp2_crcf_print @2128 + resamp2_crcf_recreate @2129 + resamp2_crcf_reset @2130 + resamp2_crcf_synthesizer_execute @2131 + resamp2_rrrf_analyzer_execute @2132 + resamp2_rrrf_create @2133 + resamp2_rrrf_decim_execute @2134 + resamp2_rrrf_destroy @2135 + resamp2_rrrf_filter_execute @2136 + resamp2_rrrf_get_delay @2137 + resamp2_rrrf_interp_execute @2138 + resamp2_rrrf_print @2139 + resamp2_rrrf_recreate @2140 + resamp2_rrrf_reset @2141 + resamp2_rrrf_synthesizer_execute @2142 + resamp_cccf_adjust_rate @2143 + resamp_cccf_adjust_timing_phase @2144 + resamp_cccf_create @2145 + resamp_cccf_create_default @2146 + resamp_cccf_destroy @2147 + resamp_cccf_execute @2148 + resamp_cccf_execute_block @2149 + resamp_cccf_get_delay @2150 + resamp_cccf_get_rate @2151 + resamp_cccf_print @2152 + resamp_cccf_reset @2153 + resamp_cccf_set_rate @2154 + resamp_cccf_set_timing_phase @2155 + resamp_crcf_adjust_rate @2156 + resamp_crcf_adjust_timing_phase @2157 + resamp_crcf_create @2158 + resamp_crcf_create_default @2159 + resamp_crcf_destroy @2160 + resamp_crcf_execute @2161 + resamp_crcf_execute_block @2162 + resamp_crcf_get_delay @2163 + resamp_crcf_get_rate @2164 + resamp_crcf_print @2165 + resamp_crcf_reset @2166 + resamp_crcf_set_rate @2167 + resamp_crcf_set_timing_phase @2168 + resamp_rrrf_adjust_rate @2169 + resamp_rrrf_adjust_timing_phase @2170 + resamp_rrrf_create @2171 + resamp_rrrf_create_default @2172 + resamp_rrrf_destroy @2173 + resamp_rrrf_execute @2174 + resamp_rrrf_execute_block @2175 + resamp_rrrf_get_delay @2176 + resamp_rrrf_get_rate @2177 + resamp_rrrf_print @2178 + resamp_rrrf_reset @2179 + resamp_rrrf_set_rate @2180 + resamp_rrrf_set_timing_phase @2181 + rkaiser_approximate_rho @2182 + rresamp_cccf_create @2183 + rresamp_cccf_create_default @2184 + rresamp_cccf_create_kaiser @2185 + rresamp_cccf_create_prototype @2186 + rresamp_cccf_destroy @2187 + rresamp_cccf_execute @2188 + rresamp_cccf_execute_primitive @2189 + rresamp_cccf_get_P @2190 + rresamp_cccf_get_Q @2191 + rresamp_cccf_get_block_len @2192 + rresamp_cccf_get_decim @2193 + rresamp_cccf_get_delay @2194 + rresamp_cccf_get_interp @2195 + rresamp_cccf_get_rate @2196 + rresamp_cccf_get_scale @2197 + rresamp_cccf_print @2198 + rresamp_cccf_reset @2199 + rresamp_cccf_set_scale @2200 + rresamp_crcf_create @2201 + rresamp_crcf_create_default @2202 + rresamp_crcf_create_kaiser @2203 + rresamp_crcf_create_prototype @2204 + rresamp_crcf_destroy @2205 + rresamp_crcf_execute @2206 + rresamp_crcf_execute_primitive @2207 + rresamp_crcf_get_P @2208 + rresamp_crcf_get_Q @2209 + rresamp_crcf_get_block_len @2210 + rresamp_crcf_get_decim @2211 + rresamp_crcf_get_delay @2212 + rresamp_crcf_get_interp @2213 + rresamp_crcf_get_rate @2214 + rresamp_crcf_get_scale @2215 + rresamp_crcf_print @2216 + rresamp_crcf_reset @2217 + rresamp_crcf_set_scale @2218 + rresamp_rrrf_create @2219 + rresamp_rrrf_create_default @2220 + rresamp_rrrf_create_kaiser @2221 + rresamp_rrrf_create_prototype @2222 + rresamp_rrrf_destroy @2223 + rresamp_rrrf_execute @2224 + rresamp_rrrf_execute_primitive @2225 + rresamp_rrrf_get_P @2226 + rresamp_rrrf_get_Q @2227 + rresamp_rrrf_get_block_len @2228 + rresamp_rrrf_get_decim @2229 + rresamp_rrrf_get_delay @2230 + rresamp_rrrf_get_interp @2231 + rresamp_rrrf_get_rate @2232 + rresamp_rrrf_get_scale @2233 + rresamp_rrrf_print @2234 + rresamp_rrrf_reset @2235 + rresamp_rrrf_set_scale @2236 + scramble_data @2237 + secded2216_P @2238 DATA + secded2216_syndrome_w1 @2239 DATA + secded3932_P @2240 DATA + secded3932_syndrome_w1 @2241 DATA + secded7264_P @2242 DATA + secded7264_syndrome_w1 @2243 DATA + sincf @2244 + smatrix_indexsearch @2245 + smatrixb_clear @2246 + smatrixb_create @2247 + smatrixb_create_array @2248 + smatrixb_delete @2249 + smatrixb_destroy @2250 + smatrixb_eye @2251 + smatrixb_get @2252 + smatrixb_insert @2253 + smatrixb_isset @2254 + smatrixb_mul @2255 + smatrixb_mulf @2256 + smatrixb_print @2257 + smatrixb_print_expanded @2258 + smatrixb_reset @2259 + smatrixb_reset_max_mlist @2260 + smatrixb_reset_max_nlist @2261 + smatrixb_set @2262 + smatrixb_size @2263 + smatrixb_vmul @2264 + smatrixb_vmulf @2265 + smatrixf_clear @2266 + smatrixf_create @2267 + smatrixf_create_array @2268 + smatrixf_delete @2269 + smatrixf_destroy @2270 + smatrixf_eye @2271 + smatrixf_get @2272 + smatrixf_insert @2273 + smatrixf_isset @2274 + smatrixf_mul @2275 + smatrixf_print @2276 + smatrixf_print_expanded @2277 + smatrixf_reset @2278 + smatrixf_reset_max_mlist @2279 + smatrixf_reset_max_nlist @2280 + smatrixf_set @2281 + smatrixf_size @2282 + smatrixf_vmul @2283 + smatrixi_clear @2284 + smatrixi_create @2285 + smatrixi_create_array @2286 + smatrixi_delete @2287 + smatrixi_destroy @2288 + smatrixi_eye @2289 + smatrixi_get @2290 + smatrixi_insert @2291 + smatrixi_isset @2292 + smatrixi_mul @2293 + smatrixi_print @2294 + smatrixi_print_expanded @2295 + smatrixi_reset @2296 + smatrixi_reset_max_mlist @2297 + smatrixi_reset_max_nlist @2298 + smatrixi_set @2299 + smatrixi_size @2300 + smatrixi_vmul @2301 + spgramcf_clear @2302 + spgramcf_create @2303 + spgramcf_create_default @2304 + spgramcf_destroy @2305 + spgramcf_estimate_psd @2306 + spgramcf_export_gnuplot @2307 + spgramcf_get_alpha @2308 + spgramcf_get_delay @2309 + spgramcf_get_nfft @2310 + spgramcf_get_num_samples @2311 + spgramcf_get_num_samples_total @2312 + spgramcf_get_num_transforms @2313 + spgramcf_get_num_transforms_total @2314 + spgramcf_get_psd @2315 + spgramcf_get_psd_mag @2316 + spgramcf_get_window_len @2317 + spgramcf_print @2318 + spgramcf_push @2319 + spgramcf_reset @2320 + spgramcf_set_alpha @2321 + spgramcf_set_freq @2322 + spgramcf_set_rate @2323 + spgramcf_step @2324 + spgramcf_write @2325 + spgramf_clear @2326 + spgramf_create @2327 + spgramf_create_default @2328 + spgramf_destroy @2329 + spgramf_estimate_psd @2330 + spgramf_export_gnuplot @2331 + spgramf_get_alpha @2332 + spgramf_get_delay @2333 + spgramf_get_nfft @2334 + spgramf_get_num_samples @2335 + spgramf_get_num_samples_total @2336 + spgramf_get_num_transforms @2337 + spgramf_get_num_transforms_total @2338 + spgramf_get_psd @2339 + spgramf_get_psd_mag @2340 + spgramf_get_window_len @2341 + spgramf_print @2342 + spgramf_push @2343 + spgramf_reset @2344 + spgramf_set_alpha @2345 + spgramf_set_freq @2346 + spgramf_set_rate @2347 + spgramf_step @2348 + spgramf_write @2349 + spwaterfallcf_clear @2350 + spwaterfallcf_consolidate_buffer @2351 + spwaterfallcf_create @2352 + spwaterfallcf_create_default @2353 + spwaterfallcf_destroy @2354 + spwaterfallcf_export @2355 + spwaterfallcf_export_bin @2356 + spwaterfallcf_export_gnu @2357 + spwaterfallcf_get_num_freq @2358 + spwaterfallcf_get_num_samples_total @2359 + spwaterfallcf_get_num_time @2360 + spwaterfallcf_get_psd @2361 + spwaterfallcf_print @2362 + spwaterfallcf_push @2363 + spwaterfallcf_reset @2364 + spwaterfallcf_set_commands @2365 + spwaterfallcf_set_dims @2366 + spwaterfallcf_set_freq @2367 + spwaterfallcf_set_rate @2368 + spwaterfallcf_step @2369 + spwaterfallcf_write @2370 + spwaterfallf_clear @2371 + spwaterfallf_consolidate_buffer @2372 + spwaterfallf_create @2373 + spwaterfallf_create_default @2374 + spwaterfallf_destroy @2375 + spwaterfallf_export @2376 + spwaterfallf_export_bin @2377 + spwaterfallf_export_gnu @2378 + spwaterfallf_get_num_freq @2379 + spwaterfallf_get_num_samples_total @2380 + spwaterfallf_get_num_time @2381 + spwaterfallf_get_psd @2382 + spwaterfallf_print @2383 + spwaterfallf_push @2384 + spwaterfallf_reset @2385 + spwaterfallf_set_commands @2386 + spwaterfallf_set_dims @2387 + spwaterfallf_set_freq @2388 + spwaterfallf_set_rate @2389 + spwaterfallf_step @2390 + spwaterfallf_write @2391 + sumproduct_phi @2392 + symstreamcf_create @2393 + symstreamcf_create_linear @2394 + symstreamcf_destroy @2395 + symstreamcf_fill_buffer @2396 + symstreamcf_get_gain @2397 + symstreamcf_get_scheme @2398 + symstreamcf_print @2399 + symstreamcf_reset @2400 + symstreamcf_set_gain @2401 + symstreamcf_set_scheme @2402 + symstreamcf_write_samples @2403 + symsync_crcf_advance_internal_loop @2404 + symsync_crcf_create @2405 + symsync_crcf_create_kaiser @2406 + symsync_crcf_create_rnyquist @2407 + symsync_crcf_destroy @2408 + symsync_crcf_execute @2409 + symsync_crcf_get_tau @2410 + symsync_crcf_lock @2411 + symsync_crcf_output_debug_file @2412 + symsync_crcf_print @2413 + symsync_crcf_reset @2414 + symsync_crcf_set_lf_bw @2415 + symsync_crcf_set_output_rate @2416 + symsync_crcf_step @2417 + symsync_crcf_unlock @2418 + symsync_rrrf_advance_internal_loop @2419 + symsync_rrrf_create @2420 + symsync_rrrf_create_kaiser @2421 + symsync_rrrf_create_rnyquist @2422 + symsync_rrrf_destroy @2423 + symsync_rrrf_execute @2424 + symsync_rrrf_get_tau @2425 + symsync_rrrf_lock @2426 + symsync_rrrf_output_debug_file @2427 + symsync_rrrf_print @2428 + symsync_rrrf_reset @2429 + symsync_rrrf_set_lf_bw @2430 + symsync_rrrf_set_output_rate @2431 + symsync_rrrf_step @2432 + symsync_rrrf_unlock @2433 + symtrack_cccf_adjust_phase @2434 + symtrack_cccf_create @2435 + symtrack_cccf_create_default @2436 + symtrack_cccf_destroy @2437 + symtrack_cccf_execute @2438 + symtrack_cccf_execute_block @2439 + symtrack_cccf_print @2440 + symtrack_cccf_reset @2441 + symtrack_cccf_set_bandwidth @2442 + symtrack_cccf_set_eq_cm @2443 + symtrack_cccf_set_eq_dd @2444 + symtrack_cccf_set_eq_off @2445 + symtrack_cccf_set_modscheme @2446 + synth_crcf_adjust_frequency @2447 + synth_crcf_adjust_phase @2448 + synth_crcf_compute_synth @2449 + synth_crcf_constrain_frequency @2450 + synth_crcf_constrain_phase @2451 + synth_crcf_create @2452 + synth_crcf_despread @2453 + synth_crcf_despread_triple @2454 + synth_crcf_destroy @2455 + synth_crcf_get_current @2456 + synth_crcf_get_frequency @2457 + synth_crcf_get_half_next @2458 + synth_crcf_get_half_previous @2459 + synth_crcf_get_length @2460 + synth_crcf_get_phase @2461 + synth_crcf_mix_block_down @2462 + synth_crcf_mix_block_up @2463 + synth_crcf_mix_down @2464 + synth_crcf_mix_up @2465 + synth_crcf_pll_reset @2466 + synth_crcf_pll_set_bandwidth @2467 + synth_crcf_pll_step @2468 + synth_crcf_reset @2469 + synth_crcf_set_frequency @2470 + synth_crcf_set_phase @2471 + synth_crcf_spread @2472 + synth_crcf_step @2473 + tvmpch_cccf_create @2474 + tvmpch_cccf_destroy @2475 + tvmpch_cccf_execute @2476 + tvmpch_cccf_execute_block @2477 + tvmpch_cccf_print @2478 + tvmpch_cccf_push @2479 + tvmpch_cccf_reset @2480 + unscramble_data @2481 + unscramble_data_soft @2482 + wdelaycf_create @2483 + wdelaycf_destroy @2484 + wdelaycf_print @2485 + wdelaycf_push @2486 + wdelaycf_read @2487 + wdelaycf_recreate @2488 + wdelaycf_reset @2489 + wdelayf_create @2490 + wdelayf_destroy @2491 + wdelayf_print @2492 + wdelayf_push @2493 + wdelayf_read @2494 + wdelayf_recreate @2495 + wdelayf_reset @2496 + windowcf_create @2497 + windowcf_debug_print @2498 + windowcf_destroy @2499 + windowcf_index @2500 + windowcf_print @2501 + windowcf_push @2502 + windowcf_read @2503 + windowcf_recreate @2504 + windowcf_reset @2505 + windowcf_write @2506 + windowf_create @2507 + windowf_debug_print @2508 + windowf_destroy @2509 + windowf_index @2510 + windowf_print @2511 + windowf_push @2512 + windowf_read @2513 + windowf_recreate @2514 + windowf_reset @2515 + windowf_write @2516 diff --git a/external/liquid-dsp/msvc/64/libliquid.dll b/external/liquid-dsp/msvc/64/libliquid.dll index 9ea312f..5312c31 100644 Binary files a/external/liquid-dsp/msvc/64/libliquid.dll and b/external/liquid-dsp/msvc/64/libliquid.dll differ diff --git a/external/liquid-dsp/msvc/64/libliquid.lib b/external/liquid-dsp/msvc/64/libliquid.lib index 33a40f6..ae2bd1b 100644 Binary files a/external/liquid-dsp/msvc/64/libliquid.lib and b/external/liquid-dsp/msvc/64/libliquid.lib differ diff --git a/external/msvc/x64/libwinpthread-1.dll b/external/msvc/x64/libwinpthread-1.dll index f7036bd..8600d7a 100644 Binary files a/external/msvc/x64/libwinpthread-1.dll and b/external/msvc/x64/libwinpthread-1.dll differ diff --git a/external/msvc/x86/libwinpthread-1.dll b/external/msvc/x86/libwinpthread-1.dll index 567cd31..020f4a7 100644 Binary files a/external/msvc/x86/libwinpthread-1.dll and b/external/msvc/x86/libwinpthread-1.dll differ