EchoMap 2026-07-25 6d3977c
An experimental cross-platform digital signal processing application for sound-source localisation.
Loading...
Searching...
No Matches
JSONPartialDeserialiser.cpp File Reference

JSONPartialDeserialiser implementation. More...

Go to the source code of this file.

Namespaces

namespace  echomap
 The main EchoMap outermost namespace for all non-exported symbols.

Functions

auto anonymous_namespace{JSONPartialDeserialiser.cpp}::get_signals (simdjson::ondemand::object &root, echomap::PartialProject &project, std::unordered_map< std::string_view, echomap::id_type > &loaded)
template<typename simdjson_value>
auto simdjson::tag_invoke (deserialize_tag, simdjson_value &value, echomap::PartialProject &partial_project)

Variables

echomap::Workeranonymous_namespace{JSONPartialDeserialiser.cpp}::parent_worker = nullptr

Detailed Description

JSONPartialDeserialiser implementation.

Author
Oliver Dixon
Date
2026-07-25

Definition in file JSONPartialDeserialiser.cpp.

Function Documentation

◆ tag_invoke()

template<typename simdjson_value>
auto simdjson::tag_invoke ( deserialize_tag ,
simdjson_value & value,
echomap::PartialProject & partial_project )

Definition at line 57 of file JSONPartialDeserialiser.cpp.

62{
63 ondemand::object root;
64 auto error = echomap::JSONDeserialiserHelpers::get_root(root, value);
65 if (error)
66 return error;
67
68 // Metadata
69 if ((error = echomap::JSONDeserialiserHelpers::get_metadata(root, partial_project)))
70 return error;
71
72 // Signals
74 if ((error = get_signals(root, partial_project, signal_ids)))
75 return error;
76
77 // Sensors
79 if ((error = echomap::JSONDeserialiserHelpers::get_sensors(root, partial_project, sensor_ids)))
80 return error;
81
82 // Channel Map
83 if ((error = echomap::JSONDeserialiserHelpers::get_mappings(root, partial_project, signal_ids, sensor_ids)))
84 return error;
85
86 return SUCCESS;
87}