Grok 10.0.0
GrkMatrix.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2016-2022 Grok Image Compression Inc.
3 *
4 * This source code is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU Affero General Public License, version 3,
6 * as published by the Free Software Foundation.
7 *
8 * This source code is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Affero General Public License for more details.
12 *
13 * You should have received a copy of the GNU Affero General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15
16 *
17 * This source code incorporates work covered by the BSD 2-clause license.
18 * Please see the LICENSE file in the root directory for details.
19 *
20 */
21
22namespace grk
23{
25{
26 public:
27 bool matrix_inversion_f(float* pSrcMatrix, float* pDestMatrix, uint32_t nb_compo);
28
29 private:
30 void lupInvert(float* pSrcMatrix, float* pDestMatrix, uint32_t nb_compo,
31 uint32_t* pPermutations, float* p_src_temp, float* p_dest_temp,
32 float* p_swap_area);
33
34 bool lupDecompose(float* matrix, uint32_t* permutations, float* p_swap_area, uint32_t nb_compo);
35
36 void lupSolve(float* pResult, float* pMatrix, float* pVector, uint32_t* pPermutations,
37 uint32_t nb_compo, float* p_intermediate_data);
38};
39
40} // namespace grk
Definition: GrkMatrix.h:25
bool matrix_inversion_f(float *pSrcMatrix, float *pDestMatrix, uint32_t nb_compo)
Matrix inversion.
Definition: GrkMatrix.cpp:29
void lupInvert(float *pSrcMatrix, float *pDestMatrix, uint32_t nb_compo, uint32_t *pPermutations, float *p_src_temp, float *p_dest_temp, float *p_swap_area)
Definition: GrkMatrix.cpp:213
bool lupDecompose(float *matrix, uint32_t *permutations, float *p_swap_area, uint32_t nb_compo)
Definition: GrkMatrix.cpp:58
void lupSolve(float *pResult, float *pMatrix, float *pVector, uint32_t *pPermutations, uint32_t nb_compo, float *p_intermediate_data)
Definition: GrkMatrix.cpp:158
Copyright (C) 2016-2022 Grok Image Compression Inc.
Definition: ICacheable.h:20