use super::{Child, Init};

use super::{
    LocalTransform2D, Transform2D,
    LocalTransform3D, Transform3D,
    TransformGuide
};

use number_traits::Float;
use specs::World;


#[inline]
pub fn register<T: 'static + Sync + Send + Copy + Float>(world: &mut World) {

    world.register::<Child>();
    world.register::<Init>();

    world.register::<LocalTransform3D<T>>();
    world.register::<Transform3D<T>>();

    world.register::<LocalTransform2D<T>>();
    world.register::<Transform2D<T>>();

    world.add_resource(TransformGuide::new());
}
