forked from 1b-agent/opencadstudio-upstream
67 lines
1.9 KiB
TOML
67 lines
1.9 KiB
TOML
[package]
|
|
name = "ocs_doc_api"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Object-oriented, transport-agnostic CAD entity API for OpenCADStudio plugins and hosts (v2)."
|
|
license = "MIT"
|
|
build = "build.rs"
|
|
|
|
# Dependency wiring: pin the SAME cadkernel/acadrust git revs
|
|
# as the host so `Body`/`EntityType` types are ABI-identical.
|
|
[dependencies]
|
|
serde = { version = "1", features = ["derive"] }
|
|
bincode = "1.3"
|
|
thiserror = "1"
|
|
|
|
# Host adapters convert ObjectId to acadrust handles; kernel handles stay local.
|
|
acadrust = { git = "https://github.com/ramox81/cadcodec.git", rev = "2ecf0c57d387e293d11042aa37637322f2ab9c01", features = ["serde"], optional = true }
|
|
cadkernel = { git = "https://github.com/ramox81/cadkernel.git", rev = "11671a27ffb55f9d71067d84e358451a6309c44e", features = ["acis", "offset"], optional = true }
|
|
ocs_plugin_api = { path = "../ocs_plugin_api", optional = true, features = ["host"] }
|
|
|
|
[build-dependencies]
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
toml = "1"
|
|
|
|
[dev-dependencies]
|
|
serde_json = "1"
|
|
toml = "1"
|
|
|
|
[features]
|
|
# Default keeps the facade and DTOs independent of geometry dependencies.
|
|
default = []
|
|
# host: pull acadrust + cadkernel + the executor/backend trait (in-process side).
|
|
host = ["acadrust", "cadkernel"]
|
|
# ipc: pull ocs_plugin_api for the IPC transport adapter (plugin side).
|
|
ipc = ["acadrust", "ocs_plugin_api"]
|
|
# doc_api_host: convenience helper that builds a DocApi from a HostApi (IPC-only).
|
|
doc_api_host = ["ipc"]
|
|
|
|
[lib]
|
|
name = "ocs_doc_api"
|
|
path = "src/lib.rs"
|
|
|
|
[[test]]
|
|
name = "mock_backend"
|
|
required-features = ["host"]
|
|
|
|
[[example]]
|
|
name = "e1_primitives_and_queries"
|
|
required-features = ["host"]
|
|
|
|
[[example]]
|
|
name = "e2_intersect_two_solids"
|
|
required-features = ["host"]
|
|
|
|
[[example]]
|
|
name = "e3_transform_and_chain"
|
|
required-features = ["host"]
|
|
|
|
[[example]]
|
|
name = "e4_2d_entities_and_bulk"
|
|
required-features = ["host"]
|
|
|
|
[[example]]
|
|
name = "e5_failure_and_guards"
|
|
required-features = ["host"]
|