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 //! @}