extern crate mazth; use self::mazth::i_bound::IBound; /// acceleration interface for building and querying spatial data pub trait ISpatialAccel where T: Default + Clone, { /// query for a list of objects intersecting with input fn query_intersect(&self, input: &dyn IBound) -> Result, &'static str>; fn query_intersect_single(&self, input: &dyn IBound) -> Result, &'static str>; /// build a acceleration structure with input bounds and object ids fn build_all(&mut self, &[(T, &dyn IBound)]) -> Result<(), &'static str>; }