lardon3d/include/lardon3d/runtime_session.h
fy59 b84f860d86 refactor(core): freeze global maintenance baseline
Complete the A-to-Z Lardon3D maintenance and coherence pass.

Generalize host resource policy, remove the global CPU12 ceiling, preserve
host CPU/RAM reserves, scale Task capabilities through the Resource Governor,
and validate deterministic parallel GV execution.

Migrate Project DB to v23 with data-driven camera, lens, optical configuration
and calibration profiles, including manual lenses without EXIF.

Integrate safe optional LARDON SSD swap/scratch control with Governor and F10
drain/safe-to-unplug semantics.

Refactor the ncurses TUI into a runtime observatory with durable progress,
elapsed time, smoothed ETA, throughput, resource telemetry, Governor state,
optics workflow, colors and compact/no-color fallbacks.

Reconcile Queue lifetime, persistence, concurrency, comments, tests,
README, AGENTS and canonical documentation.

GLOBAL_MAINTENANCE_AUDIT=PASS/FROZEN
2026-09-01 08:00:47 +02:00

30 lines
865 B
C

#ifndef LARDON3D_RUNTIME_SESSION_H
#define LARDON3D_RUNTIME_SESSION_H
#include <stdbool.h>
#include <stddef.h>
#include <lardon3d/app_state.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Establishes the interactive Project/Queue lifetime boundary. The existing
* sole Queue is cancelled, joined, and destroyed (including finished
* callbacks and retained history) before the Project DB is closed; only then
* is one empty Queue created with a fresh ID namespace. `state`, its Governor,
* and a positive capacity are required. On allocation failure the Project is
* still safely closed and state->task_queue is NULL. Main-thread owner only;
* callers must release Queue/DB observers before entry and rebind them after.
*/
bool lardon3d_runtime_project_boundary(
Lardon3DAppState *state,
size_t queue_capacity
);
#ifdef __cplusplus
}
#endif
#endif