use crate::signal::traits::medfilt::MedianFilterAlgorithms;
use numr::error::{Error, Result};
use numr::runtime::cuda::{CudaClient, CudaRuntime};
use numr::tensor::Tensor;
impl MedianFilterAlgorithms<CudaRuntime> for CudaClient {
fn medfilt(
&self,
_x: &Tensor<CudaRuntime>,
_kernel_size: usize,
) -> Result<Tensor<CudaRuntime>> {
Err(Error::backend_limitation(
"cuda",
"medfilt",
"Median filtering is CPU-only due to sorting requirements. Transfer data to CPU first.",
))
}
fn medfilt2d(
&self,
_x: &Tensor<CudaRuntime>,
_kernel_size: (usize, usize),
) -> Result<Tensor<CudaRuntime>> {
Err(Error::backend_limitation(
"cuda",
"medfilt2d",
"Median filtering is CPU-only due to sorting requirements. Transfer data to CPU first.",
))
}
}