libdcp
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
dcp::TransferFunction Class Referenceabstract

A transfer function represented by a lookup table. More...

#include <transfer_function.h>

Inheritance diagram for dcp::TransferFunction:
dcp::GammaTransferFunction dcp::IdentityTransferFunction dcp::ModifiedGammaTransferFunction dcp::SGamut3TransferFunction

Public Member Functions

 TransferFunction (TransferFunction const &)=delete
 
TransferFunctionoperator= (TransferFunction const &)=delete
 
double const * lut (int bit_depth, bool inverse) const
 
virtual bool about_equal (std::shared_ptr< const TransferFunction > other, double epsilon) const =0
 

Protected Member Functions

virtual double * make_lut (int bit_depth, bool inverse) const =0
 

Private Attributes

std::map< std::pair< int, bool >, double * > _luts
 
boost::mutex _mutex
 

Detailed Description

A transfer function represented by a lookup table.

Definition at line 55 of file transfer_function.h.

Member Function Documentation

◆ lut()

double const * TransferFunction::lut ( int  bit_depth,
bool  inverse 
) const
Returns
A look-up table (of size 2^bit_depth) whose values range from 0 to 1

Definition at line 65 of file transfer_function.cc.

◆ make_lut()

virtual double* dcp::TransferFunction::make_lut ( int  bit_depth,
bool  inverse 
) const
protectedpure virtual

Member Data Documentation

◆ _mutex

boost::mutex dcp::TransferFunction::_mutex
mutableprivate

mutex to protect _luts

Definition at line 77 of file transfer_function.h.


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