..
  SPDX-License-Identifier: CC-BY-4.0
  Copyright Contributors to the OpenColorIO Project.
  Do not edit! This file was automatically generated by share/docs/frozendoc.py.

.. py:class:: ExposureContrastTransform
   :module: PyOpenColorIO

   Applies exposure, gamma, and pivoted contrast adjustments. Adjusts the math to be appropriate for linear, logarithmic, or video color spaces.


   .. py:method:: ExposureContrastTransform.__init__(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. __init__(self: PyOpenColorIO.ExposureContrastTransform) -> None

      2. __init__(self: PyOpenColorIO.ExposureContrastTransform, style: PyOpenColorIO.ExposureContrastStyle = <ExposureContrastStyle.EXPOSURE_CONTRAST_LINEAR: 0>, exposure: float = 0.0, contrast: float = 1.0, gamma: float = 1.0, pivot: float = 0.18, logExposureStep: float = 0.088, logMidGray: float = 0.435, dynamicExposure: bool = False, dynamicContrast: bool = False, dynamicGamma: bool = False, direction: PyOpenColorIO.TransformDirection = <TransformDirection.TRANSFORM_DIR_FORWARD: 0>) -> None


   .. py:method:: ExposureContrastTransform.equals(self: PyOpenColorIO.ExposureContrastTransform, other: PyOpenColorIO.ExposureContrastTransform) -> bool
      :module: PyOpenColorIO

      Checks if this exactly equals other.


   .. py:method:: ExposureContrastTransform.getContrast(self: PyOpenColorIO.ExposureContrastTransform) -> float
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getDirection(self: PyOpenColorIO.Transform) -> PyOpenColorIO.TransformDirection
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getExposure(self: PyOpenColorIO.ExposureContrastTransform) -> float
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getFormatMetadata(self: PyOpenColorIO.ExposureContrastTransform) -> PyOpenColorIO.FormatMetadata
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getGamma(self: PyOpenColorIO.ExposureContrastTransform) -> float
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getLogExposureStep(self: PyOpenColorIO.ExposureContrastTransform) -> float
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getLogMidGray(self: PyOpenColorIO.ExposureContrastTransform) -> float
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getPivot(self: PyOpenColorIO.ExposureContrastTransform) -> float
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getStyle(self: PyOpenColorIO.ExposureContrastTransform) -> PyOpenColorIO.ExposureContrastStyle
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.getTransformType(self: PyOpenColorIO.Transform) -> PyOpenColorIO.TransformType
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.isContrastDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> bool
      :module: PyOpenColorIO

      Contrast can be made dynamic so the value can be changed through the CPU or GPU processor, but if there are several :ref:`ExposureContrastTransform` only one can have a dynamic contrast.


   .. py:method:: ExposureContrastTransform.isExposureDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> bool
      :module: PyOpenColorIO

      Exposure can be made dynamic so the value can be changed through the CPU or GPU processor, but if there are several :ref:`ExposureContrastTransform` only one can have a dynamic exposure.


   .. py:method:: ExposureContrastTransform.isGammaDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> bool
      :module: PyOpenColorIO

      Gamma can be made dynamic so the value can be changed through the CPU or GPU processor, but if there are several :ref:`ExposureContrastTransform` only one can have a dynamic gamma.


   .. py:method:: ExposureContrastTransform.makeContrastDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> None
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.makeContrastNonDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> None
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.makeExposureDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> None
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.makeExposureNonDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> None
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.makeGammaDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> None
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.makeGammaNonDynamic(self: PyOpenColorIO.ExposureContrastTransform) -> None
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.setContrast(self: PyOpenColorIO.ExposureContrastTransform, contrast: float) -> None
      :module: PyOpenColorIO

      Applies a contrast/gamma adjustment around a pivot point. The contrast and gamma are mathematically the same, but two controls are provided to enable the use of separate dynamic parameters. Contrast is usually a scene-referred adjustment that pivots around gray whereas gamma is usually a display-referred adjustment that pivots around white.


   .. py:method:: ExposureContrastTransform.setDirection(self: PyOpenColorIO.Transform, direction: PyOpenColorIO.TransformDirection) -> None
      :module: PyOpenColorIO

      Note that this only affects the evaluation and not the values stored in the object.


   .. py:method:: ExposureContrastTransform.setExposure(self: PyOpenColorIO.ExposureContrastTransform, exposure: float) -> None
      :module: PyOpenColorIO

      Applies an exposure adjustment. The value is in units of stops (regardless of style), for example, a value of -1 would be equivalent to reducing the lighting by one half.


   .. py:method:: ExposureContrastTransform.setGamma(self: PyOpenColorIO.ExposureContrastTransform, gamma: float) -> None
      :module: PyOpenColorIO


   .. py:method:: ExposureContrastTransform.setLogExposureStep(self: PyOpenColorIO.ExposureContrastTransform, logExposureStep: float) -> None
      :module: PyOpenColorIO

      Set the increment needed to move one stop for the log-style algorithm. For example, ACEScct is 0.057, LogC is roughly 0.074, and Cineon is roughly 90/1023 = 0.088. The default value is 0.088.


   .. py:method:: ExposureContrastTransform.setLogMidGray(self: PyOpenColorIO.ExposureContrastTransform, logMidGray: float) -> None
      :module: PyOpenColorIO

      Set the position of 18% gray for use by the log-style algorithm. For example, ACEScct is about 0.41, LogC is about 0.39, and ADX10 is 445/1023 = 0.435. The default value is 0.435.


   .. py:method:: ExposureContrastTransform.setPivot(self: PyOpenColorIO.ExposureContrastTransform, pivot: float) -> None
      :module: PyOpenColorIO

      Set the pivot point around which the contrast and gamma controls will work. Regardless of whether linear/video/log-style is being used, the pivot is always expressed in linear. In other words, a pivot of 0.18 is always mid-gray.


   .. py:method:: ExposureContrastTransform.setStyle(self: PyOpenColorIO.ExposureContrastTransform, style: PyOpenColorIO.ExposureContrastStyle) -> None
      :module: PyOpenColorIO

      Select the algorithm for linear, video or log color spaces.


   .. py:method:: ExposureContrastTransform.validate(self: PyOpenColorIO.Transform) -> None
      :module: PyOpenColorIO

      Will throw if data is not valid.

