annotate armadillo-3.900.4/include/armadillo_bits/forward_bones.hpp @ 84:55a047986812 tip

Update library URI so as not to be document-local
author Chris Cannam
date Wed, 22 Apr 2020 14:21:57 +0100
parents 1ec0e2823891
children
rev   line source
Chris@49 1 // Copyright (C) 2008-2012 NICTA (www.nicta.com.au)
Chris@49 2 // Copyright (C) 2008-2013 Conrad Sanderson
Chris@49 3 //
Chris@49 4 // This Source Code Form is subject to the terms of the Mozilla Public
Chris@49 5 // License, v. 2.0. If a copy of the MPL was not distributed with this
Chris@49 6 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
Chris@49 7
Chris@49 8
Chris@49 9 using std::cout;
Chris@49 10 using std::cerr;
Chris@49 11 using std::endl;
Chris@49 12 using std::ios;
Chris@49 13
Chris@49 14 template<typename elem_type, typename derived> struct Base;
Chris@49 15 template<typename elem_type, typename derived> struct BaseCube;
Chris@49 16
Chris@49 17 template<typename eT> class Mat;
Chris@49 18 template<typename eT> class Col;
Chris@49 19 template<typename eT> class Row;
Chris@49 20 template<typename eT> class Cube;
Chris@49 21 template<typename eT> class xvec_htrans;
Chris@49 22 template<typename oT> class field;
Chris@49 23
Chris@49 24 template<typename eT> class subview;
Chris@49 25 template<typename eT> class subview_col;
Chris@49 26 template<typename eT> class subview_row;
Chris@49 27 template<typename eT> class subview_row_strans;
Chris@49 28 template<typename eT> class subview_row_htrans;
Chris@49 29 template<typename eT> class subview_cube;
Chris@49 30 template<typename oT> class subview_field;
Chris@49 31
Chris@49 32 template<typename eT> class SpValProxy;
Chris@49 33 template<typename eT> class SpMat;
Chris@49 34 template<typename eT> class SpCol;
Chris@49 35 template<typename eT> class SpRow;
Chris@49 36 template<typename eT> class SpSubview;
Chris@49 37
Chris@49 38 template<typename eT> class diagview;
Chris@49 39
Chris@49 40 template<typename eT, typename T1> class subview_elem1;
Chris@49 41 template<typename eT, typename T1, typename T2> class subview_elem2;
Chris@49 42
Chris@49 43 template<typename parent, unsigned int mode> class subview_each1;
Chris@49 44 template<typename parent, unsigned int mode, typename TB> class subview_each2;
Chris@49 45
Chris@49 46
Chris@49 47 class arma_empty_class {};
Chris@49 48
Chris@49 49 class diskio;
Chris@49 50
Chris@49 51 class op_min;
Chris@49 52 class op_max;
Chris@49 53
Chris@49 54 class op_strans;
Chris@49 55 class op_htrans;
Chris@49 56 class op_htrans2;
Chris@49 57 class op_inv;
Chris@49 58 class op_sum;
Chris@49 59 class op_abs;
Chris@49 60 class op_diagmat;
Chris@49 61 class op_trimat;
Chris@49 62 class op_diagvec;
Chris@49 63
Chris@49 64 class eop_conj;
Chris@49 65
Chris@49 66 class glue_times;
Chris@49 67 class glue_times_diag;
Chris@49 68
Chris@49 69 class glue_rel_lt;
Chris@49 70 class glue_rel_gt;
Chris@49 71 class glue_rel_lteq;
Chris@49 72 class glue_rel_gteq;
Chris@49 73 class glue_rel_eq;
Chris@49 74 class glue_rel_noteq;
Chris@49 75
Chris@49 76 class op_rel_lt_pre;
Chris@49 77 class op_rel_lt_post;
Chris@49 78 class op_rel_gt_pre;
Chris@49 79 class op_rel_gt_post;
Chris@49 80 class op_rel_lteq_pre;
Chris@49 81 class op_rel_lteq_post;
Chris@49 82 class op_rel_gteq_pre;
Chris@49 83 class op_rel_gteq_post;
Chris@49 84 class op_rel_eq;
Chris@49 85 class op_rel_noteq;
Chris@49 86
Chris@49 87 class gen_ones_diag;
Chris@49 88 class gen_ones_full;
Chris@49 89 class gen_zeros;
Chris@49 90 class gen_randu;
Chris@49 91 class gen_randn;
Chris@49 92
Chris@49 93 class glue_mixed_plus;
Chris@49 94 class glue_mixed_minus;
Chris@49 95 class glue_mixed_div;
Chris@49 96 class glue_mixed_schur;
Chris@49 97 class glue_mixed_times;
Chris@49 98
Chris@49 99 class op_cx_scalar_times;
Chris@49 100 class op_cx_scalar_plus;
Chris@49 101 class op_cx_scalar_minus_pre;
Chris@49 102 class op_cx_scalar_minus_post;
Chris@49 103 class op_cx_scalar_div_pre;
Chris@49 104 class op_cx_scalar_div_post;
Chris@49 105
Chris@49 106
Chris@49 107
Chris@49 108 class op_subview_elem_equ;
Chris@49 109 class op_subview_elem_inplace_plus;
Chris@49 110 class op_subview_elem_inplace_minus;
Chris@49 111 class op_subview_elem_inplace_schur;
Chris@49 112 class op_subview_elem_inplace_div;
Chris@49 113
Chris@49 114
Chris@49 115
Chris@49 116 template<const bool, const bool, const bool, const bool> class gemm;
Chris@49 117 template<const bool, const bool, const bool> class gemv;
Chris@49 118
Chris@49 119
Chris@49 120 template< typename eT, typename gen_type> class Gen;
Chris@49 121
Chris@49 122 template< typename T1, typename op_type> class Op;
Chris@49 123 template< typename T1, typename eop_type> class eOp;
Chris@49 124 template<typename out_eT, typename T1, typename op_type> class mtOp;
Chris@49 125
Chris@49 126 template< typename T1, typename T2, typename glue_type> class Glue;
Chris@49 127 template< typename T1, typename T2, typename eglue_type> class eGlue;
Chris@49 128 template<typename out_eT, typename T1, typename T2, typename glue_type> class mtGlue;
Chris@49 129
Chris@49 130
Chris@49 131
Chris@49 132 template< typename eT, typename gen_type> class GenCube;
Chris@49 133
Chris@49 134 template< typename T1, typename op_type> class OpCube;
Chris@49 135 template< typename T1, typename eop_type> class eOpCube;
Chris@49 136 template<typename out_eT, typename T1, typename op_type> class mtOpCube;
Chris@49 137
Chris@49 138 template< typename T1, typename T2, typename glue_type> class GlueCube;
Chris@49 139 template< typename T1, typename T2, typename eglue_type> class eGlueCube;
Chris@49 140 template<typename out_eT, typename T1, typename T2, typename glue_type> class mtGlueCube;
Chris@49 141
Chris@49 142
Chris@49 143 template<typename T1> class Proxy;
Chris@49 144 template<typename T1> class ProxyCube;
Chris@49 145
Chris@49 146
Chris@49 147
Chris@49 148 class spop_strans;
Chris@49 149 class spop_htrans;
Chris@49 150 class spop_scalar_times;
Chris@49 151
Chris@49 152 class spglue_plus;
Chris@49 153 class spglue_plus2;
Chris@49 154
Chris@49 155 class spglue_minus;
Chris@49 156 class spglue_minus2;
Chris@49 157
Chris@49 158 class spglue_times;
Chris@49 159 class spglue_times2;
Chris@49 160
Chris@49 161
Chris@49 162 template< typename T1, typename spop_type> class SpOp;
Chris@49 163 template<typename out_eT, typename T1, typename spop_type> class mtSpOp;
Chris@49 164
Chris@49 165 template<typename T1, typename T2, typename spglue_type> class SpGlue;
Chris@49 166
Chris@49 167
Chris@49 168 template<typename T1> class SpProxy;
Chris@49 169
Chris@49 170
Chris@49 171
Chris@49 172 struct arma_vec_indicator {};
Chris@49 173 struct arma_fixed_indicator {};
Chris@49 174
Chris@49 175
Chris@49 176 //! \addtogroup injector
Chris@49 177 //! @{
Chris@49 178
Chris@49 179 template<typename Dummy = int> struct injector_end_of_row {};
Chris@49 180
Chris@49 181 static const injector_end_of_row<> endr = injector_end_of_row<>();
Chris@49 182 //!< endr indicates "end of row" when using the << operator;
Chris@49 183 //!< similar conceptual meaning to std::endl
Chris@49 184
Chris@49 185 //! @}
Chris@49 186
Chris@49 187
Chris@49 188
Chris@49 189 //! \addtogroup diskio
Chris@49 190 //! @{
Chris@49 191
Chris@49 192
Chris@49 193 enum file_type
Chris@49 194 {
Chris@49 195 file_type_unknown,
Chris@49 196 auto_detect, //!< Automatically detect the file type
Chris@49 197 raw_ascii, //!< ASCII format (text), without any other information.
Chris@49 198 arma_ascii, //!< Armadillo ASCII format (text), with information about matrix type and size
Chris@49 199 csv_ascii, //!< comma separated values (CSV), without any other information
Chris@49 200 raw_binary, //!< raw binary format, without any other information.
Chris@49 201 arma_binary, //!< Armadillo binary format, with information about matrix type and size
Chris@49 202 pgm_binary, //!< Portable Grey Map (greyscale image)
Chris@49 203 ppm_binary, //!< Portable Pixel Map (colour image), used by the field and cube classes
Chris@49 204 hdf5_binary, //!< Open binary format, not specific to Armadillo, which can store arbitrary data
Chris@49 205 coord_ascii //!< simple co-ordinate format for sparse matrices
Chris@49 206 };
Chris@49 207
Chris@49 208
Chris@49 209 //! @}
Chris@49 210
Chris@49 211