|
RawSpeed
fast raw decoding library
|
#include "rawspeedconfig.h"#include "adt/Casts.h"#include "adt/Invariant.h"#include <algorithm>#include <array>#include <bit>#include <climits>#include <concepts>#include <cstdint>#include <cstring>#include <type_traits>Go to the source code of this file.
Namespaces | |
| namespace | rawspeed |
Functions | |
| template<typename T> | |
| constexpr bool RAWSPEED_READNONE | rawspeed::isPowerOfTwo (T val) |
| template<class T> | |
| constexpr unsigned RAWSPEED_READNONE | rawspeed::bitwidth (T unused={}) |
| template<class T> requires std::unsigned_integral<T> | |
| unsigned | rawspeed::numSignBits (const T v) |
| template<class T> requires (std::unsigned_integral<T> && bitwidth<T>() >= bitwidth<uint32_t>()) | |
| unsigned | rawspeed::numActiveBits (const T v) |
| template<class T> requires (std::unsigned_integral<T> && bitwidth<T>() < bitwidth<uint32_t>()) | |
| unsigned | rawspeed::numActiveBits (const T v) |
| template<class T> requires std::unsigned_integral<T> | |
| unsigned | rawspeed::numSignificantBits (const T v) |
| template<typename T> requires std::is_arithmetic_v<T> | |
| constexpr auto RAWSPEED_READNONE | rawspeed::clampBits (T value, unsigned int nBits) |
| template<typename T> requires std::is_arithmetic_v<T> | |
| constexpr bool RAWSPEED_READNONE | rawspeed::isIntN (T value, unsigned int nBits) |
| template<class T> requires std::unsigned_integral<T> | |
| constexpr RAWSPEED_READNONE T | rawspeed::extractLowBits (T value, unsigned nBits) |
| template<class T> requires std::unsigned_integral<T> | |
| constexpr RAWSPEED_READNONE T | rawspeed::extractLowBitsSafe (T value, unsigned nBits) |
| template<class T> requires std::is_unsigned_v<T> | |
| constexpr RAWSPEED_READNONE T | rawspeed::extractHighBits (T value, unsigned nBits, unsigned effectiveBitwidth=bitwidth< T >()) |
| template<typename T> requires std::is_unsigned_v<T> | |
| constexpr std::make_signed_t< T > RAWSPEED_READNONE | rawspeed::signExtend (T value, unsigned int nBits) |
| template<class T> requires std::same_as<T, uint8_t> | |
| T | rawspeed::bitreverse (const T v) |
| template<class T> requires std::same_as<T, uint8_t> | |
| std::array< T, 4 > | rawspeed::bitreverse_each (std::array< T, 4 > x) |