source: trunk/demos/spectrum/3rdparty/fftreal/fftreal_wrapper.h@ 769

Last change on this file since 769 was 769, checked in by Dmitry A. Kuminov, 15 years ago

trunk: Merged in qt 4.6.3 sources from branches/vendor/nokia/qt.

File size: 1.9 KB
Line 
1/***************************************************************************
2**
3** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
4** Contact: Nokia Corporation ([email protected])
5**
6** This file is part of the examples of the Qt Toolkit.
7**
8** This program is free software: you can redistribute it and/or modify
9** it under the terms of the GNU Lesser General Public License as
10** published by the Free Software Foundation, either version 2.1. This
11** program is distributed in the hope that it will be useful, but WITHOUT
12** ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13** FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14** for more details. You should have received a copy of the GNU General
15** Public License along with this program. If not, see
16** <http://www.gnu.org/licenses/>.
17**
18***************************************************************************/
19
20#ifndef FFTREAL_WRAPPER_H
21#define FFTREAL_WRAPPER_H
22
23#include <QtCore/QtGlobal>
24
25#if defined(FFTREAL_LIBRARY)
26# define FFTREAL_EXPORT Q_DECL_EXPORT
27#else
28# define FFTREAL_EXPORT Q_DECL_IMPORT
29#endif
30
31class FFTRealWrapperPrivate;
32
33// Each pass of the FFT processes 2^X samples, where X is the
34// number below.
35static const int FFTLengthPowerOfTwo = 12;
36
37/**
38 * Wrapper around the FFTRealFixLen template provided by the FFTReal
39 * library
40 *
41 * This class instantiates a single instance of FFTRealFixLen, using
42 * FFTLengthPowerOfTwo as the template parameter. It then exposes
43 * FFTRealFixLen<FFTLengthPowerOfTwo>::do_fft via the calculateFFT
44 * function, thereby allowing an application to dynamically link
45 * against the FFTReal implementation.
46 *
47 * See http://ldesoras.free.fr/prod.html
48 */
49class FFTREAL_EXPORT FFTRealWrapper
50{
51public:
52 FFTRealWrapper();
53 ~FFTRealWrapper();
54
55 typedef float DataType;
56 void calculateFFT(DataType in[], const DataType out[]);
57
58private:
59 FFTRealWrapperPrivate* m_private;
60};
61
62#endif // FFTREAL_WRAPPER_H
63
Note: See TracBrowser for help on using the repository browser.