/src/libjxl/lib/jxl/field_encodings.h
Line | Count | Source (jump to first uncovered line) |
1 | | // Copyright (c) the JPEG XL Project Authors. All rights reserved. |
2 | | // |
3 | | // Use of this source code is governed by a BSD-style |
4 | | // license that can be found in the LICENSE file. |
5 | | |
6 | | #ifndef LIB_JXL_FIELD_ENCODINGS_H_ |
7 | | #define LIB_JXL_FIELD_ENCODINGS_H_ |
8 | | |
9 | | // Constants needed to encode/decode fields; avoids including the full fields.h. |
10 | | |
11 | | #include <cstddef> |
12 | | #include <cstdint> |
13 | | #include <hwy/base.h> |
14 | | #include <vector> |
15 | | |
16 | | #include "lib/jxl/base/bits.h" |
17 | | #include "lib/jxl/base/compiler_specific.h" |
18 | | #include "lib/jxl/base/status.h" |
19 | | |
20 | | namespace jxl { |
21 | | |
22 | | // Macro to define the Fields' derived class Name when compiling with debug |
23 | | // names. |
24 | | #if (JXL_IS_DEBUG_BUILD) |
25 | | #define JXL_FIELDS_NAME(X) \ |
26 | | const char* Name() const override { return #X; } |
27 | | #else |
28 | | #define JXL_FIELDS_NAME(X) |
29 | | #endif // JXL_IS_DEBUG_BUILD |
30 | | |
31 | | class Visitor; |
32 | | class Fields { |
33 | | public: |
34 | 4.23M | virtual ~Fields() = default; |
35 | | #if (JXL_IS_DEBUG_BUILD) |
36 | | virtual const char* Name() const = 0; |
37 | | #endif // JXL_IS_DEBUG_BUILD |
38 | | virtual Status VisitFields(Visitor* JXL_RESTRICT visitor) = 0; |
39 | | }; |
40 | | |
41 | | // Distribution of U32 values for one particular selector. Represents either a |
42 | | // power of two-sized range, or a single value. A separate type ensures this is |
43 | | // only passed to the U32Enc ctor. |
44 | | struct U32Distr { |
45 | | // No need to validate - all `d` are legitimate. |
46 | 29.0M | constexpr explicit U32Distr(uint32_t d) : d(d) {} |
47 | | |
48 | | static constexpr uint32_t kDirect = 0x80000000u; |
49 | | |
50 | 576k | constexpr bool IsDirect() const { return (d & kDirect) != 0; } |
51 | | |
52 | | // Only call if IsDirect(). |
53 | 389k | constexpr uint32_t Direct() const { return d & (kDirect - 1); } |
54 | | |
55 | | // Only call if !IsDirect(). |
56 | 181k | constexpr size_t ExtraBits() const { return (d & 0x1F) + 1; } |
57 | 182k | uint32_t Offset() const { return (d >> 5) & 0x3FFFFFF; } |
58 | | |
59 | | uint32_t d; |
60 | | }; |
61 | | |
62 | | // A direct-coded 31-bit value occupying 2 bits in the bitstream. |
63 | 12.7M | constexpr U32Distr Val(uint32_t value) { |
64 | 12.7M | return U32Distr(value | U32Distr::kDirect); |
65 | 12.7M | } |
66 | | |
67 | | // Value - `offset` will be signaled in `bits` extra bits. |
68 | 16.2M | constexpr U32Distr BitsOffset(uint32_t bits, uint32_t offset) { |
69 | 16.2M | return U32Distr(((bits - 1) & 0x1F) + ((offset & 0x3FFFFFF) << 5)); |
70 | 16.2M | } |
71 | | |
72 | | // Value will be signaled in `bits` extra bits. |
73 | 2.85M | constexpr U32Distr Bits(uint32_t bits) { return BitsOffset(bits, 0); } |
74 | | |
75 | | // See U32Coder documentation in fields.h. |
76 | | class U32Enc { |
77 | | public: |
78 | | constexpr U32Enc(const U32Distr d0, const U32Distr d1, const U32Distr d2, |
79 | | const U32Distr d3) |
80 | 7.25M | : d_{d0, d1, d2, d3} {} |
81 | | |
82 | | // Returns the U32Distr at `selector` = 0..3, least-significant first. |
83 | 576k | U32Distr GetDistr(const uint32_t selector) const { |
84 | 576k | JXL_DASSERT(selector < 4); |
85 | 576k | return d_[selector]; |
86 | 576k | } |
87 | | |
88 | | private: |
89 | | U32Distr d_[4]; |
90 | | }; |
91 | | |
92 | | // Returns bit with the given `index` (0 = least significant). |
93 | | template <typename T> |
94 | 8.20M | static inline constexpr uint64_t MakeBit(T index) { |
95 | 8.20M | return 1ULL << static_cast<uint32_t>(index); |
96 | 8.20M | } Unexecuted instantiation: encode.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: encode.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: encode.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: encode.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: encode.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: encode.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_fields.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_fields.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_fields.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_fields.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_fields.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_fields.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_ans.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_ans.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_ans.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_ans.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_ans.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_ans.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_lz77.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_lz77.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_lz77.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_lz77.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_lz77.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_lz77.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_fast_lossless.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_fast_lossless.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_fast_lossless.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_fast_lossless.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_fast_lossless.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_fast_lossless.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_frame.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_frame.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_frame.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_frame.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_frame.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_frame.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_modular.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_modular.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_modular.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_modular.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_modular.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_modular.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_dot_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_dot_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_dot_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_dot_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_dot_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_dot_dictionary.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_detect_dots.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_detect_dots.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_detect_dots.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_detect_dots.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_detect_dots.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_detect_dots.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_debug_image.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_debug_image.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_debug_image.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_debug_image.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_debug_image.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_debug_image.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_xyb.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_image_bundle.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_external_image.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_butteraugli_comparator.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_butteraugli_comparator.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_butteraugli_comparator.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_butteraugli_comparator.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_butteraugli_comparator.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_butteraugli_comparator.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_cache.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_cache.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_cache.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_cache.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_cache.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_cache.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_group.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_group.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_group.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_group.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_group.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_group.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_progressive_split.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_progressive_split.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_progressive_split.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_progressive_split.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_progressive_split.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_progressive_split.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_chroma_from_luma.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_chroma_from_luma.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_chroma_from_luma.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_chroma_from_luma.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_chroma_from_luma.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_chroma_from_luma.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_ac_strategy.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_ac_strategy.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_ac_strategy.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_ac_strategy.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_ac_strategy.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_ac_strategy.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_entropy_coder.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_entropy_coder.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_entropy_coder.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_entropy_coder.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_entropy_coder.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_entropy_coder.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: jxl_cms.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: jxl_cms.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: jxl_cms.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: jxl_cms.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: jxl_cms.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_jpeg_data.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_jpeg_data.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_jpeg_data.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_jpeg_data.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_jpeg_data.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_jpeg_data.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: enc_encoding.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: enc_encoding.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: enc_encoding.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: enc_encoding.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: enc_encoding.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: enc_encoding.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) color_encoding_internal.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Line | Count | Source | 94 | 1.49M | static inline constexpr uint64_t MakeBit(T index) { | 95 | 1.49M | return 1ULL << static_cast<uint32_t>(index); | 96 | 1.49M | } |
color_encoding_internal.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Line | Count | Source | 94 | 954k | static inline constexpr uint64_t MakeBit(T index) { | 95 | 954k | return 1ULL << static_cast<uint32_t>(index); | 96 | 954k | } |
color_encoding_internal.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Line | Count | Source | 94 | 936k | static inline constexpr uint64_t MakeBit(T index) { | 95 | 936k | return 1ULL << static_cast<uint32_t>(index); | 96 | 936k | } |
color_encoding_internal.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Line | Count | Source | 94 | 934k | static inline constexpr uint64_t MakeBit(T index) { | 95 | 934k | return 1ULL << static_cast<uint32_t>(index); | 96 | 934k | } |
color_encoding_internal.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Line | Count | Source | 94 | 936k | static inline constexpr uint64_t MakeBit(T index) { | 95 | 936k | return 1ULL << static_cast<uint32_t>(index); | 96 | 936k | } |
Unexecuted instantiation: compressed_dc.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: compressed_dc.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: compressed_dc.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: compressed_dc.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: compressed_dc.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: compressed_dc.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: dec_cache.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: dec_cache.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: dec_cache.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: dec_cache.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: dec_cache.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: dec_cache.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: blending.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: blending.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: blending.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: blending.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: blending.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: blending.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: dec_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: dec_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: dec_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: dec_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: dec_external_image.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: dec_external_image.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: dec_frame.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: dec_frame.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: dec_frame.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: dec_frame.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: dec_frame.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: dec_frame.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: dec_group.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: dec_group.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: dec_group.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: dec_group.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: dec_group.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: dec_group.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: dec_modular.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: dec_modular.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: dec_modular.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: dec_modular.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: dec_modular.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: dec_modular.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: dec_noise.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: dec_noise.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: dec_noise.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: dec_noise.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: dec_noise.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: dec_noise.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: dec_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: dec_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: dec_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: dec_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: dec_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: dec_patch_dictionary.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: dec_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: dec_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: dec_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: dec_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: dec_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: dec_xyb.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: decode.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: decode.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: decode.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: decode.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: decode.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: decode.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: epf.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: epf.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: epf.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: epf.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: epf.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: epf.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: frame_header.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: frame_header.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: frame_header.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: frame_header.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: frame_header.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: frame_header.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: image_bundle.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: image_bundle.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) image_metadata.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Line | Count | Source | 94 | 2.95M | static inline constexpr uint64_t MakeBit(T index) { | 95 | 2.95M | return 1ULL << static_cast<uint32_t>(index); | 96 | 2.95M | } |
Unexecuted instantiation: image_metadata.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: image_metadata.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: image_metadata.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: image_metadata.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: image_metadata.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: luminance.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: luminance.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: luminance.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: luminance.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: luminance.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: luminance.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: passes_state.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: passes_state.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: passes_state.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: passes_state.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: passes_state.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: passes_state.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: quant_weights.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: quant_weights.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: render_pipeline.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: low_memory_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: low_memory_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: low_memory_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: low_memory_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: low_memory_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: low_memory_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_blending.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_blending.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_blending.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_blending.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_blending.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_blending.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: render_pipeline_stage.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: render_pipeline_stage.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: render_pipeline_stage.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: render_pipeline_stage.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: render_pipeline_stage.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: render_pipeline_stage.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_chroma_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_chroma_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_chroma_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_chroma_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_chroma_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_chroma_upsampling.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_cms.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_cms.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_cms.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_cms.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_cms.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_cms.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_epf.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_epf.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_epf.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_epf.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_epf.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_epf.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_from_linear.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_from_linear.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_from_linear.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_from_linear.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_from_linear.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_from_linear.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_gaborish.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_gaborish.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_gaborish.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_gaborish.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_gaborish.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_gaborish.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_noise.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_noise.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_noise.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_noise.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_noise.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_noise.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_patches.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_patches.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_patches.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_patches.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_patches.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_patches.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_splines.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_splines.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_splines.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_splines.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_splines.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_splines.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_spot.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_spot.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_spot.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_spot.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_spot.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_spot.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_to_linear.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_to_linear.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_to_linear.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_to_linear.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_to_linear.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_to_linear.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_tone_mapping.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_tone_mapping.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_tone_mapping.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_tone_mapping.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_tone_mapping.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_tone_mapping.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_upsampling.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_upsampling.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_write.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_write.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_write.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_write.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_write.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_write.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_xyb.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_xyb.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: stage_ycbcr.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: stage_ycbcr.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: stage_ycbcr.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: stage_ycbcr.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: stage_ycbcr.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: stage_ycbcr.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) Unexecuted instantiation: decode_to_jpeg.cc:unsigned long jxl::MakeBit<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Unexecuted instantiation: decode_to_jpeg.cc:unsigned long jxl::MakeBit<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Unexecuted instantiation: decode_to_jpeg.cc:unsigned long jxl::MakeBit<jxl::cms::Primaries>(jxl::cms::Primaries) Unexecuted instantiation: decode_to_jpeg.cc:unsigned long jxl::MakeBit<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Unexecuted instantiation: decode_to_jpeg.cc:unsigned long jxl::MakeBit<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Unexecuted instantiation: decode_to_jpeg.cc:unsigned long jxl::MakeBit<jxl::ExtraChannel>(jxl::ExtraChannel) |
97 | | |
98 | | // Returns vector of all possible values of an Enum type. Relies on each Enum |
99 | | // providing an overload of EnumBits() that returns a bit array of its values, |
100 | | // which implies values must be in [0, 64). |
101 | | template <typename Enum> |
102 | 0 | std::vector<Enum> Values() { |
103 | 0 | uint64_t bits = EnumBits(Enum()); |
104 | |
|
105 | 0 | std::vector<Enum> values; |
106 | 0 | values.reserve(hwy::PopCount(bits)); |
107 | | |
108 | | // For each 1-bit in bits: add its index as value |
109 | 0 | while (bits != 0) { |
110 | 0 | const int index = Num0BitsBelowLS1Bit_Nonzero(bits); |
111 | 0 | values.push_back(static_cast<Enum>(index)); |
112 | 0 | bits &= bits - 1; // clear least-significant bit |
113 | 0 | } |
114 | 0 | return values; |
115 | 0 | } |
116 | | |
117 | | // Returns true if value is one of Values<Enum>(). |
118 | | template <class Enum> |
119 | 1.23M | Status EnumValid(const Enum value) { |
120 | 1.23M | if (static_cast<uint32_t>(value) >= 64) { |
121 | 40 | return JXL_FAILURE("Value %u too large for %s\n", |
122 | 40 | static_cast<uint32_t>(value), EnumName(Enum())); |
123 | 40 | } |
124 | 1.23M | const uint64_t bit = MakeBit(value); |
125 | 1.23M | if ((EnumBits(Enum()) & bit) == 0) { |
126 | 70 | return JXL_FAILURE("Invalid value %u for %s\n", |
127 | 70 | static_cast<uint32_t>(value), EnumName(Enum())); |
128 | 70 | } |
129 | 1.23M | return true; |
130 | 1.23M | } jxl::Status jxl::EnumValid<jxl::cms::TransferFunction>(jxl::cms::TransferFunction) Line | Count | Source | 119 | 186k | Status EnumValid(const Enum value) { | 120 | 186k | if (static_cast<uint32_t>(value) >= 64) { | 121 | 4 | return JXL_FAILURE("Value %u too large for %s\n", | 122 | 4 | static_cast<uint32_t>(value), EnumName(Enum())); | 123 | 4 | } | 124 | 186k | const uint64_t bit = MakeBit(value); | 125 | 186k | if ((EnumBits(Enum()) & bit) == 0) { | 126 | 4 | return JXL_FAILURE("Invalid value %u for %s\n", | 127 | 4 | static_cast<uint32_t>(value), EnumName(Enum())); | 128 | 4 | } | 129 | 186k | return true; | 130 | 186k | } |
jxl::Status jxl::EnumValid<jxl::cms::ColorSpace>(jxl::cms::ColorSpace) Line | Count | Source | 119 | 190k | Status EnumValid(const Enum value) { | 120 | 190k | if (static_cast<uint32_t>(value) >= 64) { | 121 | 6 | return JXL_FAILURE("Value %u too large for %s\n", | 122 | 6 | static_cast<uint32_t>(value), EnumName(Enum())); | 123 | 6 | } | 124 | 190k | const uint64_t bit = MakeBit(value); | 125 | 190k | if ((EnumBits(Enum()) & bit) == 0) { | 126 | 12 | return JXL_FAILURE("Invalid value %u for %s\n", | 127 | 12 | static_cast<uint32_t>(value), EnumName(Enum())); | 128 | 12 | } | 129 | 190k | return true; | 130 | 190k | } |
jxl::Status jxl::EnumValid<jxl::cms::WhitePoint>(jxl::cms::WhitePoint) Line | Count | Source | 119 | 187k | Status EnumValid(const Enum value) { | 120 | 187k | if (static_cast<uint32_t>(value) >= 64) { | 121 | 4 | return JXL_FAILURE("Value %u too large for %s\n", | 122 | 4 | static_cast<uint32_t>(value), EnumName(Enum())); | 123 | 4 | } | 124 | 187k | const uint64_t bit = MakeBit(value); | 125 | 187k | if ((EnumBits(Enum()) & bit) == 0) { | 126 | 6 | return JXL_FAILURE("Invalid value %u for %s\n", | 127 | 6 | static_cast<uint32_t>(value), EnumName(Enum())); | 128 | 6 | } | 129 | 187k | return true; | 130 | 187k | } |
jxl::Status jxl::EnumValid<jxl::cms::Primaries>(jxl::cms::Primaries) Line | Count | Source | 119 | 186k | Status EnumValid(const Enum value) { | 120 | 186k | if (static_cast<uint32_t>(value) >= 64) { | 121 | 4 | return JXL_FAILURE("Value %u too large for %s\n", | 122 | 4 | static_cast<uint32_t>(value), EnumName(Enum())); | 123 | 4 | } | 124 | 186k | const uint64_t bit = MakeBit(value); | 125 | 186k | if ((EnumBits(Enum()) & bit) == 0) { | 126 | 6 | return JXL_FAILURE("Invalid value %u for %s\n", | 127 | 6 | static_cast<uint32_t>(value), EnumName(Enum())); | 128 | 6 | } | 129 | 186k | return true; | 130 | 186k | } |
jxl::Status jxl::EnumValid<jxl::cms::RenderingIntent>(jxl::cms::RenderingIntent) Line | Count | Source | 119 | 187k | Status EnumValid(const Enum value) { | 120 | 187k | if (static_cast<uint32_t>(value) >= 64) { | 121 | 4 | return JXL_FAILURE("Value %u too large for %s\n", | 122 | 4 | static_cast<uint32_t>(value), EnumName(Enum())); | 123 | 4 | } | 124 | 187k | const uint64_t bit = MakeBit(value); | 125 | 187k | if ((EnumBits(Enum()) & bit) == 0) { | 126 | 10 | return JXL_FAILURE("Invalid value %u for %s\n", | 127 | 10 | static_cast<uint32_t>(value), EnumName(Enum())); | 128 | 10 | } | 129 | 187k | return true; | 130 | 187k | } |
jxl::Status jxl::EnumValid<jxl::ExtraChannel>(jxl::ExtraChannel) Line | Count | Source | 119 | 295k | Status EnumValid(const Enum value) { | 120 | 295k | if (static_cast<uint32_t>(value) >= 64) { | 121 | 18 | return JXL_FAILURE("Value %u too large for %s\n", | 122 | 18 | static_cast<uint32_t>(value), EnumName(Enum())); | 123 | 18 | } | 124 | 295k | const uint64_t bit = MakeBit(value); | 125 | 295k | if ((EnumBits(Enum()) & bit) == 0) { | 126 | 32 | return JXL_FAILURE("Invalid value %u for %s\n", | 127 | 32 | static_cast<uint32_t>(value), EnumName(Enum())); | 128 | 32 | } | 129 | 295k | return true; | 130 | 295k | } |
|
131 | | |
132 | | } // namespace jxl |
133 | | |
134 | | #endif // LIB_JXL_FIELD_ENCODINGS_H_ |