EchoMap 2026-07-25 6d3977c
An experimental cross-platform digital signal processing application for sound-source localisation.
Loading...
Searching...
No Matches
DFTTask.hpp
Go to the documentation of this file.
1
9
10#ifndef ECHOMAP_DFTTASK_HPP
11#define ECHOMAP_DFTTASK_HPP
12
13#include <memory>
14
16#include "ITask.hpp"
17
18namespace echomap
19{
20
21class Signal;
22
28class DFTTask : public ITask
29{
30public:
44 explicit DFTTask(
46 WindowFunctions::AllFunctions window_function,
47 std::size_t transform_size
48 );
49
50 ~DFTTask() noexcept override;
51
52 DFTTask(const DFTTask&) = delete;
53 DFTTask& operator=(const DFTTask&) = delete;
54
55private:
56 WorkerResult execute_work() override;
57
59 const WindowFunctions::AllFunctions window_function;
60 const std::size_t transform_size;
61};
62
63} // namespace echomap
64
65#endif // ECHOMAP_DFTTASK_HPP
Task description interface specification.
WindowFunctions specification.
DFTTask(std::shared_ptr< Signal > signal, WindowFunctions::AllFunctions window_function, std::size_t transform_size)
Creates a new DFT job for the given Signal.
Definition DFTTask.cpp:19
WorkerResult execute_work() override
Execute the work and produce a WorkerResult.
Definition DFTTask.cpp:37
A single channel of discretely sampled audio data.
Definition Signal.hpp:40
The main EchoMap outermost namespace for all non-exported symbols.
std::variant< ErrorResult, DFTResult, DownsampleResult, LoadProjectResult, LoadSignalFileResult > WorkerResult
Issued once an ITask has completed its Worker cycle.