X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2Fcml%2Fmatrix.h;fp=src%2Fcml%2Fmatrix.h;h=3573e38350640f53aba67c42b2671f7a4e7caa5a;hp=0000000000000000000000000000000000000000;hb=0fffd0097d7b496454413e57b398c903ecc252e4;hpb=79becf045222f385da5a1b9eb79081f6f5266c86 diff --git a/src/cml/matrix.h b/src/cml/matrix.h new file mode 100644 index 0000000..3573e38 --- /dev/null +++ b/src/cml/matrix.h @@ -0,0 +1,62 @@ +/* -*- C++ -*- ------------------------------------------------------------ + +Copyright (c) 2007 Jesse Anders and Demian Nave http://cmldev.net/ + +The Configurable Math Library (CML) is distributed under the terms of the +Boost Software License, v1.0 (see cml/LICENSE for details). + + *-----------------------------------------------------------------------*/ +/** @file + * @brief + * + * The configurable matrix<> class. + */ + +#ifndef cml_matrix_h +#define cml_matrix_h + +#include + +namespace cml { + +/** A configurable matrix. + * + * This class encapsulates the notion of a matrix. The ArrayType template + * argument can be used to select the type of array to be used as internal + * storage for a 2D array of type Element. + * + * @internal Unlike the previous version, this uses specializations to better + * enable varied array and matrix types. For example, with the rebind method, + * it's difficult to support external<> matrix types that should not be + * assigned to. + * + * @internal All assignments to the matrix should go through UnrollAssignment, + * which ensures that the source expression and the destination matrix have + * the same size. This is particularly important for dynamically-sized + * matrices. + */ +template class matrix; + +} // namespace cml + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#endif + +// ------------------------------------------------------------------------- +// vim:ft=cpp