pl-nk
FFTRealPassDirect.h
Go to the documentation of this file.
00001 /*****************************************************************************
00002 
00003         FFTRealPassDirect.h
00004         By Laurent de Soras
00005 
00006 --- Legal stuff ---
00007 
00008 This program is free software. It comes without any warranty, to
00009 the extent permitted by applicable law. You can redistribute it
00010 and/or modify it under the terms of the Do What The F**k You Want
00011 To Public License, Version 2, as published by Sam Hocevar. See
00012 http://sam.zoy.org/wtfpl/COPYING for more details.
00013 
00014 *Tab=3***********************************************************************/
00015 
00016 
00017 
00018 #if ! defined (ffft_FFTRealPassDirect_HEADER_INCLUDED)
00019 #define ffft_FFTRealPassDirect_HEADER_INCLUDED
00020 
00021 #if defined (_MSC_VER)
00022         #pragma once
00023         #pragma warning (4 : 4250) // "Inherits via dominance."
00024 #endif
00025 
00026 
00027 
00028 /*\\\ INCLUDE FILES \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/
00029 
00030 #include        "../ffft/def.h"
00031 #include        "../ffft/FFTRealFixLenParam.h"
00032 #include        "../ffft/OscSinCos.h"
00033 
00034 
00035 
00036 namespace ffft
00037 {
00038 
00039 
00040 
00041 template <int PASS>
00042 class FFTRealPassDirect
00043 {
00044 
00045 /*\\\ PUBLIC \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/
00046 
00047 public:
00048 
00049    typedef      FFTRealFixLenParam::DataType    DataType;
00050         typedef OscSinCos <DataType>    OscType;
00051 
00052         ffft_FORCEINLINE static void
00053                                                 process (long len, DataType dest_ptr [], DataType src_ptr [], const DataType x_ptr [], const DataType cos_ptr [], long cos_len, const long br_ptr [], OscType osc_list []);
00054 
00055 
00056 
00057 /*\\\ PROTECTED \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/
00058 
00059 protected:
00060 
00061 
00062 
00063 /*\\\ PRIVATE \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/
00064 
00065 private:
00066 
00067 
00068 
00069 /*\\\ FORBIDDEN MEMBER FUNCTIONS \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/
00070 
00071 private:
00072 
00073                                                 FFTRealPassDirect ();
00074                                                 FFTRealPassDirect (const FFTRealPassDirect &other);
00075         FFTRealPassDirect &
00076                                                 operator = (const FFTRealPassDirect &other);
00077         bool                            operator == (const FFTRealPassDirect &other);
00078         bool                            operator != (const FFTRealPassDirect &other);
00079 
00080 };      // class FFTRealPassDirect
00081 
00082 
00083 
00084 }       // namespace ffft
00085 
00086 
00087 
00088 #include        "ffft/FFTRealPassDirect.hpp"
00089 
00090 
00091 
00092 #endif  // ffft_FFTRealPassDirect_HEADER_INCLUDED
00093 
00094 
00095 
00096 /*\\\ EOF \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines