comparison src/vamp-hostsdk/Window.h @ 444:7bab0c5422f4 vampipe

Make single/double-precision selectable for input domain adapter windowing and FFTs. Double precision is necessary to pass Sonic Annotator regression tests, though in practice most real-world methods would be fine with single precision.
author Chris Cannam
date Thu, 18 Aug 2016 14:43:52 +0100
parents 5cb298435765
children
comparison
equal deleted inserted replaced
443:d3f676c07359 444:7bab0c5422f4
74 74
75 void cut(T *src) const { cut(src, src); } 75 void cut(T *src) const { cut(src, src); }
76 void cut(T *src, T *dst) const { 76 void cut(T *src, T *dst) const {
77 for (size_t i = 0; i < m_size; ++i) dst[i] = src[i] * m_cache[i]; 77 for (size_t i = 0; i < m_size; ++i) dst[i] = src[i] * m_cache[i];
78 } 78 }
79 template <typename T0> 79 template <typename T0, typename T1>
80 void cut(T0 *src, T *dst) const { 80 void cut(T0 *src, T1 *dst) const {
81 for (size_t i = 0; i < m_size; ++i) dst[i] = src[i] * m_cache[i]; 81 for (size_t i = 0; i < m_size; ++i) dst[i] = src[i] * m_cache[i];
82 } 82 }
83 83
84 T getArea() { return m_area; } 84 T getArea() { return m_area; }
85 T getValue(size_t i) { return m_cache[i]; } 85 T getValue(size_t i) { return m_cache[i]; }