Show decim.h syntax highlighted
/****************************************************************************
*
* Name: decim.h
*
* Synopsis:
*
* Decimates a real or complex signal. For more information about
* decimation, see dspGuru's Multirate FAQ at:
*
* http://www.dspguru.com/info/faqs/mrfaq.htm
*
* Description: See function descriptons below.
*
* by Grant R. Griffin
* Provided by Iowegian's "dspGuru" service (http://www.dspguru.com).
* Copyright 2001, Iowegian International Corporation (http://www.iowegian.com)
*
* The Wide Open License (WOL)
*
* Permission to use, copy, modify, distribute and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice and this license appear in all source copies.
* THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY OF
* ANY KIND. See http://www.dspguru.com/wol.htm for more information.
*
*****************************************************************************/
/*****************************************************************************
Description:
decim - "decimates" a signal by changing reducing its sampling rate by an
integral factor via FIR filtering.
Inputs:
factor_M:
the decimation factor (must be >= 1)
H_size:
the number of taps in the filter
p_H:
pointer to the array of coefficients for the resampling filter.
num_inp:
the number of input samples
p_inp:
pointer to the input samples
Input/Outputs:
p_Z:
pointer to the delay line array (which must have H_size elements)
Outputs:
p_out:
pointer to the output sample array.
p_num_out:
pointer to the number of output samples
*****************************************************************************/
void decim(int factor_M, int H_size, const double *const p_H,
double *const p_Z, int num_inp, const double *p_inp,
double *p_out, int *p_num_out);
void decimf(int factor_M, int H_size, const float *const p_H,
float *const p_Z, int num_inp, const float *p_inp,
float *p_out, int *p_num_out);
/*****************************************************************************
Description:
decim_complex - similar to decim except that it filters complex (real and
imaginary) inputs and outputs, using a real filter.
*****************************************************************************/
void decim_complex(int factor_M, int H_size, const double *const p_H,
double *const p_Z_real, double *const p_Z_imag,
int num_inp, const double *p_inp_real,
const double *p_inp_imag, double *p_out_real,
double *p_out_imag, int * p_num_out);
See more files for this project here
EmStar is a software system for developing and deploying wireless sensor networks involving Linux-based platforms. As the wireless sensor network community has attempted to deploy more complex designs---large-scale, long-lived systems that need self-organization and adaptivity---a number of difficult software design issues have arisen. Advances in software design have not kept pace with the capabilities of hardware. This is because designing for an adaptive, efficient, and useful sensor network has turned out to be surprisingly complex and difficult. EmStar is a Linux-based software framework, whose goal is to dramatically reduce this complexity, enabling work to be shared and reused, and simplifying and speeding the design of new sensor network applications.
Project homepage:
http://cvs.cens.ucla.edu/emstar/
Programming language(s): C,Shell Script
License: other
decim.h
nl.h