GNU Octave  4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
mx-defs.h
Go to the documentation of this file.
1 /*
2 
3 Copyright (C) 1994-2015 John W. Eaton
4 
5 This file is part of Octave.
6 
7 Octave is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by the
9 Free Software Foundation; either version 3 of the License, or (at your
10 option) any later version.
11 
12 Octave is distributed in the hope that it will be useful, but WITHOUT
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with Octave; see the file COPYING. If not, see
19 <http://www.gnu.org/licenses/>.
20 
21 */
22 
23 #if !defined (octave_mx_defs_h)
24 #define octave_mx_defs_h 1
25 
26 // Classes we declare.
27 
28 class Matrix;
29 class ComplexMatrix;
30 class FloatMatrix;
31 class FloatComplexMatrix;
32 class boolMatrix;
33 class charMatrix;
34 
35 class NDArray;
36 class ComplexNDArray;
37 class FloatNDArray;
39 class boolNDArray;
40 class charNDArray;
41 
42 class ColumnVector;
44 class FloatColumnVector;
46 
47 class RowVector;
48 class ComplexRowVector;
49 class FloatRowVector;
51 
52 class DiagMatrix;
53 class ComplexDiagMatrix;
54 class FloatDiagMatrix;
56 
57 class PermMatrix;
58 
59 class AEPBALANCE;
60 class ComplexAEPBALANCE;
61 class FloatAEPBALANCE;
63 
64 class GEPBALANCE;
65 class ComplexGEPBALANCE;
66 class FloatGEPBALANCE;
68 
69 class CHOL;
70 class ComplexCHOL;
71 class FloatCHOL;
72 class FloatComplexCHOL;
73 
74 class EIG;
75 
76 class HESS;
77 class ComplexHESS;
78 class FloatHESS;
79 class FloatComplexHESS;
80 
81 class SCHUR;
82 class ComplexSCHUR;
83 class FloatSCHUR;
84 class FloatComplexSCHUR;
85 
86 class SVD;
87 class ComplexSVD;
88 class FloatSVD;
89 class FloatComplexSVD;
90 
91 class LU;
92 class ComplexLU;
93 class FloatLU;
94 class FloatComplexLU;
95 
96 class QR;
97 class ComplexQR;
98 class FloatQR;
99 class FloatComplexQR;
100 
101 class QRP;
102 class ComplexQRP;
103 class FloatQRP;
104 class FloatComplexQRP;
105 
106 // Other data types we use but that don't always need to have full
107 // declarations.
108 
109 #include "oct-cmplx.h"
110 
111 #ifndef MAPPER_FCN_TYPEDEFS
112 #define MAPPER_FCN_TYPEDEFS 1
113 
114 typedef bool (*b_d_Mapper)(double);
115 typedef bool (*b_c_Mapper)(const Complex&);
116 
118 typedef double (*d_c_Mapper)(const Complex&);
119 typedef Complex (*c_c_Mapper)(const Complex&);
120 
121 typedef bool (*b_f_Mapper)(float);
122 typedef bool (*b_fc_Mapper)(const FloatComplex&);
123 
124 typedef float (*f_f_Mapper)(float);
125 typedef float (*f_fc_Mapper)(const FloatComplex&);
127 
129 {
131  blas_trans = 'T',
133 };
134 
135 inline char
137 {
138  return static_cast<char> (transt);
139 }
140 
141 
142 #endif
143 
144 #endif
Complex(* c_c_Mapper)(const Complex &)
Definition: mx-defs.h:119
int bool
Definition: mex.h:56
Definition: EIG.h:32
FloatComplex(* fc_fc_Mapper)(const FloatComplex &)
Definition: mx-defs.h:126
Definition: dbleLU.h:29
double(* d_c_Mapper)(const Complex &)
Definition: mx-defs.h:118
Definition: dMatrix.h:35
bool(* b_f_Mapper)(float)
Definition: mx-defs.h:121
Definition: dbleQRP.h:32
float(* f_f_Mapper)(float)
Definition: mx-defs.h:124
float(* f_fc_Mapper)(const FloatComplex &)
Definition: mx-defs.h:125
bool(* b_fc_Mapper)(const FloatComplex &)
Definition: mx-defs.h:122
Definition: dbleSVD.h:31
Definition: dbleQR.h:34
Definition: dbleCHOL.h:32
bool(* b_c_Mapper)(const Complex &)
Definition: mx-defs.h:115
Definition: dbleHESS.h:30
char get_blas_char(blas_trans_type transt)
Definition: mx-defs.h:136
std::complex< float > FloatComplex
Definition: oct-cmplx.h:30
blas_trans_type
Definition: mx-defs.h:128
std::complex< double > Complex
Definition: oct-cmplx.h:29
bool(* b_d_Mapper)(double)
Definition: mx-defs.h:114
double(* d_d_Mapper)(double)
Definition: mx-defs.h:117