Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

vnl_transpose Class Reference

#include <vnl_transpose.h>

Collaboration diagram for vnl_transpose:

Collaboration graph
[legend]
List of all members.

Public Methods

 vnl_transpose (const vnl_matrix< double > &M)
 operator vnl_matrix () const
vnl_matrix< double > asMatrix () const
vnl_matrix< double > operator * (const vnl_matrix< double > &O)
vnl_vector< double > operator * (const vnl_vector< double > &O)

Friends

vnl_matrix< double > operator * (const vnl_matrix< double > &A, const vnl_transpose &B)

Detailed Description

Efficient matrix transpose. vnl_transpose is an efficient way to write C = vnl_transpose(A) * B. The vnl_transpose class holds a reference to the original matrix and when involved in an operation for which it has been specialized, performs the operation without copying.

If the operation has not been specialized, the vnl_transpose performs a copying conversion to a matrix, printing a message to stdout. At that stage, the user may choose to implement the particular operation or use vnl_transpose::asMatrix() to clear the warning.

NOTE: This is a reference class, so should be shorted-lived than the matrix to which it refers.

Definition at line 35 of file vnl_transpose.h.


Constructor & Destructor Documentation

vnl_transpose::vnl_transpose const vnl_matrix< double > &    M [inline]
 

Make a vnl_transpose object referring to matrix M.

Definition at line 41 of file vnl_transpose.h.

References vnl_matrix< T >::transpose().


Member Function Documentation

vnl_matrix<double> vnl_transpose::asMatrix   const [inline]
 

Quietly convert a vnl_transpose to a matrix.

Definition at line 52 of file vnl_transpose.h.

References vnl_fastops::AtB(), and vnl_matrix< T >::columns().

vnl_vector<double> vnl_transpose::operator * const vnl_vector< double > &    O [inline]
 

Return M' * O.

Definition at line 66 of file vnl_transpose.h.

References vnl_fastops::ABt(), M_, vnl_matrix< double >::rows(), and vnl_matrix< T >::rows().

vnl_matrix<double> vnl_transpose::operator * const vnl_matrix< double > &    O [inline]
 

Return M' * O.

Definition at line 58 of file vnl_transpose.h.

References vnl_fastops::AtB(), and vnl_matrix< T >::columns().

vnl_transpose::operator vnl_matrix   const [inline]
 

Noisily convert a vnl_transpose to a matrix.

Definition at line 45 of file vnl_transpose.h.

References vnl_matrix< T >::transpose().


Friends And Related Function Documentation

vnl_matrix<double> operator * const vnl_matrix< double > &    A,
const vnl_transpose &    B
[friend]
 

Return A * B'.

Definition at line 74 of file vnl_transpose.h.


The documentation for this class was generated from the following file:
Generated at Wed Mar 12 01:13:41 2003 for ITK by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2000