Mercurial > hg > segmenter-vamp-plugin
comparison armadillo-2.4.4/include/armadillo_bits/eOpCube_meat.hpp @ 0:8b6102e2a9b0
Armadillo Library
author | maxzanoni76 <max.zanoni@eecs.qmul.ac.uk> |
---|---|
date | Wed, 11 Apr 2012 09:27:06 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:8b6102e2a9b0 |
---|---|
1 // Copyright (C) 2010-2011 NICTA (www.nicta.com.au) | |
2 // Copyright (C) 2010-2011 Conrad Sanderson | |
3 // | |
4 // This file is part of the Armadillo C++ library. | |
5 // It is provided without any warranty of fitness | |
6 // for any purpose. You can redistribute this file | |
7 // and/or modify it under the terms of the GNU | |
8 // Lesser General Public License (LGPL) as published | |
9 // by the Free Software Foundation, either version 3 | |
10 // of the License or (at your option) any later version. | |
11 // (see http://www.opensource.org/licenses for more info) | |
12 | |
13 | |
14 //! \addtogroup eOpCube | |
15 //! @{ | |
16 | |
17 | |
18 | |
19 template<typename T1, typename eop_type> | |
20 eOpCube<T1, eop_type>::eOpCube(const BaseCube<typename T1::elem_type, T1>& in_m) | |
21 : P (in_m.get_ref()) | |
22 { | |
23 arma_extra_debug_sigprint(); | |
24 } | |
25 | |
26 | |
27 | |
28 template<typename T1, typename eop_type> | |
29 eOpCube<T1, eop_type>::eOpCube(const BaseCube<typename T1::elem_type, T1>& in_m, const typename T1::elem_type in_aux) | |
30 : P (in_m.get_ref()) | |
31 , aux (in_aux) | |
32 { | |
33 arma_extra_debug_sigprint(); | |
34 } | |
35 | |
36 | |
37 | |
38 template<typename T1, typename eop_type> | |
39 eOpCube<T1, eop_type>::eOpCube(const BaseCube<typename T1::elem_type, T1>& in_m, const uword in_aux_uword_a, const uword in_aux_uword_b) | |
40 : P (in_m.get_ref()) | |
41 , aux_uword_a (in_aux_uword_a) | |
42 , aux_uword_b (in_aux_uword_b) | |
43 { | |
44 arma_extra_debug_sigprint(); | |
45 } | |
46 | |
47 | |
48 | |
49 template<typename T1, typename eop_type> | |
50 eOpCube<T1, eop_type>::eOpCube(const BaseCube<typename T1::elem_type, T1>& in_m, const uword in_aux_uword_a, const uword in_aux_uword_b, const uword in_aux_uword_c) | |
51 : P (in_m.get_ref()) | |
52 , aux_uword_a (in_aux_uword_a) | |
53 , aux_uword_b (in_aux_uword_b) | |
54 , aux_uword_c (in_aux_uword_c) | |
55 { | |
56 arma_extra_debug_sigprint(); | |
57 } | |
58 | |
59 | |
60 | |
61 template<typename T1, typename eop_type> | |
62 eOpCube<T1, eop_type>::eOpCube(const BaseCube<typename T1::elem_type, T1>& in_m, const typename T1::elem_type in_aux, const uword in_aux_uword_a, const uword in_aux_uword_b, const uword in_aux_uword_c) | |
63 : P (in_m.get_ref()) | |
64 , aux (in_aux) | |
65 , aux_uword_a (in_aux_uword_a) | |
66 , aux_uword_b (in_aux_uword_b) | |
67 , aux_uword_c (in_aux_uword_c) | |
68 { | |
69 arma_extra_debug_sigprint(); | |
70 } | |
71 | |
72 | |
73 | |
74 template<typename T1, typename eop_type> | |
75 eOpCube<T1, eop_type>::~eOpCube() | |
76 { | |
77 arma_extra_debug_sigprint(); | |
78 } | |
79 | |
80 | |
81 | |
82 template<typename T1, typename eop_type> | |
83 arma_inline | |
84 uword | |
85 eOpCube<T1, eop_type>::get_n_rows() const | |
86 { | |
87 return P.get_n_rows(); | |
88 } | |
89 | |
90 | |
91 | |
92 template<typename T1, typename eop_type> | |
93 arma_inline | |
94 uword | |
95 eOpCube<T1, eop_type>::get_n_cols() const | |
96 { | |
97 return P.get_n_cols(); | |
98 } | |
99 | |
100 | |
101 | |
102 template<typename T1, typename eop_type> | |
103 arma_inline | |
104 uword | |
105 eOpCube<T1, eop_type>::get_n_elem_slice() const | |
106 { | |
107 return P.get_n_elem_slice(); | |
108 } | |
109 | |
110 | |
111 | |
112 template<typename T1, typename eop_type> | |
113 arma_inline | |
114 uword | |
115 eOpCube<T1, eop_type>::get_n_slices() const | |
116 { | |
117 return P.get_n_slices(); | |
118 } | |
119 | |
120 | |
121 | |
122 template<typename T1, typename eop_type> | |
123 arma_inline | |
124 uword | |
125 eOpCube<T1, eop_type>::get_n_elem() const | |
126 { | |
127 return P.get_n_elem(); | |
128 } | |
129 | |
130 | |
131 | |
132 template<typename T1, typename eop_type> | |
133 arma_inline | |
134 typename T1::elem_type | |
135 eOpCube<T1, eop_type>::operator[] (const uword i) const | |
136 { | |
137 return eop_core<eop_type>::process(P[i], aux); | |
138 } | |
139 | |
140 | |
141 | |
142 template<typename T1, typename eop_type> | |
143 arma_inline | |
144 typename T1::elem_type | |
145 eOpCube<T1, eop_type>::at(const uword row, const uword col, const uword slice) const | |
146 { | |
147 typedef typename T1::elem_type eT; | |
148 | |
149 return eop_core<eop_type>::process(P.at(row, col, slice), aux); | |
150 } | |
151 | |
152 | |
153 | |
154 //! @} |