1#![allow(clippy::needless_range_loop)]
7
8pub mod signature;
9pub mod blade;
10pub mod multivector;
11pub mod versor;
12pub mod lattice;
13pub mod poincare;
14pub mod reduction;
15pub mod gpu;
16pub mod dod;
17pub mod cayley_klein;
18pub mod pga;
19pub mod cga;
20pub mod sta;
21pub mod quantization;
22pub mod kernels;
23#[cfg(feature = "python")]
24pub mod python;
25
26pub use signature::{
27 MetricSignature, SignatureCGA3D, SignatureEuclidean2D, SignatureEuclidean3D,
28 SignatureHamilton2D, SignatureMinkowski, SignaturePGA3D,
29};
30pub use blade::Blade;
31pub use multivector::{
32 Cl2, Cl3, ClCGA3D, ClHamilton, ClMinkowski, ClPGA3D, Multivector,
33};
34pub use versor::{
35 DualQuaternion, DyadicWalshVersor, HouseholderChain, HouseholderVersor, PlanarRotor,
36 PlanarSpinorBank, Quaternion, VersorAction,
37};
38pub use lattice::{
39 E8Lattice, E8LatticeCodebook, E8_CODEBOOK_SIZE, E8_DIMENSION, E8_NUM_CENTROIDS,
40 E8_NUM_ROOTS, EisensteinA3Lattice, EISENSTEIN_DIMENSION, EISENSTEIN_KISSING_NUMBER,
41};
42pub use poincare::{CayleyKleinSpace, PoincarePoint};
43pub use reduction::CartanDieudonneDecomposer;
44pub use gpu::shaders::*;
45#[cfg(feature = "vulkan")]
46pub use gpu::vulkan::*;
47pub use dod::*;
48pub use cayley_klein::*;
49pub use pga::*;
50pub use cga::*;
51pub use sta::*;
52pub use quantization::*;
53pub use kernels::*;
54
55pub mod prelude {
56 pub use crate::signature::*;
57 pub use crate::blade::Blade;
58 pub use crate::multivector::*;
59 pub use crate::versor::*;
60 pub use crate::lattice::*;
61 pub use crate::poincare::*;
62 pub use crate::reduction::*;
63 pub use crate::gpu::shaders::*;
64 #[cfg(feature = "vulkan")]
65 pub use crate::gpu::vulkan::*;
66 pub use crate::dod::*;
67 pub use crate::cayley_klein::*;
68 pub use crate::pga::*;
69 pub use crate::cga::*;
70 pub use crate::sta::*;
71 pub use crate::quantization::*;
72 pub use crate::kernels::*;
73}