Files
cvmmap-streamer/include/cvmmap_streamer/sim/wire.hpp
T
crosstyan 56e874ab6d feat(downstream): add cvmmap downstream runtime implementation
This commit introduces the full downstream runtime implementation needed to ingest, transform, and publish streams.

It preserves the original upstream request boundary by packaging the entire cvmmap-streamer module (build config, public API, protocol and IPC glue, and simulator/tester entrypoints) in one coherent core unit.

Keeping this group isolated enables reviewers to validate runtime behavior and correctness without mixing test evidence or process documentation changes.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-05 20:31:58 +08:00

39 lines
834 B
C++

#pragma once
#include <cstdint>
#include <span>
#include <string_view>
#include "cvmmap_streamer/ipc/contracts.hpp"
namespace cvmmap_streamer::sim {
constexpr std::size_t kSyncMessageBytes = 48;
constexpr std::size_t kModuleStatusMessageBytes = 32;
void write_frame_metadata(
std::span<std::uint8_t> metadata,
const ipc::FrameInfo &info,
std::uint32_t frame_count,
std::uint64_t timestamp_ns);
void write_sync_message(
std::span<std::uint8_t> out,
std::string_view label,
std::uint32_t frame_count,
std::uint64_t timestamp_ns);
void write_module_status_message(
std::span<std::uint8_t> out,
std::string_view label,
ipc::ModuleStatus status);
void write_deterministic_payload(
std::span<std::uint8_t> out,
std::uint32_t frame_count,
std::uint16_t width,
std::uint16_t height,
std::uint8_t channels);
}