diff --git a/pocketfft_hdronly.h b/pocketfft_hdronly.h index ec0d543bed5b703085d90363f293c0f02fb09be6..982d83d9508ffe69893f86e9375920bedc19c34d 100644 --- a/pocketfft_hdronly.h +++ b/pocketfft_hdronly.h @@ -551,14 +551,14 @@ virtual void exec(bool fwd, PCTvR<T0> &d1, PCTvR<T0> &d2) const \ #endif -template<typename T0> class pass +template<typename T0> class cpass { protected: size_t ip, ido, l1; arr<cmplx<T0>> wa; public: - pass (size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) + cpass(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) : ip(ip_), ido(ido_), l1(l1_), wa((ip_-1)*(ido_-1)) { for (size_t i=1; i<ido; ++i) @@ -569,14 +569,14 @@ template<typename T0> class pass #ifndef POCKETFFT_NO_VECTORS virtual void exec(bool fwd, PCTvR<T0> &d1, PCTvR<T0> &d2) const = 0; #endif - virtual ~pass() {} + virtual ~cpass() {} }; -template<typename T0> class cfftp_pass2 : public pass<T0> +template<typename T0> class cfftp_pass2 : public cpass<T0> { private: - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; template<bool fwd, typename T> void texec(PTR<T> &cc, PTR<T> &ch) const { constexpr size_t cdim=2; @@ -610,16 +610,16 @@ template<typename T0> class cfftp_pass2 : public pass<T0> public: cfftp_pass2(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid) {} + : cpass<T0>(ip_, ido_, l1_, twid) {} POCKETFFT_BOILERPLATE_EXEC POCKETFFT_BOILERPLATE_EXECV }; -template<typename T0> class cfftp_pass4 : public pass<T0> +template<typename T0> class cfftp_pass4 : public cpass<T0> { private: - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; template<bool fwd, typename T> void texec(PTR<T> &cc, PTR<T> &ch) const { constexpr size_t cdim=4; @@ -671,17 +671,17 @@ template<typename T0> class cfftp_pass4 : public pass<T0> public: cfftp_pass4(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid) {} + : cpass<T0>(ip_, ido_, l1_, twid) {} POCKETFFT_BOILERPLATE_EXEC POCKETFFT_BOILERPLATE_EXECV }; -template<typename T0> class cfftp_pass8 : public pass<T0> +template<typename T0> class cfftp_pass8 : public cpass<T0> { private: - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; template <bool fwd, typename T> static void ROTX45(T &a) { @@ -792,16 +792,16 @@ template<typename T0> class cfftp_pass8 : public pass<T0> public: cfftp_pass8(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid) {} + : cpass<T0>(ip_, ido_, l1_, twid) {} POCKETFFT_BOILERPLATE_EXEC POCKETFFT_BOILERPLATE_EXECV }; -template<typename T0> class cfftp_pass3 : public pass<T0> +template<typename T0> class cfftp_pass3 : public cpass<T0> { private: - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; template<bool fwd, typename T> void texec(PTR<T> &cc, PTR<T> &ch) const { @@ -863,16 +863,16 @@ template<typename T0> class cfftp_pass3 : public pass<T0> public: cfftp_pass3(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid) {} + : cpass<T0>(ip_, ido_, l1_, twid) {} POCKETFFT_BOILERPLATE_EXEC POCKETFFT_BOILERPLATE_EXECV }; -template<typename T0> class cfftp_pass5 : public pass<T0> +template<typename T0> class cfftp_pass5 : public cpass<T0> { private: - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; template<bool fwd, typename T> void texec(PTR<T> &cc, PTR<T> &ch) const { @@ -948,16 +948,16 @@ template<typename T0> class cfftp_pass5 : public pass<T0> public: cfftp_pass5(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid) {} + : cpass<T0>(ip_, ido_, l1_, twid) {} POCKETFFT_BOILERPLATE_EXEC POCKETFFT_BOILERPLATE_EXECV }; -template<typename T0> class cfftp_pass7 : public pass<T0> +template<typename T0> class cfftp_pass7 : public cpass<T0> { private: - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; template<bool fwd, typename T> void texec(PTR<T> &cc, PTR<T> &ch) const { @@ -1036,16 +1036,16 @@ template<typename T0> class cfftp_pass7 : public pass<T0> public: cfftp_pass7(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid) {} + : cpass<T0>(ip_, ido_, l1_, twid) {} POCKETFFT_BOILERPLATE_EXEC POCKETFFT_BOILERPLATE_EXECV }; -template<typename T0> class cfftp_pass11 : public pass<T0> +template<typename T0> class cfftp_pass11 : public cpass<T0> { private: - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; template<bool fwd, typename T> void texec(PTR<T> &cc, PTR<T> &ch) const { @@ -1136,17 +1136,17 @@ template<typename T0> class cfftp_pass11 : public pass<T0> public: cfftp_pass11(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid) {} + : cpass<T0>(ip_, ido_, l1_, twid) {} POCKETFFT_BOILERPLATE_EXEC POCKETFFT_BOILERPLATE_EXECV }; -template<typename T0> class cfftp_passg : public pass<T0> +template<typename T0> class cfftp_passg : public cpass<T0> { private: - using pass<T0>::ip; - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ip; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; arr<cmplx<T0>> csarr; template<bool fwd, typename T> void texec(PTR<T> &cc, PTR<T> &ch) const @@ -1257,7 +1257,7 @@ template<typename T0> class cfftp_passg : public pass<T0> public: cfftp_passg(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid), csarr(ip_) + : cpass<T0>(ip_, ido_, l1_, twid), csarr(ip_) { for (size_t j=0; j<ip; ++j) csarr[j] = twid.cdata()[j*l1*ido]; @@ -1270,7 +1270,7 @@ template<typename T0> class cfftp { private: size_t length; - vector<unique_ptr<pass<T0>>> passes; + vector<unique_ptr<cpass<T0>>> passes; template<typename P> void add_pass(size_t ip, size_t &n, size_t &l1, const sincos_2pibyn<T0> &twid) @@ -1337,13 +1337,13 @@ template<typename T0> class cfftp } }; -template<typename T0> class bluepass: public pass<T0> +template<typename T0> class bluepass: public cpass<T0> { private: - using pass<T0>::ip; - using pass<T0>::ido; - using pass<T0>::l1; - using pass<T0>::wa; + using cpass<T0>::ip; + using cpass<T0>::ido; + using cpass<T0>::l1; + using cpass<T0>::wa; size_t n2; cfftp<T0> plan; arr<cmplx<T0>> mem; @@ -1400,7 +1400,7 @@ template<typename T0> class bluepass: public pass<T0> public: POCKETFFT_NOINLINE bluepass(size_t ip_, size_t ido_, size_t l1_, const sincos_2pibyn<T0> &twid) - : pass<T0>(ip_, ido_, l1_, twid), + : cpass<T0>(ip_, ido_, l1_, twid), n2(util::good_size(ip*2-1)), plan(n2), mem(ip+n2), bk(mem.data()), bkf(mem.data()+ip) { @@ -2412,7 +2412,7 @@ template<typename T0> class pocketfft_c { private: size_t len; - vector<unique_ptr<pass<T0>>> passes; + vector<unique_ptr<cpass<T0>>> passes; template<typename P> void add_pass(size_t ip, size_t &n, size_t &l1, const sincos_2pibyn<T0> &twid)