annotate dsp/signalconditioning/DFProcess.h @ 483:fdaa63607c15

Untabify, indent, tidy
author Chris Cannam <cannam@all-day-breakfast.com>
date Fri, 31 May 2019 11:54:32 +0100
parents fa851e147e3f
children 701233f8ed41
rev   line source
c@225 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
c@225 2
c@225 3 /*
c@225 4 QM DSP Library
c@225 5
c@225 6 Centre for Digital Music, Queen Mary, University of London.
c@309 7 This file 2005-2006 Christian Landone.
c@309 8
mathieu@321 9 Modifications:
mathieu@321 10
mathieu@321 11 - delta threshold
mathieu@321 12 Description: add delta threshold used as offset in the smoothed
mathieu@321 13 detection function
mathieu@321 14 Author: Mathieu Barthet
mathieu@321 15 Date: June 2010
mathieu@321 16
c@309 17 This program is free software; you can redistribute it and/or
c@309 18 modify it under the terms of the GNU General Public License as
c@309 19 published by the Free Software Foundation; either version 2 of the
c@309 20 License, or (at your option) any later version. See the file
c@309 21 COPYING included with this distribution for more information.
c@225 22 */
c@225 23
c@225 24 #ifndef CDFPROCESS_H
c@225 25 #define CDFPROCESS_H
c@225 26
c@225 27 #include <stdio.h>
c@225 28 #include "FiltFilt.h"
c@225 29
c@225 30 struct DFProcConfig{
c@225 31 unsigned int length;
c@225 32 unsigned int LPOrd;
c@225 33 double *LPACoeffs;
c@225 34 double *LPBCoeffs;
c@225 35 unsigned int winPre;
c@225 36 unsigned int winPost;
c@225 37 double AlphaNormParam;
c@237 38 bool isMedianPositive;
c@410 39 float delta; //delta threshold used as an offset when computing the smoothed detection function
c@410 40
c@410 41 DFProcConfig() :
c@410 42 length(0),
c@410 43 LPOrd(0),
c@410 44 LPACoeffs(NULL),
c@410 45 LPBCoeffs(NULL),
c@410 46 winPre(0),
c@410 47 winPost(0),
c@410 48 AlphaNormParam(0),
c@410 49 isMedianPositive(false),
c@410 50 delta(0)
c@410 51 {
c@410 52 }
c@237 53 };
c@225 54
c@225 55 class DFProcess
c@225 56 {
c@225 57 public:
c@225 58 DFProcess( DFProcConfig Config );
c@225 59 virtual ~DFProcess();
c@225 60
c@225 61 void process( double* src, double* dst );
c@225 62
cannam@483 63
c@225 64 private:
c@225 65 void initialise( DFProcConfig Config );
c@225 66 void deInitialise();
c@225 67 void removeDCNormalize( double *src, double*dst );
c@225 68 void medianFilter( double* src, double* dst );
c@225 69
c@299 70 int m_length;
c@299 71 int m_FFOrd;
c@225 72
c@299 73 int m_winPre;
c@299 74 int m_winPost;
c@225 75
c@225 76 double m_alphaNormParam;
c@225 77
c@225 78 double* filtSrc;
c@225 79 double* filtDst;
c@225 80
c@225 81 double* m_filtScratchIn;
c@225 82 double* m_filtScratchOut;
c@225 83
c@225 84 FiltFilt* m_FiltFilt;
c@225 85
c@225 86 bool m_isMedianPositive;
c@410 87 float m_delta; //add delta threshold
c@225 88 };
c@225 89
c@225 90 #endif