15 using lut_table_t = std::array<std::uint8_t, std::numeric_limits<std::uint8_t>::max() + 1>;
21 [[nodiscard]]
inline std::uint8_t
operator[](std::uint8_t v)
const;
signed gamma_to_key(float gamma) const
Definition: gamma.cpp:38
std::mutex _lookup_mutex
Definition: gamma.hpp:38
static constexpr unsigned default_precision
Definition: gamma.hpp:43
std::map< signed, std::unique_ptr< gamma_table > > _gamma_to_table
Definition: gamma.hpp:36
gamma_table const & operator[](float gamma)
Definition: gamma.cpp:27
float _gamma_multiplier
Definition: gamma.hpp:37
gamma_table const & get_cached_gamma_table(float gamma)
Definition: gamma.cpp:46
std::uint8_t reverse_lookup(std::uint8_t v) const
Definition: gamma.cpp:42
std::uint8_t operator[](std::uint8_t v) const
Definition: gamma.hpp:65
lut_table_t lut
Definition: gamma.hpp:16
std::array< std::uint8_t, std::numeric_limits< std::uint8_t >::max()+1 > lut_table_t
Definition: gamma.hpp:15
static gamma_table build(float gamma)
Definition: gamma.cpp:13