The generic template types used as the basis for the core types.
These types are all templates used to define the actual Types. These templetes are implementation details of GLM types and should not be used explicitly.