RawSpeed
fast raw decoding library
Loading...
Searching...
No Matches
rawspeed::SimpleLUT< T, TableBitWidth > Class Template Referencefinal

#include "common/SimpleLUT.h"

Inheritance diagram for rawspeed::SimpleLUT< T, TableBitWidth >:
[legend]
Collaboration diagram for rawspeed::SimpleLUT< T, TableBitWidth >:
[legend]

Public Types

using value_type = T

Public Member Functions

 SimpleLUT ()=default
template<typename F>
requires ( !std::is_same_v<SimpleLUT, typename std::remove_cv_t< typename std::remove_reference_t<F>>> && std::is_convertible_v< F, std::function<value_type(typename decltype(table)::size_type, typename decltype(table)::size_type)>>)
 SimpleLUT (F f)
value_type operator[] (int x) const

Private Attributes

std::vector< value_typetable

Detailed Description

template<typename T, int TableBitWidth>
class rawspeed::SimpleLUT< T, TableBitWidth >

Definition at line 34 of file SimpleLUT.h.

Member Typedef Documentation

◆ value_type

template<typename T, int TableBitWidth>
using rawspeed::SimpleLUT< T, TableBitWidth >::value_type = T

Definition at line 36 of file SimpleLUT.h.

Constructor & Destructor Documentation

◆ SimpleLUT() [1/2]

template<typename T, int TableBitWidth>
rawspeed::SimpleLUT< T, TableBitWidth >::SimpleLUT ( )
default

◆ SimpleLUT() [2/2]

template<typename T, int TableBitWidth>
template<typename F>
requires ( !std::is_same_v<SimpleLUT, typename std::remove_cv_t< typename std::remove_reference_t<F>>> && std::is_convertible_v< F, std::function<value_type(typename decltype(table)::size_type, typename decltype(table)::size_type)>>)
rawspeed::SimpleLUT< T, TableBitWidth >::SimpleLUT ( F f)
inlineexplicit

Definition at line 51 of file SimpleLUT.h.

References assert(), and table.

Here is the call graph for this function:

Member Function Documentation

◆ operator[]()

template<typename T, int TableBitWidth>
value_type rawspeed::SimpleLUT< T, TableBitWidth >::operator[] ( int x) const
inline

Definition at line 63 of file SimpleLUT.h.

References rawspeed::clampBits(), table, and x.

Here is the call graph for this function:

Member Data Documentation

◆ table

template<typename T, int TableBitWidth>
std::vector<value_type> rawspeed::SimpleLUT< T, TableBitWidth >::table
private

Definition at line 41 of file SimpleLUT.h.

Referenced by SimpleLUT(), and operator[]().


The documentation for this class was generated from the following file: