Add serial/protocol modules to plan, binary format to arch, -flto to Makefiles
architecture.md: replace JSON control payloads with binary serialization; add Protocol Serialization section describing little-endian wire format, put/get buffer layer, and write_*/read_* protocol layer. planning.md: mark common/media_ctrl/v4l2_ctrl done; insert serial (#4) and protocol (#6) modules with descriptions. conventions.md: document -flto and its implication (no manual static for inlining — compiler handles it at link time). Makefiles: add -flto to CFLAGS in all four Makefiles. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
18
planning.md
18
planning.md
@@ -37,14 +37,16 @@ Modules are listed in intended build order. Each depends only on modules above i
|
||||
|
||||
| # | Module | Status | Notes |
|
||||
|---|---|---|---|
|
||||
| 1 | `common` | not started | Error types, base definitions — no dependencies |
|
||||
| 2 | `media_ctrl` | not started | Media Controller API — device and topology enumeration, pad format config |
|
||||
| 3 | `v4l2_ctrl` | not started | V4L2 controls — enumerate, get, set camera parameters |
|
||||
| 4 | `transport` | not started | Encapsulated transport — header encode/decode, framed TCP read/write |
|
||||
| 5 | `frame_alloc` | not started | Per-frame allocation with bookkeeping (byte budget, ref counting) |
|
||||
| 6 | `relay` | not started | Input dispatch to output queues (low-latency and completeness modes) |
|
||||
| 7 | `ingest` | not started | MJPEG frame parser (two-pass EOI state machine, opaque stream → discrete frames) |
|
||||
| 8 | `archive` | not started | Write frames to disk, control messages to JSON log |
|
||||
| 1 | `common` | done | Error types, base definitions — no dependencies |
|
||||
| 2 | `media_ctrl` | done | Media Controller API — device and topology enumeration, pad format config |
|
||||
| 3 | `v4l2_ctrl` | done | V4L2 controls — enumerate, get, set camera parameters |
|
||||
| 4 | `serial` | not started | `put`/`get` primitives for little-endian binary serialization into byte buffers |
|
||||
| 5 | `transport` | not started | Encapsulated transport — frame header, TCP stream abstraction, single-write send |
|
||||
| 6 | `protocol` | not started | Typed `write_*`/`read_*` functions for all message types; builds on serial + transport |
|
||||
| 7 | `frame_alloc` | not started | Per-frame allocation with bookkeeping (byte budget, ref counting) |
|
||||
| 8 | `relay` | not started | Input dispatch to output queues (low-latency and completeness modes) |
|
||||
| 9 | `ingest` | not started | MJPEG frame parser (two-pass EOI state machine, opaque stream → discrete frames) |
|
||||
| 10 | `archive` | not started | Write frames to disk, control messages to binary log |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user