use glam_det::nums::f32x4;
use glam_det::{UnitQuatx4, Vec3x4};
use paste::paste;
use test::Bencher;
use crate::collision_tasks::benches::common::{BenchShapePairTest, WithContainer};
use crate::collision_tasks::tests::common::TestInput;
use crate::collision_tasks::ShapeWideTester;
use crate::convex_contact_manifold::Convex4ContactManifoldWide;
use crate::shapes::{CuboidWide, InfinitePlaneWide};
use crate::traits::PairWideTest;
use crate::{Cuboid, InfinitePlane, ShapeContainer};
struct CuboidInfinitePlaneBench;
impl_bench!(
CuboidInfinitePlaneBench,
CuboidWide,
InfinitePlaneWide,
Convex4ContactManifoldWide,
4
);
type InputType = TestInput<Cuboid, InfinitePlane>;
bench!(InputType,CuboidInfinitePlaneBench,"cuboid_infinite_plane/",
<0,000_4contacts_no_rotation>,
<1,001_2contacts_rotate_x_45>,
<2,002_4contacts_fully_penetrate_no_rotation>,
<3,003_4contacts_fully_penetrate_rotate_x_45>,
<4,004_1contacts_rotate_x_45_z_45>,
<5,005_nocollide>,
<6,006_3contacts_rotate_x_45_z_45>,
<7,007_4contacts_fully_penetrate_2_rotate_x_30_z_30>,
<8,008_4contacts_fully_penetrate_3_rotate_z_60>
);