![]() |
pl-nk
|
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 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/
1.7.4