philips_isyntax_rs/
lib.rs1mod bindings;
2pub mod errors;
3mod facade;
4mod pixel_engine;
5mod sub_image;
6#[cfg(feature = "image")]
7mod utils;
8mod view;
9
10pub type Size = bindings::ffi::Size;
11pub type Rectangle = bindings::ffi::Rectangle;
12pub type RegionRequest = bindings::ffi::RegionRequest;
13pub type DimensionsRange = bindings::ffi::DimensionsRange;
14
15pub type Result<T, E = errors::PhilipsSlideError> = std::result::Result<T, E>;
17
18use cxx::UniquePtr;
19use std::marker::PhantomData;
20
21pub struct PhilipsEngine {
22 inner: UniquePtr<bindings::ffi::PhilipsEngine>,
23}
24
25pub struct Facade<'a> {
26 inner: UniquePtr<bindings::ffi::Facade>,
27 _lifetime: PhantomData<&'a ()>, }
29
30pub struct Image<'a> {
31 inner: UniquePtr<bindings::ffi::Image>,
32 _lifetime: PhantomData<&'a ()>, }
34
35pub struct View<'a> {
36 inner: UniquePtr<bindings::ffi::ImageView>,
37 _lifetime: PhantomData<&'a ()>, }
39
40#[derive(Debug, Clone)]
41pub enum ImageType {
42 WSI,
43 MacroImage,
44 LabelImage,
45}
46
47#[derive(Debug, Clone)]
48pub enum ContainerName {
49 Default,
50 Ficom,
51 Dicom,
52 CachingFicom,
53 S3,
54 Legacy,
55}