Skip to main content

apple_mps/
lib.rs

1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
3#![allow(clippy::missing_const_for_fn)]
4#![allow(clippy::missing_errors_doc)]
5#![allow(clippy::module_name_repetitions)]
6#![allow(clippy::must_use_candidate)]
7
8pub mod core;
9pub mod error;
10pub mod ffi;
11pub mod filters;
12pub mod image;
13pub mod matrix;
14pub mod ndarray;
15pub mod neural;
16pub mod ray;
17
18pub use crate::core::{
19    device_options, hint_temporary_memory_high_water_mark, preferred_device,
20    set_heap_cache_duration, supports_mtl_device, CommandBuffer as MpsCommandBuffer, Predicate,
21    PreferredDevice,
22};
23pub use crate::error::{Error, Result};
24pub use crate::filters::{
25    HistogramInfo, ImageAdd, ImageBilinearScale, ImageBox, ImageConvolution, ImageGaussianBlur,
26    ImageHistogram, ImageLanczosScale, ImageMedian, ImageReduceRowMax, ImageReduceRowMean,
27    ImageReduceRowMin, ImageReduceRowSum, ImageScaleAndAdd, ImageSobel, ImageStatisticsMean,
28    ImageStatisticsMinAndMax, ImageThresholdBinary, ScaleTransform,
29};
30pub use crate::image::{
31    feature_channel_format, image_edge_mode, image_layout, kernel_options, Image, ImageDescriptor,
32    ImageReadWriteParams, ImageRegion,
33};
34pub use crate::matrix::{
35    data_type, data_type_size, Matrix, MatrixDescriptor, MatrixMultiplication,
36    MatrixMultiplicationDescriptor, Vector, VectorDescriptor,
37};
38pub use crate::ndarray::{NDArray, NDArrayDescriptor, NDArrayIdentity};
39pub use crate::neural::{
40    rnn_sequence_direction, CnnConvolutionDescriptor, CnnNeuronReluNode, CnnPoolingMaxNode,
41    CnnSoftMaxNode, CnnUpsamplingNearestNode, NNGraph, NNImageNode, RnnSingleGateDescriptor,
42};
43pub use crate::ray::{
44    acceleration_structure_status, acceleration_structure_usage, cull_mode, intersection_data_type,
45    intersection_type, polygon_type, ray_data_type, winding, PolygonAccelerationStructure,
46    RayIntersector, SVGF,
47};