HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
OCIO_NAMESPACE::Lut3DTransform Class Referenceabstract

Represents a 3D-LUT transform. More...

#include <OpenColorTransforms.h>

+ Inheritance diagram for OCIO_NAMESPACE::Lut3DTransform:

Public Member Functions

TransformType getTransformType () const noexceptoverride
 
virtual BitDepth getFileOutputBitDepth () const noexcept=0
 
virtual void setFileOutputBitDepth (BitDepth bitDepth) noexcept=0
 
virtual const FormatMetadatagetFormatMetadata () const noexcept=0
 
virtual FormatMetadatagetFormatMetadata () noexcept=0
 
virtual bool equals (const Lut3DTransform &other) const noexcept=0
 Checks if this exactly equals other. More...
 
virtual unsigned long getGridSize () const =0
 
virtual void setGridSize (unsigned long gridSize)=0
 
virtual void getValue (unsigned long indexR, unsigned long indexG, unsigned long indexB, float &r, float &g, float &b) const =0
 
virtual void setValue (unsigned long indexR, unsigned long indexG, unsigned long indexB, float r, float g, float b)=0
 
virtual Interpolation getInterpolation () const =0
 
virtual void setInterpolation (Interpolation algo)=0
 
 Lut3DTransform (const Lut3DTransform &)=delete
 
Lut3DTransformoperator= (const Lut3DTransform &)=delete
 
virtual ~Lut3DTransform ()=default
 Do not use (needed only for pybind11). More...
 
- Public Member Functions inherited from OCIO_NAMESPACE::Transform
virtual TransformRcPtr createEditableCopy () const =0
 
virtual TransformDirection getDirection () const noexcept=0
 
virtual void setDirection (TransformDirection dir) noexcept=0
 Note that this only affects the evaluation and not the values stored in the object. More...
 
virtual void validate () const
 Will throw if data is not valid. More...
 
 Transform (const Transform &)=delete
 
Transformoperator= (const Transform &)=delete
 
virtual ~Transform ()=default
 Do not use (needed only for pybind11). More...
 

Static Public Member Functions

static Lut3DTransformRcPtr Create ()
 Create an identity 3D-LUT of size 2x2x2. More...
 
static Lut3DTransformRcPtr Create (unsigned long gridSize)
 

Protected Member Functions

 Lut3DTransform ()=default
 
- Protected Member Functions inherited from OCIO_NAMESPACE::Transform
 Transform ()=default
 

Detailed Description

Represents a 3D-LUT transform.

Definition at line 1696 of file OpenColorTransforms.h.

Constructor & Destructor Documentation

OCIO_NAMESPACE::Lut3DTransform::Lut3DTransform ( const Lut3DTransform )
delete
virtual OCIO_NAMESPACE::Lut3DTransform::~Lut3DTransform ( )
virtualdefault

Do not use (needed only for pybind11).

OCIO_NAMESPACE::Lut3DTransform::Lut3DTransform ( )
protecteddefault

Member Function Documentation

static Lut3DTransformRcPtr OCIO_NAMESPACE::Lut3DTransform::Create ( )
static

Create an identity 3D-LUT of size 2x2x2.

static Lut3DTransformRcPtr OCIO_NAMESPACE::Lut3DTransform::Create ( unsigned long  gridSize)
static

Create an identity 3D-LUT with specific grid size. Will throw for grid size larger than 129.

virtual bool OCIO_NAMESPACE::Lut3DTransform::equals ( const Lut3DTransform other) const
pure virtualnoexcept

Checks if this exactly equals other.

virtual BitDepth OCIO_NAMESPACE::Lut3DTransform::getFileOutputBitDepth ( ) const
pure virtualnoexcept
virtual const FormatMetadata& OCIO_NAMESPACE::Lut3DTransform::getFormatMetadata ( ) const
pure virtualnoexcept
virtual FormatMetadata& OCIO_NAMESPACE::Lut3DTransform::getFormatMetadata ( )
pure virtualnoexcept
virtual unsigned long OCIO_NAMESPACE::Lut3DTransform::getGridSize ( ) const
pure virtual
virtual Interpolation OCIO_NAMESPACE::Lut3DTransform::getInterpolation ( ) const
pure virtual
TransformType OCIO_NAMESPACE::Lut3DTransform::getTransformType ( ) const
inlineoverridevirtualnoexcept

Implements OCIO_NAMESPACE::Transform.

Definition at line 1708 of file OpenColorTransforms.h.

virtual void OCIO_NAMESPACE::Lut3DTransform::getValue ( unsigned long  indexR,
unsigned long  indexG,
unsigned long  indexB,
float r,
float g,
float b 
) const
pure virtual
Lut3DTransform& OCIO_NAMESPACE::Lut3DTransform::operator= ( const Lut3DTransform )
delete
virtual void OCIO_NAMESPACE::Lut3DTransform::setFileOutputBitDepth ( BitDepth  bitDepth)
pure virtualnoexcept

Get the bit-depth associated with the LUT values read from a file or set the bit-depth of values to be written to a file (for file formats such as CLF that support multiple bit-depths). However, note that the values stored in the object are always normalized.

virtual void OCIO_NAMESPACE::Lut3DTransform::setGridSize ( unsigned long  gridSize)
pure virtual

Changing the grid size will reset the LUT to identity. Will throw for grid sizes larger than 129.

virtual void OCIO_NAMESPACE::Lut3DTransform::setInterpolation ( Interpolation  algo)
pure virtual
virtual void OCIO_NAMESPACE::Lut3DTransform::setValue ( unsigned long  indexR,
unsigned long  indexG,
unsigned long  indexB,
float  r,
float  g,
float  b 
)
pure virtual

Set the values of a 3D-LUT. Will throw if an index is outside of the range from 0 to (gridSize-1).

The LUT values are always for the "forward" LUT, regardless of how the transform direction is set.

These values are normalized relative to what may be stored in any given LUT files. For example in a CLF file using a "10i" output depth, a value of 1023 in the file is normalized to 1.0. The values here are unclamped and may extend outside [0,1].


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