EchoMap 2026-07-25 6d3977c
An experimental cross-platform digital signal processing application for sound-source localisation.
Loading...
Searching...
No Matches
WorkerResultDespatcher.cpp
Go to the documentation of this file.
1
9
11
13#include "../objects/Project.hpp"
14#include "../objects/Signal.hpp"
15#include "../objects/Sensor.hpp"
16
17namespace echomap
18{
19
21 WorkerResult&& result
22)
23{
25 [this]<typename T0>(T0 payload) {
26 publish_payload(std::move(payload));
27 },
28 std::move(result)
29 );
30}
31
32void WorkerResultDespatcher::publish_payload(
33 DFTResult&& payload
34)
35{
36 dft_finished_channel.publish(std::move(payload));
37}
38
39void WorkerResultDespatcher::publish_payload(
40 DownsampleResult&& payload
41)
42{
43 downsample_finished_channel.publish(std::move(payload));
44}
45
46void WorkerResultDespatcher::publish_payload(
47 LoadProjectResult&& payload
48)
49{
50 load_project_finished_channel.publish(std::move(payload));
51}
52
53void WorkerResultDespatcher::publish_payload(
54 LoadSignalFileResult&& payload
55)
56{
57 load_signal_file_channel.publish(std::move(payload));
58}
59
60void WorkerResultDespatcher::publish_payload(
61 const ErrorResult& payload
62)
63{
64 error_channel.publish(payload);
65}
66
67} // namespace echomap
FrequencySpectrum specification.
Audio signal class specification.
WorkerResultDespatcher specification.
Denotes a completed DFT computation from a DFTTask.
Definition DFTResult.hpp:27
Indicates that an ITask did not successfully complete.
Denotes a loaded Project completed by a LoadProjectTask job.
ResultChannel< const ErrorResult > error_channel
Channel to indicate emission of ErrorResult.
ResultChannel< DownsampleResult > downsample_finished_channel
Channel to indicate completion of DownsampleTask.
ResultChannel< DFTResult > dft_finished_channel
Channel to indicate completion of DFTTask.
ResultChannel< LoadSignalFileResult > load_signal_file_channel
Channel to indicate completion of LoadSignalFileTask.
void publish(WorkerResult &&result)
Publish new WorkerResult message on the suitable channel.
ResultChannel< LoadProjectResult > load_project_finished_channel
Channel to indicate completion of LoadProjectTask.
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.
T visit(T... args)