pub mod affine_grid;
pub mod grid_sample;
pub mod grid_sample_backward;
pub mod interpolate;
pub mod interpolate_backward;
pub mod nms;
pub mod pixel_shuffle;
pub mod pixel_unshuffle;
pub mod roi_align;
pub mod roi_align_backward;
pub mod roi_pool;
pub mod roi_pool_backward;
pub use affine_grid::{AffineGridArgs, AffineGridDescriptor, AffineGridPlan};
pub use grid_sample::{GridSampleArgs, GridSampleDescriptor, GridSamplePlan};
pub use grid_sample_backward::{
GridSampleBackwardArgs, GridSampleBackwardDescriptor, GridSampleBackwardPlan,
};
pub use interpolate::{
InterpolateArgs, InterpolateDescriptor, InterpolateMode, InterpolatePlan,
};
pub use interpolate_backward::{
InterpolateBackwardArgs, InterpolateBackwardDescriptor, InterpolateBackwardPlan,
};
pub use nms::{NmsArgs, NmsDescriptor, NmsPlan};
pub use pixel_shuffle::{PixelShuffleArgs, PixelShuffleDescriptor, PixelShufflePlan};
pub use pixel_unshuffle::{
PixelUnshuffleArgs, PixelUnshuffleDescriptor, PixelUnshufflePlan,
};
pub use roi_align::{RoiAlignArgs, RoiAlignDescriptor, RoiAlignPlan};
pub use roi_align_backward::{
RoiAlignBackwardArgs, RoiAlignBackwardDescriptor, RoiAlignBackwardPlan,
};
pub use roi_pool::{RoiPoolArgs, RoiPoolDescriptor, RoiPoolPlan};
pub use roi_pool_backward::{
RoiPoolBackwardArgs, RoiPoolBackwardDescriptor, RoiPoolBackwardPlan,
};
pub(crate) fn map_status(code: i32) -> baracuda_cutlass::Result<()> {
use baracuda_cutlass::Error;
match code {
0 => Ok(()),
1 => Err(Error::MisalignedOperand),
2 => Err(Error::InvalidProblem(
"baracuda-kernels-sys reported invalid problem",
)),
3 => Err(Error::Unsupported(
"baracuda-kernels-sys reported unsupported configuration",
)),
4 => Err(Error::WorkspaceTooSmall { needed: 0, got: 0 }),
n => Err(Error::CutlassInternal(n)),
}
}