Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

QVM: Quaternions, Vectors, Matrices

View Proxies

Boost QVM defines various function templates which take a reference to a quaternion/vector/matrix object and return it by reference as a different unspecified static type with quaternion/vector/matrix semantics for which the quat_traits/vec_traits/mat_traits template is specialized.

For example, given a vector v, the expression col_mat(v) returns a view proxy that makes v "look and feel" like a matrix-column. More complex views are created by simple composition, for example transposed(col_mat(v)) is equivalent to row_mat(v).

Below is a list of all view proxies supported by Boost QVM: