#ifndef CORE_FRONT_STABLIZER_H #define CORE_FRONT_STABLIZER_H #include #include #include "almalloc.h" #include "bufferline.h" #include "filters/splitter.h" struct FrontStablizer { FrontStablizer(size_t numchans) : ChannelFilters{numchans} { } alignas(16) std::array MidDirect{}; alignas(16) std::array Side{}; alignas(16) std::array Temp{}; BandSplitter MidFilter; alignas(16) FloatBufferLine MidLF{}; alignas(16) FloatBufferLine MidHF{}; al::FlexArray ChannelFilters; static std::unique_ptr Create(size_t numchans) { return std::unique_ptr{new(FamCount(numchans)) FrontStablizer{numchans}}; } DEF_FAM_NEWDEL(FrontStablizer, ChannelFilters) }; #endif /* CORE_FRONT_STABLIZER_H */