annotate dsp/signalconditioning/Framer.h @ 515:08bcc06c38ec tip master

Remove fast-math
author Chris Cannam <cannam@all-day-breakfast.com>
date Tue, 28 Jan 2020 15:27:37 +0000
parents 162673c8f9de
children
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
c@309 9 This program is free software; you can redistribute it and/or
c@309 10 modify it under the terms of the GNU General Public License as
c@309 11 published by the Free Software Foundation; either version 2 of the
c@309 12 License, or (at your option) any later version. See the file
c@309 13 COPYING included with this distribution for more information.
c@225 14 */
c@225 15
cannam@489 16 #ifndef QM_DSP_FRAMER_H
cannam@489 17 #define QM_DSP_FRAMER_H
c@225 18
cannam@502 19 #include <stdint.h>
cannam@502 20
c@225 21 class Framer
c@225 22 {
c@225 23 public:
c@225 24 Framer();
c@225 25 virtual ~Framer();
c@225 26
cannam@502 27 void setSource(double* src, int64_t length);
cannam@502 28 void configure(int frameLength, int hop);
cannam@502 29
cannam@502 30 int getMaxNoFrames();
cannam@502 31 void getFrame(double* dst);
cannam@502 32
c@225 33 void resetCounters();
c@225 34
c@225 35 private:
cannam@502 36 int64_t m_sampleLen; // DataLength (samples)
cannam@502 37 int m_framesRead; // Read Frames Index
cannam@502 38
cannam@502 39 double* m_srcBuffer;
cannam@502 40 double* m_dataFrame; // Analysis Frame Buffer
cannam@502 41 double* m_strideFrame; // Stride Frame Buffer
cannam@502 42 int m_frameLength; // Analysis Frame Length
cannam@502 43 int m_stepSize; // Analysis Frame Stride
c@225 44
cannam@502 45 int m_maxFrames;
c@225 46
cannam@502 47 int64_t m_srcIndex;
c@225 48 };
c@225 49
c@225 50 #endif