Slicer  5.1
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
itkMatrixExtended.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Diffusion Applications
4  Module: $HeadURL$
5  Language: C++
6  Date: $Date$
7  Version: $Revision$
8 
9  Copyright (c) Brigham and Women's Hospital (BWH) All Rights Reserved.
10 
11  See License.txt or http://www.slicer.org/copyright/copyright.txt for details.
12 
13 ==========================================================================*/
14 #ifndef itkMatrixExtended_h
15 #define itkMatrixExtended_h
16 
17 #include "itkMatrix.h"
18 
19 namespace itk
20 {
25 template <class T, unsigned int NRows = 3, unsigned int NColumns = 3>
26 class MatrixExtended : public Matrix<T, NRows, NColumns>
27 {
28 public:
30  typedef Matrix<T, NRows, NColumns> Superclass;
31  typedef T ValueType;
32  typedef T ComponentType;
33  typedef vnl_matrix_fixed<T, NRows, NColumns> InternalMatrixType;
35  MatrixExtended( const InternalMatrixType & matrix );
36  MatrixExtended( const Self & matrix );
37  MatrixExtended( const Superclass & matrix );
38  // /Cast the matrix
39  template <class C, unsigned int NRowsC, unsigned int NColumnsC>
40  operator MatrixExtended<C, NRowsC, NColumnsC> const ();
41  Self operator=( const Self & matrix );
42 
43  Self operator=( const Superclass & matrix );
44 
45  Self operator=( const InternalMatrixType & matrix );
46 
47 };
48 
49 } // end namespace itk
50 
51 #ifndef ITK_MANUAL_INSTANTIATION
52 #include "itkMatrixExtended.txx"
53 #endif
54 
55 #endif
Simplified inverse ITK transforms.
Self operator=(const Self &matrix)
vnl_matrix_fixed< T, NRows, NColumns > InternalMatrixType
Matrix< T, NRows, NColumns > Superclass