Mercurial > hg > segmenter-vamp-plugin
comparison armadillo-3.900.4/include/armadillo_bits/unwrap_spmat.hpp @ 49:1ec0e2823891
Switch to using subrepo copies of qm-dsp, nnls-chroma, vamp-plugin-sdk; update Armadillo version; assume build without external BLAS/LAPACK
author | Chris Cannam |
---|---|
date | Thu, 13 Jun 2013 10:25:24 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
48:69251e11a913 | 49:1ec0e2823891 |
---|---|
1 // Copyright (C) 2012 NICTA (www.nicta.com.au) | |
2 // Copyright (C) 2012 Conrad Sanderson | |
3 // | |
4 // This Source Code Form is subject to the terms of the Mozilla Public | |
5 // License, v. 2.0. If a copy of the MPL was not distributed with this | |
6 // file, You can obtain one at http://mozilla.org/MPL/2.0/. | |
7 | |
8 | |
9 //! \addtogroup unwrap_spmat | |
10 //! @{ | |
11 | |
12 | |
13 | |
14 template<typename T1> | |
15 struct unwrap_spmat | |
16 { | |
17 typedef typename T1::elem_type eT; | |
18 | |
19 inline | |
20 unwrap_spmat(const T1& A) | |
21 : M(A) | |
22 { | |
23 arma_extra_debug_sigprint(); | |
24 } | |
25 | |
26 const SpMat<eT> M; | |
27 }; | |
28 | |
29 | |
30 | |
31 template<typename eT> | |
32 struct unwrap_spmat< SpMat<eT> > | |
33 { | |
34 inline | |
35 unwrap_spmat(const SpMat<eT>& A) | |
36 : M(A) | |
37 { | |
38 arma_extra_debug_sigprint(); | |
39 } | |
40 | |
41 const SpMat<eT>& M; | |
42 }; | |
43 | |
44 | |
45 | |
46 template<typename eT> | |
47 struct unwrap_spmat< SpRow<eT> > | |
48 { | |
49 inline | |
50 unwrap_spmat(const SpRow<eT>& A) | |
51 : M(A) | |
52 { | |
53 arma_extra_debug_sigprint(); | |
54 } | |
55 | |
56 const SpRow<eT>& M; | |
57 }; | |
58 | |
59 | |
60 | |
61 template<typename eT> | |
62 struct unwrap_spmat< SpCol<eT> > | |
63 { | |
64 inline | |
65 unwrap_spmat(const SpCol<eT>& A) | |
66 : M(A) | |
67 { | |
68 arma_extra_debug_sigprint(); | |
69 } | |
70 | |
71 const SpCol<eT>& M; | |
72 }; | |
73 | |
74 | |
75 | |
76 template<typename T1, typename spop_type> | |
77 struct unwrap_spmat< SpOp<T1, spop_type> > | |
78 { | |
79 typedef typename T1::elem_type eT; | |
80 | |
81 inline | |
82 unwrap_spmat(const SpOp<T1, spop_type>& A) | |
83 : M(A) | |
84 { | |
85 arma_extra_debug_sigprint(); | |
86 } | |
87 | |
88 const SpMat<eT> M; | |
89 }; | |
90 | |
91 | |
92 | |
93 template<typename T1, typename T2, typename spglue_type> | |
94 struct unwrap_spmat< SpGlue<T1, T2, spglue_type> > | |
95 { | |
96 typedef typename T1::elem_type eT; | |
97 | |
98 inline | |
99 unwrap_spmat(const SpGlue<T1, T2, spglue_type>& A) | |
100 : M(A) | |
101 { | |
102 arma_extra_debug_sigprint(); | |
103 } | |
104 | |
105 const SpMat<eT> M; | |
106 }; | |
107 | |
108 | |
109 | |
110 template<typename out_eT, typename T1, typename spop_type> | |
111 struct unwrap_spmat< mtSpOp<out_eT, T1, spop_type> > | |
112 { | |
113 inline | |
114 unwrap_spmat(const mtSpOp<out_eT, T1, spop_type>& A) | |
115 : M(A) | |
116 { | |
117 arma_extra_debug_sigprint(); | |
118 } | |
119 | |
120 const SpMat<out_eT> M; | |
121 }; | |
122 | |
123 | |
124 | |
125 //! @} |