burn_vision/backends/cpu/
ops.rs1#[cfg(feature = "ndarray")]
2mod ndarray {
3 use crate::{BoolVisionOps, FloatVisionOps, IntVisionOps, QVisionOps, VisionBackend};
4 use burn_ndarray::{FloatNdArrayElement, IntNdArrayElement, NdArray, QuantElement};
5
6 impl<E: FloatNdArrayElement, I: IntNdArrayElement, Q: QuantElement> BoolVisionOps
7 for NdArray<E, I, Q>
8 {
9 }
10 impl<E: FloatNdArrayElement, I: IntNdArrayElement, Q: QuantElement> IntVisionOps
11 for NdArray<E, I, Q>
12 {
13 }
14 impl<E: FloatNdArrayElement, I: IntNdArrayElement, Q: QuantElement> FloatVisionOps
15 for NdArray<E, I, Q>
16 {
17 }
18 impl<E: FloatNdArrayElement, I: IntNdArrayElement, Q: QuantElement> QVisionOps
19 for NdArray<E, I, Q>
20 {
21 }
22 impl<E: FloatNdArrayElement, I: IntNdArrayElement, Q: QuantElement> VisionBackend
23 for NdArray<E, I, Q>
24 {
25 }
26}
27
28#[cfg(feature = "candle")]
29mod candle {
30 use crate::{BoolVisionOps, FloatVisionOps, IntVisionOps, QVisionOps, VisionBackend};
31 use burn_candle::{Candle, FloatCandleElement, IntCandleElement};
32
33 impl<F: FloatCandleElement, I: IntCandleElement> BoolVisionOps for Candle<F, I> {}
34 impl<F: FloatCandleElement, I: IntCandleElement> IntVisionOps for Candle<F, I> {}
35 impl<F: FloatCandleElement, I: IntCandleElement> FloatVisionOps for Candle<F, I> {}
36 impl<F: FloatCandleElement, I: IntCandleElement> QVisionOps for Candle<F, I> {}
37 impl<F: FloatCandleElement, I: IntCandleElement> VisionBackend for Candle<F, I> {}
38}
39
40#[cfg(feature = "tch")]
41mod tch {
42 use crate::{BoolVisionOps, FloatVisionOps, IntVisionOps, QVisionOps, VisionBackend};
43 use burn_tch::{LibTorch, TchElement};
44
45 impl<E: TchElement, Q: burn_tch::QuantElement> BoolVisionOps for LibTorch<E, Q> {}
46 impl<E: TchElement, Q: burn_tch::QuantElement> IntVisionOps for LibTorch<E, Q> {}
47 impl<E: TchElement, Q: burn_tch::QuantElement> FloatVisionOps for LibTorch<E, Q> {}
48 impl<E: TchElement, Q: burn_tch::QuantElement> QVisionOps for LibTorch<E, Q> {}
49 impl<E: TchElement, Q: burn_tch::QuantElement> VisionBackend for LibTorch<E, Q> {}
50}