EchoMap 2026-07-25 6d3977c
An experimental cross-platform digital signal processing application for sound-source localisation.
Loading...
Searching...
No Matches
DownsampleTask.hpp
Go to the documentation of this file.
1
9
10#ifndef ECHOMAP_DOWNSAMPLETASK_HPP
11#define ECHOMAP_DOWNSAMPLETASK_HPP
12
13#include <memory>
14
15#include "ITask.hpp"
16
17namespace echomap
18{
19
20class Signal;
21
27class DownsampleTask : public ITask
28{
29 static constexpr float downsampling_factor = 50.0f;
30
31public:
44 explicit DownsampleTask(
46 float factor = downsampling_factor
47 );
48
49 ~DownsampleTask() noexcept override;
50
51 DownsampleTask(const DownsampleTask&) = delete;
52 DownsampleTask& operator=(const DownsampleTask&) = delete;
53
54 // TODO needs move operators.
55
56private:
57 WorkerResult execute_work() override;
58
60 const float factor;
61};
62
63} // namespace echomap
64
65#endif // ECHOMAP_DOWNSAMPLETASK_HPP
Task description interface specification.
WorkerResult execute_work() override
Execute the work and produce a WorkerResult.
DownsampleTask(std::shared_ptr< Signal > signal, float factor=downsampling_factor)
Creates a new downsampling job for the given Signal.
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.