added GPR

This commit is contained in:
Ayzen
2026-03-19 19:29:08 +03:00
parent bdefe3f581
commit 9581730e41
39 changed files with 3830 additions and 201 deletions
@@ -7,10 +7,12 @@ namespace radar::processing {
class BScanProcessor final : public ProcessorInterface {
public:
[[nodiscard]] auto name() const -> std::string override;
[[nodiscard]] auto process(
const ipc::SweepTraceBlock& trace,
[[nodiscard]] auto process_collection(
const config::RunConfig& run_config,
const ipc::PreprocessedCollection& collection,
std::span<const ipc::PreprocessedCollection> previous_collections,
const ProcessingLiveConfig& live_config
) -> ipc::ResultPayload override;
) -> ipc::ResultCollection override;
};
} // namespace radar::processing
@@ -0,0 +1,18 @@
#pragma once
#include "processor_interface.hpp"
namespace radar::processing {
class GprProcessor final : public ProcessorInterface {
public:
[[nodiscard]] auto name() const -> std::string override;
[[nodiscard]] auto process_collection(
const config::RunConfig& run_config,
const ipc::PreprocessedCollection& collection,
std::span<const ipc::PreprocessedCollection> previous_collections,
const ProcessingLiveConfig& live_config
) -> ipc::ResultCollection override;
};
} // namespace radar::processing
@@ -7,10 +7,12 @@ namespace radar::processing {
class PassThroughProcessor final : public ProcessorInterface {
public:
[[nodiscard]] auto name() const -> std::string override;
[[nodiscard]] auto process(
const ipc::SweepTraceBlock& trace,
[[nodiscard]] auto process_collection(
const config::RunConfig& run_config,
const ipc::PreprocessedCollection& collection,
std::span<const ipc::PreprocessedCollection> previous_collections,
const ProcessingLiveConfig& live_config
) -> ipc::ResultPayload override;
) -> ipc::ResultCollection override;
};
} // namespace radar::processing
@@ -1,8 +1,10 @@
#pragma once
#include <span>
#include <string>
#include "processing_live_config.hpp"
#include "run_config.hpp"
#include "shared_types.hpp"
namespace radar::processing {
@@ -12,10 +14,12 @@ class ProcessorInterface {
virtual ~ProcessorInterface() = default;
[[nodiscard]] virtual auto name() const -> std::string = 0;
[[nodiscard]] virtual auto process(
const ipc::SweepTraceBlock& trace,
[[nodiscard]] virtual auto process_collection(
const config::RunConfig& run_config,
const ipc::PreprocessedCollection& collection,
std::span<const ipc::PreprocessedCollection> previous_collections,
const ProcessingLiveConfig& live_config
) -> ipc::ResultPayload = 0;
) -> ipc::ResultCollection = 0;
};
} // namespace radar::processing