Proxy.hpp
Go to the documentation of this file.
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 
16 
17 
18 
19 template<typename T1>
20 class Proxy
21  {
22  public:
23  inline Proxy(const T1& A)
24  {
26  }
27  };
28 
29 
30 
31 // ea_type is the "element accessor" type,
32 // which can provide access to elements via operator[]
33 
34 template<typename eT>
35 class Proxy< Mat<eT> >
36  {
37  public:
38 
39  typedef eT elem_type;
42  typedef const eT* ea_type;
43 
44  static const bool prefer_at_accessor = false;
45  static const bool has_subview = false;
46 
48 
49  inline explicit Proxy(const Mat<eT>& A)
50  : Q(A)
51  {
53  }
54 
55  arma_inline uword get_n_rows() const { return Q.n_rows; }
56  arma_inline uword get_n_cols() const { return Q.n_cols; }
57  arma_inline uword get_n_elem() const { return Q.n_elem; }
58 
59  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
60  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
61 
62  arma_inline ea_type get_ea() const { return Q.memptr(); }
63  arma_inline bool is_alias(const Mat<eT>& X) const { return (&Q == &X); }
64  };
65 
66 
67 
68 template<typename eT>
69 class Proxy< Col<eT> >
70  {
71  public:
72 
73  typedef eT elem_type;
76  typedef const eT* ea_type;
77 
78  static const bool prefer_at_accessor = false;
79  static const bool has_subview = false;
80 
82 
83  inline explicit Proxy(const Col<eT>& A)
84  : Q(A)
85  {
87  }
88 
89  arma_inline uword get_n_rows() const { return Q.n_rows; }
90  arma_inline uword get_n_cols() const { return 1; }
91  arma_inline uword get_n_elem() const { return Q.n_elem; }
92 
93  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
94  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
95 
96  arma_inline ea_type get_ea() const { return Q.memptr(); }
97  arma_inline bool is_alias(const Mat<eT>& X) const { return (&Q == &X); }
98  };
99 
100 
101 
102 template<typename eT>
103 class Proxy< Row<eT> >
104  {
105  public:
106 
107  typedef eT elem_type;
110  typedef const eT* ea_type;
111 
112  static const bool prefer_at_accessor = false;
113  static const bool has_subview = false;
114 
116 
117  inline explicit Proxy(const Row<eT>& A)
118  : Q(A)
119  {
121  }
122 
123  arma_inline uword get_n_rows() const { return 1; }
124  arma_inline uword get_n_cols() const { return Q.n_cols; }
125  arma_inline uword get_n_elem() const { return Q.n_elem; }
126 
127  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
128  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
129 
130  arma_inline ea_type get_ea() const { return Q.memptr(); }
131  arma_inline bool is_alias(const Mat<eT>& X) const { return (&Q == &X); }
132  };
133 
134 
135 
136 template<typename eT, typename gen_type>
137 class Proxy< Gen<eT, gen_type > >
138  {
139  public:
140 
141  typedef eT elem_type;
144  typedef const Gen<eT, gen_type>& ea_type;
145 
146  static const bool prefer_at_accessor = Gen<eT, gen_type>::prefer_at_accessor;
147  static const bool has_subview = false;
148 
150 
151  inline explicit Proxy(const Gen<eT, gen_type>& A)
152  : Q(A)
153  {
155  }
156 
157  arma_inline uword get_n_rows() const { return Q.n_rows; }
158  arma_inline uword get_n_cols() const { return Q.n_cols; }
159  arma_inline uword get_n_elem() const { return Q.n_rows*Q.n_cols; }
160 
161  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
162  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
163 
164  arma_inline ea_type get_ea() const { return Q; }
165  arma_inline bool is_alias(const Mat<elem_type>&) const { return false; }
166  };
167 
168 
169 
170 template<typename T1, typename op_type>
171 class Proxy< Op<T1, op_type> >
172  {
173  public:
174 
175  typedef typename T1::elem_type elem_type;
178  typedef const elem_type* ea_type;
179 
180  static const bool prefer_at_accessor = false;
181  static const bool has_subview = false;
182 
184 
185  inline explicit Proxy(const Op<T1, op_type>& A)
186  : Q(A)
187  {
189  }
190 
191  arma_inline uword get_n_rows() const { return Q.n_rows; }
192  arma_inline uword get_n_cols() const { return Q.n_cols; }
193  arma_inline uword get_n_elem() const { return Q.n_elem; }
194 
195  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
196  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
197 
198  arma_inline ea_type get_ea() const { return Q.memptr(); }
199  arma_inline bool is_alias(const Mat<elem_type>&) const { return false; }
200  };
201 
202 
203 
204 template<typename T1, typename T2, typename glue_type>
205 class Proxy< Glue<T1, T2, glue_type> >
206  {
207  public:
208 
209  typedef typename T1::elem_type elem_type;
212  typedef const elem_type* ea_type;
213 
214  static const bool prefer_at_accessor = false;
215  static const bool has_subview = false;
216 
218 
219  inline explicit Proxy(const Glue<T1, T2, glue_type>& A)
220  : Q(A)
221  {
223  }
224 
225  arma_inline uword get_n_rows() const { return Q.n_rows; }
226  arma_inline uword get_n_cols() const { return Q.n_cols; }
227  arma_inline uword get_n_elem() const { return Q.n_elem; }
228 
229  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
230  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
231 
232  arma_inline ea_type get_ea() const { return Q.memptr(); }
233  arma_inline bool is_alias(const Mat<elem_type>&) const { return false; }
234  };
235 
236 
237 
238 template<typename eT>
239 class Proxy< subview<eT> >
240  {
241  public:
242 
243  typedef eT elem_type;
246  typedef const subview<eT>& ea_type;
247 
248  static const bool prefer_at_accessor = true;
249  static const bool has_subview = true;
250 
252 
253  inline explicit Proxy(const subview<eT>& A)
254  : Q(A)
255  {
257  }
258 
259  arma_inline uword get_n_rows() const { return Q.n_rows; }
260  arma_inline uword get_n_cols() const { return Q.n_cols; }
261  arma_inline uword get_n_elem() const { return Q.n_elem; }
262 
263  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
264  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
265 
266  arma_inline ea_type get_ea() const { return Q; }
267  arma_inline bool is_alias(const Mat<eT>& X) const { return (&(Q.m) == &X); }
268  };
269 
270 
271 
272 template<typename eT, typename T1>
273 class Proxy< subview_elem1<eT,T1> >
274  {
275  public:
276 
277  typedef eT elem_type;
280  typedef const eT* ea_type;
281 
282  static const bool prefer_at_accessor = false;
283  static const bool has_subview = false;
284 
286 
287  inline explicit Proxy(const subview_elem1<eT,T1>& A)
288  : Q(A)
289  {
291  }
292 
293  arma_inline uword get_n_rows() const { return Q.n_rows; }
294  arma_inline uword get_n_cols() const { return 1; }
295  arma_inline uword get_n_elem() const { return Q.n_elem; }
296 
297  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
298  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
299 
300  arma_inline ea_type get_ea() const { return Q.memptr(); }
301  arma_inline bool is_alias(const Mat<eT>&) const { return false; }
302  };
303 
304 
305 
306 template<typename eT>
307 class Proxy< diagview<eT> >
308  {
309  public:
310 
311  typedef eT elem_type;
314  typedef const diagview<eT>& ea_type;
315 
316  static const bool prefer_at_accessor = false;
317  static const bool has_subview = true;
318 
320 
321  inline explicit Proxy(const diagview<eT>& A)
322  : Q(A)
323  {
325  }
326 
327  arma_inline uword get_n_rows() const { return Q.n_rows; }
328  arma_inline uword get_n_cols() const { return 1; }
329  arma_inline uword get_n_elem() const { return Q.n_elem; }
330 
331  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
332  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
333 
334  arma_inline ea_type get_ea() const { return Q; }
335  arma_inline bool is_alias(const Mat<eT>& X) const { return (&(Q.m) == &X); }
336  };
337 
338 
339 
340 
341 template<typename T1, typename eop_type>
342 class Proxy< eOp<T1, eop_type > >
343  {
344  public:
345 
346  typedef typename T1::elem_type elem_type;
349  typedef const eOp<T1, eop_type>& ea_type;
350 
351  static const bool prefer_at_accessor = eOp<T1, eop_type>::prefer_at_accessor;
352  static const bool has_subview = eOp<T1, eop_type>::has_subview;
353 
355 
356  inline explicit Proxy(const eOp<T1, eop_type>& A)
357  : Q(A)
358  {
360  }
361 
362  arma_inline uword get_n_rows() const { return Q.get_n_rows(); }
363  arma_inline uword get_n_cols() const { return Q.get_n_cols(); }
364  arma_inline uword get_n_elem() const { return Q.get_n_elem(); }
365 
366  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
367  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
368 
369  arma_inline ea_type get_ea() const { return Q; }
370  arma_inline bool is_alias(const Mat<elem_type>& X) const { return Q.P.is_alias(X); }
371  };
372 
373 
374 
375 template<typename T1, typename T2, typename eglue_type>
376 class Proxy< eGlue<T1, T2, eglue_type > >
377  {
378  public:
379 
380  typedef typename T1::elem_type elem_type;
384 
385  static const bool prefer_at_accessor = eGlue<T1, T2, eglue_type>::prefer_at_accessor;
386  static const bool has_subview = eGlue<T1, T2, eglue_type>::has_subview;
387 
389 
390  inline explicit Proxy(const eGlue<T1, T2, eglue_type>& A)
391  : Q(A)
392  {
394  }
395 
396  arma_inline uword get_n_rows() const { return Q.get_n_rows(); }
397  arma_inline uword get_n_cols() const { return Q.get_n_cols(); }
398  arma_inline uword get_n_elem() const { return Q.get_n_elem(); }
399 
400  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
401  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row, col); }
402 
403  arma_inline ea_type get_ea() const { return Q; }
404  arma_inline bool is_alias(const Mat<elem_type>& X) const { return (Q.P1.is_alias(X) || Q.P2.is_alias(X)); }
405  };
406 
407 
408 
409 template<typename out_eT, typename T1, typename op_type>
410 class Proxy< mtOp<out_eT, T1, op_type> >
411  {
412  public:
413 
414  typedef out_eT elem_type;
417  typedef const elem_type* ea_type;
418 
419  static const bool prefer_at_accessor = false;
420  static const bool has_subview = false;
421 
423 
424  inline explicit Proxy(const mtOp<out_eT, T1, op_type>& A)
425  : Q(A)
426  {
428  }
429 
430  arma_inline uword get_n_rows() const { return Q.n_rows; }
431  arma_inline uword get_n_cols() const { return Q.n_cols; }
432  arma_inline uword get_n_elem() const { return Q.n_elem; }
433 
434  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
435  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row,col); }
436 
437  arma_inline ea_type get_ea() const { return Q.memptr(); }
438  arma_inline bool is_alias(const Mat<out_eT>&) const { return false; }
439  };
440 
441 
442 
443 template<typename out_eT, typename T1, typename T2, typename glue_type>
444 class Proxy< mtGlue<out_eT, T1, T2, glue_type > >
445  {
446  public:
447 
448  typedef out_eT elem_type;
451  typedef const elem_type* ea_type;
452 
453  static const bool prefer_at_accessor = false;
454  static const bool has_subview = false;
455 
457 
458  inline explicit Proxy(const mtGlue<out_eT, T1, T2, glue_type>& A)
459  : Q(A)
460  {
462  }
463 
464  arma_inline uword get_n_rows() const { return Q.n_rows; }
465  arma_inline uword get_n_cols() const { return Q.n_cols; }
466  arma_inline uword get_n_elem() const { return Q.n_elem; }
467 
468  arma_inline elem_type operator[] (const uword i) const { return Q[i]; }
469  arma_inline elem_type at (const uword row, const uword col) const { return Q.at(row,col); }
470 
471  arma_inline ea_type get_ea() const { return Q.memptr(); }
472  arma_inline bool is_alias(const Mat<out_eT>&) const { return false; }
473  };
474 
475 
476 
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:96
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:74
T1::elem_type elem_type
Definition: Proxy.hpp:346
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:403
subview< eT > stored_type
Definition: Proxy.hpp:245
arma_inline bool is_alias(const Mat< elem_type > &) const
Definition: Proxy.hpp:165
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:435
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:191
arma_aligned const Mat< out_eT > Q
Definition: Proxy.hpp:456
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:367
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:244
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:294
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:230
Proxy(const Gen< eT, gen_type > &A)
Definition: Proxy.hpp:151
T1::elem_type elem_type
Definition: Proxy.hpp:175
arma_aligned const Row< eT > & Q
Definition: Proxy.hpp:115
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:398
Proxy(const Mat< eT > &A)
Definition: Proxy.hpp:49
Proxy(const mtGlue< out_eT, T1, T2, glue_type > &A)
Definition: Proxy.hpp:458
eGlue< T1, T2, eglue_type > stored_type
Definition: Proxy.hpp:382
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:57
arma_aligned const Mat< elem_type > Q
Definition: Proxy.hpp:217
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:332
Proxy(const subview_elem1< eT, T1 > &A)
Definition: Proxy.hpp:287
const diagview< eT > & ea_type
Definition: Proxy.hpp:314
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:471
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:437
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:298
arma_aligned const subview< eT > & Q
Definition: Proxy.hpp:251
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:193
const eT * ea_type
Definition: Proxy.hpp:110
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:401
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:128
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:142
support class for generator functions (eg. zeros, randu, randn, ...)
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:431
arma_inline bool is_alias(const Mat< elem_type > &X) const
Definition: Proxy.hpp:370
arma_aligned const Mat< eT > & Q
Definition: Proxy.hpp:47
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:259
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:469
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:364
diagview< eT > stored_type
Definition: Proxy.hpp:313
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:381
Mat< elem_type > stored_type
Definition: Proxy.hpp:211
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:293
const eT * ea_type
Definition: Proxy.hpp:76
arma_inline bool is_alias(const Mat< elem_type > &X) const
Definition: Proxy.hpp:404
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:125
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:158
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:465
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:232
arma_aligned const Col< eT > & Q
Definition: Proxy.hpp:81
arma_aligned const Mat< elem_type > Q
Definition: Proxy.hpp:183
arma_aligned const Gen< eT, gen_type > & Q
Definition: Proxy.hpp:149
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:464
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:159
Proxy(const T1 &A)
Definition: Proxy.hpp:23
get_pod_type< out_eT >::result pod_type
Definition: Proxy.hpp:449
Proxy(const eOp< T1, eop_type > &A)
Definition: Proxy.hpp:356
Mat< eT > stored_type
Definition: Proxy.hpp:41
u32 uword
Definition: typedef.hpp:85
#define arma_type_check(condition)
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:363
Class for column vectors (matrices with only one column)
Definition: Col_bones.hpp:20
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:225
Proxy(const subview< eT > &A)
Definition: Proxy.hpp:253
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:369
Proxy(const Col< eT > &A)
Definition: Proxy.hpp:83
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:278
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:260
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:266
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:264
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:124
arma_inline bool is_alias(const Mat< eT > &X) const
Definition: Proxy.hpp:97
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:227
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:40
arma_aligned const eGlue< T1, T2, eglue_type > & Q
Definition: Proxy.hpp:388
arma_inline bool is_alias(const Mat< out_eT > &) const
Definition: Proxy.hpp:472
Proxy(const Op< T1, op_type > &A)
Definition: Proxy.hpp:185
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:55
Proxy(const Row< eT > &A)
Definition: Proxy.hpp:117
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:108
eOp< T1, eop_type > stored_type
Definition: Proxy.hpp:348
const Gen< eT, gen_type > & ea_type
Definition: Proxy.hpp:144
Proxy(const diagview< eT > &A)
Definition: Proxy.hpp:321
const subview< eT > & ea_type
Definition: Proxy.hpp:246
arma_aligned const diagview< eT > & Q
Definition: Proxy.hpp:319
const elem_type * ea_type
Definition: Proxy.hpp:178
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:210
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:466
arma_inline bool is_alias(const Mat< elem_type > &) const
Definition: Proxy.hpp:233
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:300
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:162
arma_inline bool is_alias(const Mat< eT > &X) const
Definition: Proxy.hpp:63
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:94
Class for row vectors (matrices with only one row)
#define arma_aligned
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:176
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:56
const eT * ea_type
Definition: Proxy.hpp:42
arma_inline bool is_alias(const Mat< elem_type > &) const
Definition: Proxy.hpp:199
#define arma_extra_debug_sigprint
Definition: debug.hpp:1116
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:432
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:396
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:192
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:62
Gen< eT, gen_type > stored_type
Definition: Proxy.hpp:143
arma_inline bool is_alias(const Mat< eT > &X) const
Definition: Proxy.hpp:267
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:60
Row< eT > stored_type
Definition: Proxy.hpp:109
const eGlue< T1, T2, eglue_type > & ea_type
Definition: Proxy.hpp:383
Proxy(const Glue< T1, T2, glue_type > &A)
Definition: Proxy.hpp:219
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:328
Col< eT > stored_type
Definition: Proxy.hpp:75
arma_inline bool is_alias(const Mat< out_eT > &) const
Definition: Proxy.hpp:438
Mat< elem_type > stored_type
Definition: Proxy.hpp:177
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:89
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:164
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:226
Dense matrix class.
#define arma_inline
arma_inline elem_type at(const uword row, const uword col) const
Definition: Proxy.hpp:196
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:91
arma_aligned const Mat< eT > Q
Definition: Proxy.hpp:285
arma_inline bool is_alias(const Mat< eT > &X) const
Definition: Proxy.hpp:131
Proxy(const mtOp< out_eT, T1, op_type > &A)
Definition: Proxy.hpp:424
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:295
get_pod_type< out_eT >::result pod_type
Definition: Proxy.hpp:415
Proxy(const eGlue< T1, T2, eglue_type > &A)
Definition: Proxy.hpp:390
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:397
Class for storing data required to extract and set the diagonals of a matrix.
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:362
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:198
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:430
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:334
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:261
const eOp< T1, eop_type > & ea_type
Definition: Proxy.hpp:349
arma_inline bool is_alias(const Mat< eT > &X) const
Definition: Proxy.hpp:335
arma_inline ea_type get_ea() const
Definition: Proxy.hpp:130
arma_aligned const Mat< out_eT > Q
Definition: Proxy.hpp:422
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:347
arma_inline uword get_n_cols() const
Definition: Proxy.hpp:90
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:123
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:327
arma_inline bool is_alias(const Mat< eT > &) const
Definition: Proxy.hpp:301
get_pod_type< elem_type >::result pod_type
Definition: Proxy.hpp:312
arma_inline uword get_n_elem() const
Definition: Proxy.hpp:329
arma_aligned const eOp< T1, eop_type > & Q
Definition: Proxy.hpp:354
arma_inline uword get_n_rows() const
Definition: Proxy.hpp:157


armadillo_matrix
Author(s):
autogenerated on Fri Apr 16 2021 02:31:58