# 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 = "2021"
name = "edgefirst-image"
version = "0.16.3"
authors = ["Au-Zone Technologies <support@au-zone.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance image processing with hardware acceleration for edge AI"
homepage = "https://edgefirst.ai"
documentation = "https://docs.rs/edgefirst-image"
readme = "README.md"
keywords = [
    "image-processing",
    "computer-vision",
    "gpu",
    "edge-ai",
    "nv12",
]
categories = [
    "multimedia::images",
    "multimedia::video",
    "embedded",
]
license = "Apache-2.0"
repository = "https://github.com/EdgeFirstAI/hal"
resolver = "3"

[features]
default = ["opengl"]
dma_test_formats = []
g2d_test_formats = []
opencv = ["dep:opencv"]
opengl = [
    "dep:khronos-egl",
    "dep:gbm",
]
tracker = [
    "edgefirst-decoder/tracker",
    "dep:edgefirst-tracker",
]

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

[[bench]]
name = "common"
path = "benches/common.rs"

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

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

[[bench]]
name = "opencv_benchmark"
path = "benches/opencv_benchmark.rs"
harness = false
required-features = ["opencv"]

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

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

[dependencies.ctor]
version = "0.4.2"

[dependencies.edgefirst-decoder]
version = "0.16.3"

[dependencies.edgefirst-tensor]
version = "0.16.3"

[dependencies.edgefirst-tracker]
version = "0.16.3"
optional = true

[dependencies.enum_dispatch]
version = "0.3.13"

[dependencies.env_logger]
version = "0.11.10"

[dependencies.fast_image_resize]
version = "5.5.0"
features = [
    "image",
    "rayon",
]

[dependencies.four-char-code]
version = "2.3.0"

[dependencies.gls]
version = "0.1.6"

[dependencies.half]
version = "2.7.1"
features = ["num-traits"]

[dependencies.jpeg-encoder]
version = "0.6.1"
features = ["simd"]

[dependencies.kamadak-exif]
version = "0.6.1"

[dependencies.khronos-egl]
version = "6.0.0"
features = ["dynamic"]
optional = true

[dependencies.libc]
version = "0.2.183"

[dependencies.libloading]
version = "0.8.8"

[dependencies.log]
version = "0.4.29"

[dependencies.ndarray]
version = "0.16.1"
features = ["rayon"]

[dependencies.ndarray-stats]
version = "0.6.0"

[dependencies.opencv]
version = "0.95"
features = ["imgproc"]
optional = true
default-features = false

[dependencies.rayon]
version = "1.11.0"

[dependencies.tokio]
version = "1.50.0"
features = [
    "rt",
    "sync",
]

[dependencies.yuv]
version = "0.8.12"
features = ["fast_mode"]

[dependencies.zune-jpeg]
version = "0.4.21"

[dependencies.zune-png]
version = "0.4.10"

[dev-dependencies.image]
version = "0.25.10"
features = ["png"]
default-features = false

[dev-dependencies.image-compare]
version = "0.4.2"

[target.'cfg(target_os = "linux")'.dependencies.dma-heap]
version = "0.4.1"

[target.'cfg(target_os = "linux")'.dependencies.g2d-sys]
version = "1.2.0"

[target.'cfg(target_os = "linux")'.dependencies.gbm]
version = "0.18.2"
features = [
    "dynamic",
    "drm-support",
]
optional = true
default-features = false
package = "edgefirst-gbm"

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(coverage,coverage_nightly)"]
