Vyntek

API 接口文档

按实摘自仓库公开头 include/vyntek.h 与 include/vyntek/**(嵌套子树 + CM1 扁平便利伞头),未编造未声明的 ABI。空实现 / 未齐处标注「桩 / STUB」。规格全文与对齐表见 cpp-headers;成像/内存正文 image-model · memory-management。

头树已落地,核心语义亦已实现(编排 Run/Link/Validate、.avtg Load/Save、采集停流与归还泵、成像句柄与内存协调);真实算法仍 stub(Reed 职责),且全部未验收。命名空间 vyntek::toolgroup / vyntek::imaging。MVP 无稳定 ABI(VYNTEK_ABI_UNSTABLE)。

导航

伞头 — vyntek.h

便利伞头(CONVENIENCE ONLY):聚合四模块扁平便利头 + C API,并提供版本查询。优先链接 Vyntek::toolgroup + Vyntek::imaging。

版本宏

宏说明
VYNTEK_VERSION_MAJOR主版本,当前 0
VYNTEK_VERSION_MINOR次版本,当前 1
VYNTEK_VERSION_PATCH补丁,当前 0
VYNTEK_VERSION字符串形式,如 "0.1.0"
VYNTEK_VERSION_NUMBERMAJOR*10000 + MINOR*100 + PATCH
VYNTEK_VERSION_STRINGIZE_ / VYNTEK_VERSION_STRINGIZE字符串化辅助宏(VYNTEK_VERSION 由它们拼出)
VYNTEK_ABI_UNSTABLE标记非稳定 ABI

命名空间函数(vyntek::)

const char* version() noexcept — 库版本字符串。

const char* version_commit() noexcept — 配置时短 git commit,或 "unknown"。

模块索引(按实 · CM1)

模块便利头嵌套权威状态
ToolGroupvyntek/toolgroup.hppvyntek/toolgroup/*.hpp便利转发 · 编排核心语义已实现,真实算法 stub
Imagingvyntek/imaging.hppvyntek/imaging/*.hpp便利转发 · 部分实现 · 仍 STUB 标
Memoryvyntek/memory.hpp权威在 imaging/buffer.hpp转发 + vyntek::BufferView 占位
Sessionvyntek/session.hpp权威在 toolgroup/run_session.hpp转发 + vyntek::Session 占位(≠ AcquisitionSession)
测试/示例假工具—toolgroup/fake_tools.hpp · imaging/fake_camera_adapter.hppfake::register_fake_tools(FakeAcq 等 8 件);非产品内置

C API(vyntek/capi/vyntek_exports.h)

Rhett PInvoke 薄导出面。NON-STABLE / STUB:符号、参数序、错误码可无预告变更。不透明句柄 + Adopt/Release;勿解引用内部布局。

错误码(enum,int 返回)

码值
VYNTEK_CAPI_OK0
VYNTEK_CAPI_ERR_NULL-1
VYNTEK_CAPI_ERR_NOT_IMPL-2
VYNTEK_CAPI_ERR_BUSY-3
VYNTEK_CAPI_ERR_IO-4
VYNTEK_CAPI_ERR_INVALID-5

session_run 对 Succeeded(含仅报 NotImplemented 的 M1 骨架宽松路径)返回 VYNTEK_CAPI_OK,不等于「算法已实现」;仅当 status 非 Succeeded 且诊断含 NotImplemented 时映射 VYNTEK_CAPI_ERR_NOT_IMPL。

不透明句柄类型

vyntek_toolgroup_t · vyntek_run_session_t · vyntek_pixel_handle_t · vyntek_acquisition_session_t · vyntek_registry_t · vyntek_diagnostics_t

函数组

前缀函数说明
vyntek_toolgroup_*create / load / validate / session_create / session_run / request_cancel / session_release / release编排主路径
diagnostics_count / diagnostics_code_at / diagnostics_at / diagnostics_clear / diagnostics_release诊断投影(码为 DiagnosticCode 数值)
registry_create / registry_release注册表
run / adopt_group / adopt_sessionPInvoke 便捷(run = session_create + session_run;优先显式两步)
vyntek_imaging_handle_*adopt / release / share(TC-DISP-02 独立持有 Share)/ info(宽/高/格式窄投影)/ image_info(M5-08 全 ImageInfo 投影:origin / stride / invalid_depth / color_encoding)像素句柄
vyntek_imaging_*create_copy(M5-01/M5-08:拷贝调用方像素成已发布只读图;row_step_bytes<=0 = packed;带 ROI origin 与 Depth16 sentinel 字段)· open_read / view_close(借用读视图;view_close 不释放图像)真实像素入口 / 借用读视图
try_get_gray8 / try_get_rgb24 / try_get_bgr24 / try_get_depth16(out_is_valid 可空)/ try_get_depth_meters像素投影读;格式不符 / OOB → ERR_INVALID;无隐式转换
vyntek_imaging_acq_session_*adopt / release / latest / peek_ingress_frontM4-11 / M5-09:Latest/Peek 为空 → OK + NULL(非错误)

包含方式(按实)

#include <vyntek.h>
// 或扁平便利:
#include <vyntek/toolgroup.hpp>
#include <vyntek/imaging.hpp>
// 推荐嵌套(与规格/cpp-headers 一致):
#include <vyntek/toolgroup/toolgroup.hpp>
#include <vyntek/toolgroup/run_session.hpp>
#include <vyntek/imaging/handle.hpp>
namespace tg = vyntek::toolgroup;
namespace im = vyntek::imaging;

MVP 口径

On this page