|
EchoMap 2026-07-25 6d3977c
An experimental cross-platform digital signal processing application for sound-source localisation.
|
Represents an ITask for computing the Discrete Fourier Transform of a Signal. More...
#include <DFTTask.hpp>
Public Member Functions | |
| DFTTask (std::shared_ptr< Signal > signal, WindowFunctions::AllFunctions window_function, std::size_t transform_size) | |
| Creates a new DFT job for the given Signal. | |
| DFTTask (const DFTTask &)=delete | |
| DFTTask & | operator= (const DFTTask &)=delete |
| Public Member Functions inherited from echomap::ITask | |
| ITask (const std::string_view task_name) | |
| virtual | ~ITask () noexcept=default |
| Destruct the ITask base. | |
| WorkerResult | execute (const std::stop_token &stop_token) |
| Execute the work, subject to the given token, and produce a WorkerResult. | |
| WorkerResult | operator() () |
| Alias for execute with a vacuous stop token. | |
| Public Member Functions inherited from echomap::Object< ITask > | |
| ~Object ()=default | |
| Non-virtual base destructor. | |
| id_type | get_id () const noexcept |
| bool | is_valid () const noexcept |
| void | set_name (const std::string_view new_name) |
| std::string_view | get_name () const noexcept |
| const char * | get_imgui_name () const noexcept |
| Object (const Object &)=delete | |
| Object & | operator= (const Object &)=delete |
| bool | operator== (const Object &other) const noexcept |
| Determine shallow equality between two Object instances. | |
Private Member Functions | |
| WorkerResult | execute_work () override |
| Execute the work and produce a WorkerResult. | |
Private Attributes | |
| std::shared_ptr< Signal > | signal |
| const WindowFunctions::AllFunctions | window_function |
| const std::size_t | transform_size |
Additional Inherited Members | |
| Static Public Member Functions inherited from echomap::Object< ITask > | |
| static std::string_view | get_class_name () noexcept |
| Protected Member Functions inherited from echomap::Object< ITask > | |
| void | move_identity_from (Object &&other) noexcept |
| Helper for derived classes to provide move-assignment operations. | |
Represents an ITask for computing the Discrete Fourier Transform of a Signal.
Definition at line 28 of file DFTTask.hpp.
|
explicit |
Creates a new DFT job for the given Signal.
Given the immutable nature of Signal Sample data, it is assumed that the time-series data will not be modified during the scheduling and execution of the job. Shared ownership is required to preserve lifetimes across the master and computation threads.
| signal | The shared-ownership Signal to analyse. |
| window_function | The window function to preprocess the input data. |
| transform_size | The number of samples to include in the transform. |
Definition at line 19 of file DFTTask.cpp.
|
overrideprivatevirtual |
Execute the work and produce a WorkerResult.
Implements echomap::ITask.
Definition at line 37 of file DFTTask.cpp.
|
private |
Definition at line 58 of file DFTTask.hpp.
|
private |
Definition at line 60 of file DFTTask.hpp.
|
private |
Definition at line 59 of file DFTTask.hpp.