poulpy/backend/src/hal/oep/mat_znx.rs
backend/src/hal/oep/mat_znx.rsRaw
1use crate::hal::layouts::{Backend, MatZnxOwned, Module};
2
3pub unsafe trait MatZnxAllocImpl<B: Backend> {
4 fn mat_znx_alloc_impl(module: &Module<B>, rows: usize, cols_in: usize, cols_out: usize, size: usize) -> MatZnxOwned;
5}
6
7pub unsafe trait MatZnxAllocBytesImpl<B: Backend> {
8 fn mat_znx_alloc_bytes_impl(module: &Module<B>, rows: usize, cols_in: usize, cols_out: usize, size: usize) -> usize;
9}
10
11pub unsafe trait MatZnxFromBytesImpl<B: Backend> {
12 fn mat_znx_from_bytes_impl(
13 module: &Module<B>,
14 rows: usize,
15 cols_in: usize,
16 cols_out: usize,
17 size: usize,
18 bytes: Vec<u8>,
19 ) -> MatZnxOwned;
20}