5 #ifndef INCLUDED_OCIO_OPENCOLORTYPES_H
6 #define INCLUDED_OCIO_OPENCOLORTYPES_H
10 #ifndef OCIO_NAMESPACE
11 #error This header cannot be used directly. Use <OpenColorIO/OpenColorIO.h> instead.
258 template <
class T,
class U>
261 return OCIO_DYNAMIC_POINTER_CAST<T,U>(
ptr);
OCIO_SHARED_PTR< const ExponentWithLinearTransform > ConstExponentWithLinearTransformRcPtr
OCIO_SHARED_PTR< const LegacyViewingPipeline > ConstLegacyViewingPipelineRcPtr
OCIOEXPORT const char * OCIO_ACTIVE_VIEWS_ENVVAR
Algorithm used in ACES Output Transforms through v0.7.
ASC CDL specification v1.2.
OCIO_SHARED_PTR< DisplayViewTransform > DisplayViewTransformRcPtr
EnvironmentMode
Controls which environment variables are loaded into a Context object.
OCIOEXPORT const char * ROLE_SCENE_LINEAR
"scene_linear"
OCIO_SHARED_PTR< const GpuShaderCreator > ConstGpuShaderCreatorRcPtr
OCIO_SHARED_PTR< const ViewTransform > ConstViewTransformRcPtr
OCIOEXPORT const char * ROLE_COLOR_TIMING
"color_timing"
Linearly extrapolate the curve for negative values.
OCIOEXPORT const char * OCIO_VIEW_USE_DISPLAY_NAME
OCIO_SHARED_PTR< const LogAffineTransform > ConstLogAffineTransformRcPtr
OCIOEXPORT const char * InterpolationToString(Interpolation interp)
Image gamma value (double floating point value)
OCIOEXPORT EnvironmentMode EnvironmentModeFromString(const char *s)
This class holds the GPU-related information needed to build a shader program from a specific process...
cubic interpolation (not supported)
OCIO_SHARED_PTR< LookTransform > LookTransformRcPtr
OCIOEXPORT const char * RangeStyleToString(RangeStyle style)
OCIO_SHARED_PTR< ViewingRules > ViewingRulesRcPtr
OCIOEXPORT const char * ROLE_INTERCHANGE_DISPLAY
Replace identity gamma ops.
OCIO_SHARED_PTR< GpuShaderCreator > GpuShaderCreatorRcPtr
Classic RGB to HSV function.
OCIOEXPORT const char * ROLE_MATTE_PAINT
std::array< float, 3 > Float3
Image contrast value (double floating point value)
RangeStyle
A RangeTransform may be set to clamp the values, or not.
OCIOEXPORT const char * GradingStyleToString(GradingStyle style)
ChannelOrdering
Used by PackedImageDesc to indicate the channel ordering of the image to process. ...
This is a light-weight wrapper around an image, that provides a context for pixel access...
OCIO_SHARED_PTR< const LogCameraTransform > ConstLogCameraTransformRcPtr
Algorithms for Scene Linear color spaces.
OCIO_SHARED_PTR< Processor > ProcessorRcPtr
OCIO_SHARED_PTR< const ColorSpaceMenuHelper > ConstColorSpaceMenuHelperRcPtr
OCIO_SHARED_PTR< ExponentTransform > ExponentTransformRcPtr
OCIOEXPORT const char * METADATA_DESCRIPTION
OpenGL ES Shading Language.
ACES 1.3 Parametric Gamut Compression (expects ACEScg values)
OCIO_SHARED_PTR< DynamicPropertyGradingTone > DynamicPropertyGradingToneRcPtr
OCIOEXPORT Allocation AllocationFromString(const char *s)
OCIO_SHARED_PTR< ColorSpaceMenuParameters > ColorSpaceMenuParametersRcPtr
OptimizationFlags
Provides control over how the ops in a Processor are combined in order to improve performance...
Interface used to access dynamic property double value.
OCIO_SHARED_PTR< const GpuShaderDesc > ConstGpuShaderDescRcPtr
OCIO_SHARED_PTR< AllocationTransform > AllocationTransformRcPtr
OCIO_SHARED_PTR< const Transform > ConstTransformRcPtr
OCIO_SHARED_PTR< const ExponentTransform > ConstExponentTransformRcPtr
OCIO_SHARED_PTR< GPUProcessor > GPUProcessorRcPtr
OCIO_SHARED_PTR< FileRules > FileRulesRcPtr
Replace identity ops (other than gamma).
An exception class to throw for errors detected at runtime.
OCIO_SHARED_PTR< const BuiltinTransformRegistry > ConstBuiltinTransformRegistryRcPtr
OCIOEXPORT const char * OCIO_CONFIG_ARCHIVE_FILE_EXT
OCIO_SHARED_PTR< ConfigIOProxy > ConfigIOProxyRcPtr
OCIO_SHARED_PTR< const DynamicPropertyGradingPrimary > ConstDynamicPropertyGradingPrimaryRcPtr
OCIO_SHARED_PTR< Lut1DTransform > Lut1DTransformRcPtr
OCIOEXPORT const char * NegativeStyleToString(NegativeStyle style)
OCIO_SHARED_PTR< const ExposureContrastTransform > ConstExposureContrastTransformRcPtr
OCIO_SHARED_PTR< LogCameraTransform > LogCameraTransformRcPtr
Positive curve is rotated 180 degrees around the origin to handle negatives.
DynamicPropertyType
Types for dynamic properties.
Interface used to access dynamic property GradingTone value.
CIE XYZ to 1976 CIELUV colour space (D65 white)
OCIO_SHARED_PTR< const Lut3DTransform > ConstLut3DTransformRcPtr
OCIO_SHARED_PTR< const CDLTransform > ConstCDLTransformRcPtr
OCIOEXPORT const char * METADATA_INFO
CIE XYZ to 1931 xy chromaticity coordinates.
OCIOEXPORT const char * METADATA_ID
OCIO_SHARED_PTR< FixedFunctionTransform > FixedFunctionTransformRcPtr
OCIO_SHARED_PTR< LegacyViewingPipeline > LegacyViewingPipelineRcPtr
the 'best' suitable interpolation type
OCIO_SHARED_PTR< const NamedTransform > ConstNamedTransformRcPtr
OCIOEXPORT BitDepth BitDepthFromString(const char *s)
OCIO_SHARED_PTR< const MixingColorSpaceManager > ConstMixingColorSpaceManagerRcPtr
OCIO_SHARED_PTR< DynamicPropertyGradingRGBCurve > DynamicPropertyGradingRGBCurveRcPtr
OCIO_SHARED_PTR< ExponentWithLinearTransform > ExponentWithLinearTransformRcPtr
OCIOEXPORT const char * LoggingLevelToString(LoggingLevel level)
the reference space for display color spaces
OCIOEXPORT const char * CDLStyleToString(CDLStyle style)
OCIOEXPORT const char * OCIO_BUILTIN_URI_PREFIX
GpuLanguage
Used when there is a choice of hardware shader language.
ProcessorCacheFlags
cpp:type:: Enum to control the behavior of the internal caches e.g. the processor cache in ...
OCIO_SHARED_PTR< const ColorSpaceMenuParameters > ConstColorSpaceMenuParametersRcPtr
OCIO_SHARED_PTR< const LogTransform > ConstLogTransformRcPtr
OCIO_SHARED_PTR< Look > LookRcPtr
OCIO_SHARED_PTR< const RangeTransform > ConstRangeTransformRcPtr
OCIOEXPORT bool BoolFromString(const char *s)
OCIOEXPORT const char * METADATA_INPUT_DESCRIPTOR
OCIO_SHARED_PTR< const ProcessorMetadata > ConstProcessorMetadataRcPtr
OCIO_SHARED_PTR< const GroupTransform > ConstGroupTransformRcPtr
OCIOEXPORT LoggingLevel LoggingLevelFromString(const char *s)
Replace a pair of ops where one is the inverse of the other.
OCIO_SHARED_PTR< ColorSpaceTransform > ColorSpaceTransformRcPtr
OCIO_SHARED_PTR< const FileTransform > ConstFileTransformRcPtr
OCIOEXPORT const char * AllocationToString(Allocation allocation)
OCIO_SHARED_PTR< const Context > ConstContextRcPtr
Vector of floats (size is set by uniform).
OCIO_SHARED_PTR< ProcessorMetadata > ProcessorMetadataRcPtr
OCIO_SHARED_PTR< const CPUProcessor > ConstCPUProcessorRcPtr
Interface used to access dynamic property ConstGradingRGBCurveRcPtr value.
Algorithms for Logarithmic color spaces.
OCIO_SHARED_PTR< DynamicPropertyDouble > DynamicPropertyDoubleRcPtr
OCIO_SHARED_PTR< Lut3DTransform > Lut3DTransformRcPtr
ACES 0.7 Gamut clamping algorithm – NOT IMPLEMENTED YET.
OCIOEXPORT const char * EnvironmentModeToString(EnvironmentMode mode)
OCIO_SHARED_PTR< const DynamicPropertyGradingRGBCurve > ConstDynamicPropertyGradingRGBCurveRcPtr
OCIO_SHARED_PTR< ExposureContrastTransform > ExposureContrastTransformRcPtr
OCIOEXPORT const char * OCIO_CONFIG_DEFAULT_FILE_EXT
OCIO_SHARED_PTR< const Baker > ConstBakerRcPtr
OCIOEXPORT const char * GpuLanguageToString(GpuLanguage language)
E/C to be applied to a linear space image.
OCIOEXPORT TransformDirection TransformDirectionFromString(const char *s)
Will throw if string is not recognized.
OCIO_SHARED_PTR< Baker > BakerRcPtr
OCIO_SHARED_PTR< LogTransform > LogTransformRcPtr
Image exposure value (double floating point value)
OCIO_SHARED_PTR< MixingColorSpaceManager > MixingColorSpaceManagerRcPtr
OCIOEXPORT GradingStyle GradingStyleFromString(const char *s)
A config defines all the color spaces to be available at runtime.
OCIOEXPORT const char * METADATA_NAME
OCIOEXPORT TransformDirection CombineTransformDirections(TransformDirection d1, TransformDirection d2)
OCIOEXPORT const char * ROLE_DATA
"data"
Used by GradingRGBCurveTransform.
For quite lossy optimizations.
OCIOEXPORT const char * ROLE_TEXTURE_PAINT
OCIOEXPORT const char * OCIO_INACTIVE_COLORSPACES_ENVVAR
linear interpolation (trilinear for Lut3D)
Vector of int pairs (size is set by uniform).
OCIOEXPORT const char * ExposureContrastStyleToString(ExposureContrastStyle style)
std::function< void(const char *)> LoggingFunction
Define the logging function signature.
OCIOEXPORT GpuLanguage GpuLanguageFromString(const char *s)
OCIO_SHARED_PTR< CPUProcessor > CPUProcessorRcPtr
the default interpolation type
OCIO_SHARED_PTR< const LookTransform > ConstLookTransformRcPtr
OCIO_SHARED_PTR< const ColorSpaceTransform > ConstColorSpaceTransformRcPtr
OCIO_SHARED_PTR< GradingPrimaryTransform > GradingPrimaryTransformRcPtr
Here for historical reason but that's not supported.
OCIO_SHARED_PTR< GradingBSplineCurve > GradingBSplineCurveRcPtr
OCIO_SHARED_PTR< const Processor > ConstProcessorRcPtr
OCIOEXPORT const char * ROLE_INTERCHANGE_SCENE
OCIO_SHARED_PTR< const ColorSpaceSet > ConstColorSpaceSetRcPtr
OCIO_SHARED_PTR< const FileRules > ConstFileRulesRcPtr
OCIO_SHARED_PTR< const ImageDesc > ConstImageDescRcPtr
OCIOEXPORT const char * OCIO_CONFIG_ENVVAR
The envvar 'OCIO' provides a path to the config file used by Config::CreateFromEnv.
OCIOEXPORT const char * OCIO_DISABLE_ALL_CACHES
rst::
OCIO_SHARED_PTR< GradingRGBCurve > GradingRGBCurveRcPtr
Used by GradingPrimaryTransform.
OCIO_SHARED_PTR< MatrixTransform > MatrixTransformRcPtr
UniformDataType
Types for uniform data.
OCIOEXPORT const char * FixedFunctionStyleToString(FixedFunctionStyle style)
OCIO_SHARED_PTR< Transform > TransformRcPtr
Weighted Yellow Power Norm – NOT IMPLEMENTED YET.
GradingStyle
Styles for grading transforms.
OCIO_SHARED_PTR< const DisplayViewTransform > ConstDisplayViewTransformRcPtr
OCIOEXPORT NegativeStyle NegativeStyleFromString(const char *style)
std::function< std::string(const std::string &)> ComputeHashFunction
Define Compute Hash function signature.
OCIO_SHARED_PTR< const Lut1DTransform > ConstLut1DTransformRcPtr
OCIOEXPORT const char * OCIO_OPTIMIZATION_FLAGS_ENVVAR
OCIO_SHARED_PTR< const SystemMonitors > ConstSystemMonitorsRcPtr
OCIOEXPORT const char * OCIO_CONFIG_DEFAULT_NAME
OCIO_SHARED_PTR< ColorSpaceSet > ColorSpaceSetRcPtr
OCIO_SHARED_PTR< SystemMonitors > SystemMonitorsRcPtr
OCIO_SHARED_PTR< ColorSpaceMenuHelper > ColorSpaceMenuHelperRcPtr
OCIO_SHARED_PTR< const Config > ConstConfigRcPtr
Compose a pair of ops into a single op.
OCIO_SHARED_PTR< const ConfigIOProxy > ConstConfigIOProxyRcPtr
OCIO_SHARED_PTR< RangeTransform > RangeTransformRcPtr
OCIO_SHARED_PTR< GradingToneTransform > GradingToneTransformRcPtr
OCIO_SHARED_PTR< NamedTransform > NamedTransformRcPtr
Load all env. vars (note: may reduce performance)
OCIO_SHARED_PTR< const MatrixTransform > ConstMatrixTransformRcPtr
OCIOEXPORT FixedFunctionStyle FixedFunctionStyleFromString(const char *style)
OCIO_SHARED_PTR< const Look > ConstLookRcPtr
OCIO_SHARED_PTR< const BuiltinTransform > ConstBuiltinTransformRcPtr
the main scene reference space
E/C to be applied to a video space image.
OCIO_SHARED_PTR< DynamicPropertyGradingPrimary > DynamicPropertyGradingPrimaryRcPtr
Used by GradingToneTransform.
OCIO_SHARED_PTR< const GradingRGBCurveTransform > ConstGradingRGBCurveTransformRcPtr
OCIO_SHARED_PTR< const AllocationTransform > ConstAllocationTransformRcPtr
OCIOEXPORT const char * OCIO_ACTIVE_DISPLAYS_ENVVAR
Interface used to access dynamic property GradingPrimary value.
OCIOEXPORT const char * BoolToString(bool val)
OCIO_SHARED_PTR< Config > ConfigRcPtr
OCIOEXPORT const char * OCIO_DISABLE_CACHE_FALLBACK
rst::
OCIO_SHARED_PTR< const FixedFunctionTransform > ConstFixedFunctionTransformRcPtr
E/C to be applied to a log space image.
Rec.2100 surround correction (takes one double for the gamma param)
OCIO_SHARED_PTR< BuiltinTransform > BuiltinTransformRcPtr
OCIO_SHARED_PTR< Context > ContextRcPtr
OCIO_SHARED_PTR< FileTransform > FileTransformRcPtr
OCIO_SHARED_PTR< BuiltinTransformRegistry > BuiltinTransformRegistryRcPtr
OCIO_SHARED_PTR< const GradingPrimaryTransform > ConstGradingPrimaryTransformRcPtr
OCIOEXPORT Interpolation InterpolationFromString(const char *s)
OCIO_SHARED_PTR< ImageDesc > ImageDescRcPtr
OCIOEXPORT RangeStyle RangeStyleFromString(const char *style)
OCIO_SHARED_PTR< const DynamicProperty > ConstDynamicPropertyRcPtr
OCIOEXPORT const char * ROLE_REFERENCE
"reference"
Apply all possible optimizations.
Lut1DHueAdjust
Used by :cpp:classLut1DTransform to control optional hue restoration algorithm.
OCIOEXPORT ExposureContrastStyle ExposureContrastStyleFromString(const char *style)
OCIOEXPORT const char * OCIO_USER_CATEGORIES_ENVVAR
OCIO_SHARED_PTR< const GradingBSplineCurve > ConstGradingBSplineCurveRcPtr
OCIOEXPORT CDLStyle CDLStyleFromString(const char *style)
DirectX Shading Language.
OCIO_SHARED_PTR< LogAffineTransform > LogAffineTransformRcPtr
OCIOEXPORT const char * ROLE_COLOR_PICKING
"color_picking"
OCIOEXPORT int BitDepthToInt(BitDepth bitDepth)
OCIO_SHARED_PTR< GpuShaderDesc > GpuShaderDescRcPtr
FixedFunctionStyle
Enumeration of the :cpp:class:FixedFunctionTransform transform algorithms.
OCIO_SHARED_PTR< GroupTransform > GroupTransformRcPtr
OCIOEXPORT const char * METADATA_OUTPUT_DESCRIPTOR
ACES 0.2 Gamut clamping algorithm – NOT IMPLEMENTED YET.
OCIOEXPORT const char * ROLE_RENDERING
OCIO_SHARED_PTR< const DynamicPropertyGradingTone > ConstDynamicPropertyGradingToneRcPtr
OCIOEXPORT const char * TransformDirectionToString(TransformDirection dir)
OCIOEXPORT TransformDirection GetInverseTransformDirection(TransformDirection dir)
Only load vars in the config's environment section.
OCIO_SHARED_PTR< CDLTransform > CDLTransformRcPtr
Glow function (ACES 0.3/0.7)
OCIO_SHARED_PTR< const GradingToneTransform > ConstGradingToneTransformRcPtr
OCIOEXPORT bool BitDepthIsFloat(BitDepth bitDepth)
OCIO_SHARED_PTR< const ViewingRules > ConstViewingRulesRcPtr
OCIO_SHARED_PTR< GradingRGBCurveTransform > GradingRGBCurveTransformRcPtr
A BSpline curve defined with GradingControlPoint.
OCIO_SHARED_PTR< ColorSpace > ColorSpaceRcPtr
OCIOEXPORT const char * ROLE_COMPOSITING_LOG
"compositing_log"
OCIOEXPORT const char * ROLE_DEFAULT
"default"
OCIO_SHARED_PTR< const GradingRGBCurve > ConstGradingRGBCurveRcPtr
Red modifier (ACES 0.3/0.7)
OpenGL ES Shading Language.
OCIO_SHARED_PTR< const DynamicPropertyDouble > ConstDynamicPropertyDoubleRcPtr
tetrahedral interpolation (Lut3D only)
OCIO_SHARED_PTR< const ColorSpace > ConstColorSpaceRcPtr
CIE XYZ to 1976 u'v' chromaticity coordinates.
Negative values are passed through unchanged.
RGBCurveType
Types for GradingRGBCurve.
Dark to dim surround correction (ACES 1.0)
OCIO_SHARED_PTR< T > DynamicPtrCast(OCIO_SHARED_PTR< U > const &ptr)
OCIO_SHARED_PTR< const GPUProcessor > ConstGPUProcessorRcPtr
OCIOEXPORT const char * BitDepthToString(BitDepth bitDepth)
OCIOEXPORT const char * OCIO_DISABLE_PROCESSOR_CACHES
rst::
The File Rules are a set of filepath to color space mappings that are evaluated from first to last...
OCIO_SHARED_PTR< ViewTransform > ViewTransformRcPtr
Algorithms for Video color spaces.
ExposureContrastStyle
Enumeration of the :cpp:class:ExposureContrastTransform transform algorithms.
OCIO_SHARED_PTR< DynamicProperty > DynamicPropertyRcPtr