# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.88"
name = "radsym"
version = "0.4.0"
authors = ["Vitaly Vorobyev <vit.vorobiev@gmail.com>"]
build = false
include = [
    "README.md",
    "src/**",
    "examples/**",
    "tests/**",
    "benches/**",
    "Cargo.toml",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Radial symmetry detection: center proposals, local support analysis, scoring, and refinement"
homepage = "https://github.com/VitalyVorobyev/radsym"
documentation = "https://docs.rs/radsym"
readme = "README.md"
keywords = [
    "radial-symmetry",
    "image-processing",
    "circle-detection",
    "center-voting",
    "computer-vision",
]
categories = [
    "algorithms",
    "multimedia::images",
    "science",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/VitalyVorobyev/radsym"
resolver = "2"

[features]
affine = []
default = []
image-io = ["dep:image"]
rayon = [
    "dep:rayon",
    "box-image-pyramid/rayon",
    "box-image-pyramid/par_pyramid",
]
serde = [
    "dep:serde",
    "nalgebra/serde-serialize",
]
tracing = [
    "dep:tracing",
    "box-image-pyramid/tracing",
]

[lib]
name = "radsym"
path = "src/lib.rs"

[[example]]
name = "detect_highlight"
path = "examples/detect_highlight.rs"
required-features = [
    "image-io",
    "serde",
]

[[example]]
name = "detect_rings"
path = "examples/detect_rings.rs"
required-features = [
    "image-io",
    "serde",
]

[[example]]
name = "diagnostics_demo"
path = "examples/diagnostics_demo.rs"
required-features = [
    "image-io",
    "serde",
]

[[example]]
name = "gen_demo_samples"
path = "examples/gen_demo_samples.rs"
required-features = ["image-io"]

[[example]]
name = "perf_export"
path = "examples/perf_export.rs"
required-features = [
    "image-io",
    "serde",
]

[[example]]
name = "radial_center_demo"
path = "examples/radial_center_demo.rs"
required-features = [
    "image-io",
    "serde",
]

[[test]]
name = "pipeline_e2e"
path = "tests/pipeline_e2e.rs"

[[test]]
name = "ringgrid_regression"
path = "tests/ringgrid_regression.rs"

[[test]]
name = "source_pixel"
path = "tests/source_pixel.rs"

[[test]]
name = "surf_hole_regression"
path = "tests/surf_hole_regression.rs"

[[bench]]
name = "frst_bench"
path = "benches/frst_bench.rs"
harness = false

[[bench]]
name = "refinement_bench"
path = "benches/refinement_bench.rs"
harness = false

[[bench]]
name = "ringgrid_proposal_bench"
path = "benches/ringgrid_proposal_bench.rs"
harness = false

[[bench]]
name = "rsd_bench"
path = "benches/rsd_bench.rs"
harness = false

[[bench]]
name = "scoring_bench"
path = "benches/scoring_bench.rs"
harness = false

[[bench]]
name = "surf_hole_bench"
path = "benches/surf_hole_bench.rs"
harness = false

[dependencies.box-image-pyramid]
version = "0.4.2"
default-features = false

[dependencies.image]
version = "0.25"
features = [
    "png",
    "jpeg",
]
optional = true
default-features = false

[dependencies.nalgebra]
version = "0.34"

[dependencies.rayon]
version = "1"
optional = true

[dependencies.serde]
version = "1"
features = ["derive"]
optional = true

[dependencies.thiserror]
version = "2"

[dependencies.tracing]
version = "0.1"
optional = true

[dev-dependencies.approx]
version = "0.5"

[dev-dependencies.criterion]
version = "0.8"

[dev-dependencies.rand]
version = "0.10"

[dev-dependencies.serde_json]
version = "1"
