EchoMap
2026-07-25 6d3977c
An experimental cross-platform digital signal processing application for sound-source localisation.
Toggle main menu visibility
Loading...
Searching...
No Matches
EchoMapWeb.hpp
Go to the documentation of this file.
1
9
10
#ifndef ECHOMAP_ECHOMAPWEB_HPP
11
#define ECHOMAP_ECHOMAPWEB_HPP
12
13
#if defined(__EMSCRIPTEN__) || defined(__DOXYGEN__)
14
15
#include "
../EchoMap.hpp
"
16
17
namespace
echomap
18
{
19
20
class
PartialProject
;
21
25
class
EchoMapWeb :
public
EchoMap
26
{
27
public
:
28
void
run_event_loop
()
override
;
29
30
EchoMapWeb();
31
~EchoMapWeb()
override
;
32
33
protected
:
34
void
visit_notification
(
Notification
& notification)
override
;
35
36
void
handle_result(
LoadProjectResult
&& result)
override
;
37
void
handle_result(
LoadSignalFileResult
&& result)
override
;
38
39
private
:
40
void
handle_notification(
const
CancelProjectLoadNotification
& notification);
41
void
handle_notification(
const
CompleteProjectLoadNotification
& notification);
42
void
handle_notification(
RegisterVFSMappingNotification
& notification)
const
;
43
51
static
void
render_shim
(
void
* echomap_instance);
52
53
std::unique_ptr<PartialProject>
unloaded_project
;
54
};
55
56
}
// namespace echomap
57
58
#endif
// __EMSCRIPTEN__
59
60
#endif
// ECHOMAP_ECHOMAPWEB_HPP
EchoMap.hpp
EchoMap class specification.
echomap::EchoMapWeb::render_shim
static void render_shim(void *echomap_instance)
Invokes the renderer from a static context given an untyped mutable pointer to the EchoMap object ins...
Definition
EchoMapWeb.cpp:156
echomap::EchoMapWeb::run_event_loop
void run_event_loop() override
Runs the platform-dependent event loop to manage and propagate interaction with the EchoMap applicati...
Definition
EchoMapWeb.cpp:164
echomap::EchoMapWeb::visit_notification
void visit_notification(Notification ¬ification) override
Uses std::visit on the given notification to invoke the corresponding handler.
Definition
EchoMapWeb.cpp:32
echomap::EchoMapWeb::unloaded_project
std::unique_ptr< PartialProject > unloaded_project
Owning container for the unloaded Project.
Definition
EchoMapWeb.hpp:53
echomap::EchoMap::EchoMap
EchoMap()
Initialise a EchoMap application instance.
Definition
EchoMap.cpp:41
echomap::LoadProjectResult
Denotes a loaded Project completed by a LoadProjectTask job.
Definition
LoadProjectResult.hpp:26
echomap::LoadSignalFileResult
Definition
LoadSignalFileResult.hpp:28
echomap::PartialProject
A Project with semantics for expressing an incomplete set of owned Signal objects.
Definition
PartialProject.hpp:32
echomap::Notification
std::variant< AddChannelMappingNotification, ModifySensorColourNotification, ModifySensorPositionNotification, ProjectSelectionCompleteNotification, ClearErrorNotification, RaiseFileChooserNotification, RegisterVFSMappingNotification, CompleteProjectLoadNotification, CancelProjectLoadNotification > Notification
A Notification is a trivial message sent exclusively to the EchoMap controller.
Definition
AllNotificationsFwd.hpp:70
echomap
The main EchoMap outermost namespace for all non-exported symbols.
Definition
ActionController.hpp:20
echomap::CancelProjectLoadNotification
A notification indicating that a pending Project load should be cancelled.
Definition
CancelProjectLoadNotification.hpp:26
echomap::CompleteProjectLoadNotification
A notification indicating that a pending Project is ready to be loaded.
Definition
CompleteProjectLoadNotification.hpp:31
echomap::RegisterVFSMappingNotification
A notification to indicate a new VFS mapping from an external source.
Definition
RegisterVFSMappingNotification.hpp:33
std::unique_ptr
src
platform
EchoMapWeb.hpp
Generated by
1.17.0