summaryrefslogtreecommitdiffstats
path: root/third_party/jpeg-xl/lib/jxl/opsin_params.h
blob: 4ed2124fd7174a4f65c642d4dc886c5de56c9ce9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Copyright (c) the JPEG XL Project Authors. All rights reserved.
//
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

#ifndef LIB_JXL_OPSIN_PARAMS_H_
#define LIB_JXL_OPSIN_PARAMS_H_

// Constants that define the XYB color space.

#include "lib/jxl/base/compiler_specific.h"
#include "lib/jxl/base/matrix_ops.h"

namespace jxl {

// Returns 3x3 row-major matrix inverse of kOpsinAbsorbanceMatrix.
// opsin_image_test verifies this is actually the inverse.
const Matrix3x3& GetOpsinAbsorbanceInverseMatrix();

void InitSIMDInverseMatrix(const Matrix3x3& inverse,
                           float* JXL_RESTRICT simd_inverse,
                           float intensity_target);

}  // namespace jxl

#endif  // LIB_JXL_OPSIN_PARAMS_H_