XLL+ Class Library

imtx<T> Class

[C++]
class imtx<T>

Overview

The imtx<T> template is a pure interface definition for a container of two-dimensional arrays of type T.

Any class that is descended from imtx (or which implements all of the methods defined in the interface) can make use of the matrix methods contained in COper, CXlOper and CXlArray, which support conversion of array data to and from Excel formats.

If your code already uses a matrix class, you can easily define an adapter class that will allow your existing class to be used as well.

The class also contains methods and operators that make it convenient to pass values to functions expecting arrays of type T. See the Tutorial for further examples of using imtx<T>.

Associated classes

The following classes are descended from or associated with imtx<T>:

Class Purpose
imtx_impl<T> Default implementation class; returns false to all optional operations.
mtx_ptrs<T> Implementation class; stores data in an array of pointers.
mtx_flat<T> Implementation class; stores data in a single continuous array.
mtx_ptrreader<M> Translation class; reads data from any matrix into an array of pointers.
mtx_ptrwriter<M> Translation class; writes data to any matrix from an array of pointers.
mtx_flatreader<M> Translation class; reads data from any matrix into a continous array of items.
mtx_flatwriter<M> Translation class; writes data to any matrix from a continous array of items.

Global functions

The following global functions make use of imtx<T> and its associated classes:

Function Purpose
ptrreader<M> Constructor function, which creates a mtx_ptrreader object for a given matrix.
ptrwriter<M> Constructor function, which creates a mtx_ptrwriter object for a given matrix.
flatreader<M> Constructor function, which creates a mtx_flatreader object for a given matrix.
flatwriter<M> Constructor function, which creates a mtx_flatwriter object for a given matrix.
copy_offset<M, N> Generic copy function, for transferring data between matrices, including matrices of different sizes and/or storage strategies.
mtx_copy<M, N> Generic copy function, for transferring data between equal-sized matrices, including matrices with different storage strategies.
mtx_flatten<M, V> Generic copy function, for transferring data between a matrix and a std::vector<T>.
mtx_copy_transpose<M, N> Generic copy function, for transposing data between equivalent-sized matrices, including matrices with different storage strategies.
mtx_transpose<M> Generic transformation function, for transposing data between rows and columns in a single matrix.

Requirements

Header: plemtx.h

See Also

imtx<T> Methods | plemtx.h | imtx_impl<T> class | mtx_ptrs<T> class | mtx_flat<T> class | Adapter classes for imtx<T>