diff options
author | Michael Goddard <michael.goddard@nokia.com> | 2011-07-12 17:09:15 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-07-14 06:43:07 +0200 |
commit | e4f42348f1a7bbadc00d281e17f91b1bf04dead9 (patch) | |
tree | 517da82c042439bb4cb326f9a6c61cf5c15a302a /examples/spectrum/3rdparty/fftreal/FFTRealUseTrigo.hpp | |
parent | 1d82a1e1b47cb599480346d9ad77e35461c72d9a (diff) |
Move the QtMultimedia spectrum demo to QtMultimediaKit
Change-Id: I60d7897eb84dfbe2ce5af5adeb23b33270aa7d7c
Reviewed-on: http://codereview.qt.nokia.com/1483
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Diffstat (limited to 'examples/spectrum/3rdparty/fftreal/FFTRealUseTrigo.hpp')
-rw-r--r-- | examples/spectrum/3rdparty/fftreal/FFTRealUseTrigo.hpp | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/examples/spectrum/3rdparty/fftreal/FFTRealUseTrigo.hpp b/examples/spectrum/3rdparty/fftreal/FFTRealUseTrigo.hpp new file mode 100644 index 000000000..aa968b81a --- /dev/null +++ b/examples/spectrum/3rdparty/fftreal/FFTRealUseTrigo.hpp @@ -0,0 +1,91 @@ +/***************************************************************************** + + FFTRealUseTrigo.hpp + Copyright (c) 2005 Laurent de Soras + +--- Legal stuff --- + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version. + +This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +*Tab=3***********************************************************************/ + + + +#if defined (FFTRealUseTrigo_CURRENT_CODEHEADER) + #error Recursive inclusion of FFTRealUseTrigo code header. +#endif +#define FFTRealUseTrigo_CURRENT_CODEHEADER + +#if ! defined (FFTRealUseTrigo_CODEHEADER_INCLUDED) +#define FFTRealUseTrigo_CODEHEADER_INCLUDED + + + +/*\\\ INCLUDE FILES \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/ + +#include "OscSinCos.h" + + + +/*\\\ PUBLIC \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/ + + + +template <int ALGO> +void FFTRealUseTrigo <ALGO>::prepare (OscType &osc) +{ + osc.clear_buffers (); +} + +template <> +void FFTRealUseTrigo <0>::prepare (OscType &osc) +{ + // Nothing +} + + + +template <int ALGO> +void FFTRealUseTrigo <ALGO>::iterate (OscType &osc, DataType &c, DataType &s, const DataType cos_ptr [], long index_c, long index_s) +{ + osc.step (); + c = osc.get_cos (); + s = osc.get_sin (); +} + +template <> +void FFTRealUseTrigo <0>::iterate (OscType &osc, DataType &c, DataType &s, const DataType cos_ptr [], long index_c, long index_s) +{ + c = cos_ptr [index_c]; + s = cos_ptr [index_s]; +} + + + +/*\\\ PROTECTED \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/ + + + +/*\\\ PRIVATE \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/ + + + +#endif // FFTRealUseTrigo_CODEHEADER_INCLUDED + +#undef FFTRealUseTrigo_CURRENT_CODEHEADER + + + +/*\\\ EOF \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/ |