|
EchoMap 2026-07-25 6d3977c
An experimental cross-platform digital signal processing application for sound-source localisation.
|
The main EchoMap outermost namespace for all non-exported symbols. More...
Classes | |
| class | ActionControllerBase |
| Provides a platform-independent static mechanism for performing "system actions", such as raising a file-selector dialog, and invoking callbacks upon completion. More... | |
| struct | AddChannelMappingNotification |
| A notification indicating that a new channel mapping should be established. More... | |
| class | BidirectionalUnorderedMapping |
| Maintains a bidirectional mapping between a key and value, allowing fast lookup on both objects. More... | |
| struct | CancelProjectLoadNotification |
| A notification indicating that a pending Project load should be cancelled. More... | |
| class | ChannelMappingPanel |
| Provides a panel for defining mappings between Signal and Sensor objects. More... | |
| struct | ClearErrorNotification |
| A notification indicating that any error state visible to the user should be reset. More... | |
| struct | Colour |
| A generic RGBA structure. More... | |
| struct | CompleteProjectLoadNotification |
| A notification indicating that a pending Project is ready to be loaded. More... | |
| class | ConfigurationError |
| A ConfigurationError indicates an error encountered during the initial configuration of the EchoMap graphics context. More... | |
| class | DFTResult |
| Denotes a completed DFT computation from a DFTTask. More... | |
| class | DFTTask |
| Represents an ITask for computing the Discrete Fourier Transform of a Signal. More... | |
| class | DownsampleResult |
| Denotes a completed for a downsampled Signal produced by a DownsampleTask job. More... | |
| class | DownsampleTask |
| Represents an ITask for downsampling a Signal time-series data by a fixed factor. More... | |
| class | EchoMap |
| The EchoMap maintains state for the application including WebGPU and Dear ImGui context, encapsulating initialisation, game loop, interaction, and clean-up. More... | |
| class | EchoMapNative |
| EchoMap application implementation for native (non-WebAssembly) platforms. More... | |
| class | EchoMapWeb |
| EchoMap application implementation for WebAssembly/Emscripten platforms. More... | |
| class | ErrorModal |
| Provides a persistent ImGui state to raise errors as a modal. More... | |
| class | ErrorResult |
| Indicates that an ITask did not successfully complete. More... | |
| class | FFTWBuffers |
| Simple RAII wrapper for commonly used C types from FFTW(f). More... | |
| class | FileChooser |
| Modal containing controls for interactively selecting a file from the file-system. More... | |
| class | FilesystemCombo |
| Provides a platform-independent Dear ImGui combo box for browsing the file-system and selecting files. More... | |
| class | FrequencySpectrum |
| A Signal sampled in the frequency domain. More... | |
| class | FrequencySpectrumFactory |
| Provides a static helper to perform discrete Fourier transforms on Signal objects to produce frequency spectra. More... | |
| class | IDAllocator |
| Provides a simple thread-safe runtime ID generator for Object managers. More... | |
| class | IgnoredWarning |
| Exception class to indicate a non-fatal warning indicating an exceptional case of dropping some notification. More... | |
| class | IPanel |
| Represents a panel or window on the GUI. More... | |
| class | IProjectPanel |
| An IPanel which can receive updates to the application-wide active Project. More... | |
| class | ISerialiser |
| class | ITask |
| An ITask represents an invocable piece of work that produces a WorkerResult. More... | |
| class | IWebPanel |
| An IPanel which can receive updates to the application-wide unloaded PartialProject. More... | |
| class | JSActionController |
| Specialisation of ActionControllerBase to service actions on a WebAssembly target (using the Emscripten runtime). More... | |
| class | JSONDeserialiserHelpers |
| Provides a set of static helpers for parsing Project fields with SIMDJSON. More... | |
| class | JSONFullDeserialiser |
| JSON parser for Project objects. More... | |
| class | JSONPartialDeserialiser |
| JSON parser for PartialProject objects. More... | |
| class | JSONSerialiser |
| class | LoadProjectResult |
| Denotes a loaded Project completed by a LoadProjectTask job. More... | |
| class | LoadProjectTask |
| Denotes a unit of work for loading and constructing an EchoMap Project from its serialised form on the filesystem. More... | |
| class | LoadSignalFileResult |
| class | LoadSignalFileTask |
| class | LocatableError |
| class | Logger |
| A portable (native and browser) and thread-safe logger implementation for formatted messages. More... | |
| class | MapSourcesModal |
| Provides a modal IPanel to map externally sourced Signal objects to separately uploaded files. More... | |
| class | MenuPanel |
| struct | ModifySensorColourNotification |
| A notification indicating that the colour of a Sensor should be changed. More... | |
| struct | ModifySensorPositionNotification |
| A notification indicating that the position of a Sensor should be changed. More... | |
| class | NativeActionController |
| Specialisation of ActionControllerBase to service actions on a native platform. More... | |
| struct | NotificationNames |
| Helper to retrieve names of Notification variant alternatives. More... | |
| class | Object |
| A participant in a runtime object model with a numerically unique identifier and display name. More... | |
| class | PartialProject |
| A Project with semantics for expressing an incomplete set of owned Signal objects. More... | |
| struct | Position |
| A generic 3D position structure. More... | |
| class | Project |
| class | ProjectPanel |
| struct | ProjectSelectionCompleteNotification |
| A notification indicating that a new Project file has been selected by the user, or the load operation was cancelled. More... | |
| struct | RaiseFileChooserNotification |
| A notification indicating that the NativeFileChooser should be raised to prompt for a new Project. More... | |
| struct | RegisterVFSMappingNotification |
| A notification to indicate a new VFS mapping from an external source. More... | |
| class | ResultChannel |
| Maintains a type-safe multi-observer single-consumer message bus for WorkerResult objects. More... | |
| class | Sensor |
| class | SensorGeometryPanel |
| Provides a panel for defining and reviewing (in a 3D plot) positions of loaded Sensor objects in the active Project. More... | |
| class | Signal |
| A single channel of discretely sampled audio data. More... | |
| class | SignalDFTPanel |
| Provides an IPanel to display and interact with previews of Signal frequency spectra (i.e., Signal DFTs). More... | |
| class | SignalFactory |
| Provides various convenience functions for constructing Signal objects in exotic ways. More... | |
| class | SignalWaveformPanel |
| The SignalWaveformPanel provides a preview of downsampled time-series waveforms of each Signal in the active Project. More... | |
| class | StaticInstanceController |
| Provides a binding interface to connect static controllers to an instance of EchoMap. More... | |
| class | SurfaceFactory |
| Provides static helpers to create and bind a WebGPU Surface to a GLFW window across Wasm and non-Wasm platforms. More... | |
| class | ThreadSafeQueue |
| Provides a straightforward thread-safe double-ended queue implementation. More... | |
| class | WindowFunctions |
| Aggregation of callable DSP window functions. More... | |
| class | Worker |
| A Worker provides an encapsulated thread-safe despatch model for submitting work and reviewing results. More... | |
| class | WorkerResultDespatcher |
| Manages channels for WorkerResult message routing. More... | |
Concepts | |
| concept | SignalFactoryRange |
| concept | WindowFunction |
Typedefs | |
| using | ActionController = JSActionController |
| Provides an ActionControllerBase implementation alias for Emscripten targets. | |
| using | WorkerResult = std::variant<ErrorResult, DFTResult, DownsampleResult, LoadProjectResult, LoadSignalFileResult> |
| Issued once an ITask has completed its Worker cycle. | |
| using | Notification |
| A Notification is a trivial message sent exclusively to the EchoMap controller. | |
| using | id_type = std::uint64_t |
| using | JSONDeserialiser = JSONPartialDeserialiser |
| Provides a JSONDeserialiser for the web, where PartialProject objects are required. | |
Functions | |
| template<> | |
| constexpr std::string_view | WindowFunctions::get_window_name< WindowFunctions::Constant > () |
| template<> | |
| constexpr std::string_view | WindowFunctions::get_window_name< WindowFunctions::Hann > () |
| template<> | |
| constexpr std::string_view | WindowFunctions::get_window_name< WindowFunctions::Hamming > () |
| template<> | |
| constexpr std::string_view | WindowFunctions::get_window_name< WindowFunctions::Bartlett > () |
| template<> | |
| constexpr std::string_view | WindowFunctions::get_window_name< WindowFunctions::Blackman > () |
| template<> | |
| constexpr std::string_view | WindowFunctions::get_window_name< WindowFunctions::BlackmanHarris > () |
| template<> | |
| constexpr std::string_view | WindowFunctions::get_window_name< WindowFunctions::Welch > () |
Variables | |
| template<typename Derived> | |
| ActionControllerBase< Derived >::CallbackT | ActionControllerBase< Derived >::callback {} |
| template<> | |
| constexpr std::string_view | Object< ITask >::class_name = "Task" |
| template<> | |
| constexpr std::string_view | Object< FrequencySpectrum >::class_name = "FreqSpec" |
| template<> | |
| constexpr std::string_view | Object< Project >::class_name = "Project" |
| template<> | |
| constexpr std::string_view | Object< Sensor >::class_name = "Sensor" |
| template<> | |
| constexpr std::string_view | Object< Signal >::class_name = "Signal" |
The main EchoMap outermost namespace for all non-exported symbols.
| using echomap::id_type = std::uint64_t |
Definition at line 21 of file IDAllocator.hpp.
Provides a JSONDeserialiser for the web, where PartialProject objects are required.
Definition at line 27 of file JSONDeserialiser.hpp.
| using echomap::WorkerResult = std::variant<ErrorResult, DFTResult, DownsampleResult, LoadProjectResult, LoadSignalFileResult> |
Issued once an ITask has completed its Worker cycle.
Definition at line 27 of file WorkerResult.hpp.
|
constexpr |
Definition at line 326 of file WindowFunctions.hpp.
|
constexpr |
Definition at line 331 of file WindowFunctions.hpp.
|
constexpr |
Definition at line 336 of file WindowFunctions.hpp.
|
constexpr |
Definition at line 311 of file WindowFunctions.hpp.
|
constexpr |
Definition at line 321 of file WindowFunctions.hpp.
|
constexpr |
Definition at line 316 of file WindowFunctions.hpp.
|
constexpr |
Definition at line 341 of file WindowFunctions.hpp.
| ActionControllerBase<Derived>::CallbackT echomap::ActionControllerBase< Derived >::callback {} |
Definition at line 143 of file ActionControllerBase.hpp.
|
constexpr |
Definition at line 82 of file FrequencySpectrum.hpp.
|
constexpr |
|
constexpr |
Definition at line 218 of file Project.hpp.
|
constexpr |
Definition at line 32 of file Sensor.hpp.
|
constexpr |
Definition at line 284 of file Signal.hpp.