diff --git a/main.cpp b/main.cpp index 847c293d..ff0c9f4f 100644 --- a/main.cpp +++ b/main.cpp @@ -32,13 +32,24 @@ const char pult_config[] = "; */ #include "pifft.h" +int asize(ssize_t s, size_t pid_rsize) { + if (s <= 0) return 0; + if (pid_rsize + pid_rsize >= size_t(s) && pid_rsize < size_t(s)) + return pid_rsize + pid_rsize; + ssize_t t = 0, s_ = ssize_t(s) - 1; + while (s_ >> t) ++t; + return (1 << t); +} int main(int argc, char *argv[]) { - PIFFTWf fft; + /*PIFFTWf fft; PIVector in; for (int i = 0; i < 32; ++i) in << i%10; PIVector out = fft.calcFFT(in); - piCout << out; + piCout << out;*/ + for (int i = 0; i < 16; ++i) { + piCout << asize(i, 100); + } return 0; /*__S__ s, s1; s.text = "123"; diff --git a/src/containers/pideque.h b/src/containers/pideque.h index 078dab78..707e1b9d 100755 --- a/src/containers/pideque.h +++ b/src/containers/pideque.h @@ -335,7 +335,7 @@ private: if (s <= 0) return 0; if (pid_rsize + pid_rsize >= size_t(s) && pid_rsize < size_t(s)) return pid_rsize + pid_rsize; - size_t t = 0, s_ = size_t(s) - 1; + ssize_t t = 0, s_ = s - 1; while (s_ >> t) ++t; return (1 << t); } diff --git a/src/containers/pivector.h b/src/containers/pivector.h index 588e6e16..c2b2f67e 100755 --- a/src/containers/pivector.h +++ b/src/containers/pivector.h @@ -304,7 +304,7 @@ private: if (s == 0) return 0; if (piv_rsize + piv_rsize >= s && piv_rsize < s) return piv_rsize + piv_rsize; - size_t t = 0, s_ = s - 1; + ssize_t t = 0, s_ = s - 1; while (s_ >> t) ++t; return (1 << t); } diff --git a/src/core/piinit.cpp b/src/core/piinit.cpp index fc980855..7a85de9a 100644 --- a/src/core/piinit.cpp +++ b/src/core/piinit.cpp @@ -111,7 +111,7 @@ PIInit::PIInit() { DWORD dwVersion = GetVersion(); DWORD dwMajorVersion = (DWORD)(LOBYTE(LOWORD(dwVersion))); DWORD dwMinorVersion = (DWORD)(HIBYTE(LOWORD(dwVersion))); - sinfo->OS_version = PIString(dwMajorVersion) + "." + PIString(dwMinorVersion); + sinfo->OS_version = PIString::fromNumber(dwMajorVersion) + "." + PIString::fromNumber(dwMinorVersion); // WinSock inint WSADATA wsaData;