Config¶
-
class
PyOpenColorIO.
Config
¶ A config defines all the color spaces to be available at runtime.
The color configuration (Config) is the main object for interacting with this library. It encapsulates all of the information necessary to use customized ColorSpaceTransform and DisplayViewTransform operations.
See the user-guide for more information on selecting, creating, and working with custom color configurations.
For applications interested in using only one color config at a time (this is the vast majority of apps), their API would traditionally get the global configuration and use that, as opposed to creating a new one. This simplifies the use case for plugins and bindings, as it alleviates the need to pass around configuration handles.
An example of an application where this would not be sufficient would be a multi-threaded image proxy server (daemon), which wished to handle multiple show configurations in a single process concurrently. This app would need to keep multiple configurations alive, and to manage them appropriately.
Roughly speaking, a novice user should select a default configuration that most closely approximates the use case (animation, visual effects, etc.), and set the
OCIO
environment variable to point at the root of that configuration.Note
Initialization using environment variables is typically preferable in a multi-app ecosystem, as it allows all applications to be consistently configured.
See developers-usageexamples
-
static
CreateFromEnv
() → PyOpenColorIO.Config¶ Create a configuration using the OCIO environment variable.
If the variable is missing or empty, returns the same result as Config::CreateRaw .
-
static
CreateFromFile
(fileName: str) → PyOpenColorIO.Config¶ Create a configuration using a specific config file.
-
static
CreateFromStream
(str: str) → PyOpenColorIO.Config¶ Create a configuration using a stream.
-
static
CreateRaw
() → PyOpenColorIO.Config¶ Create a fall-back config.
This may be useful to allow client apps to launch in cases when the supplied config path is not loadable.
-
static
GetProcessorFromConfigs
(*args, **kwargs)¶ Overloaded function.
GetProcessorFromConfigs(srcConfig: PyOpenColorIO.Config, srcColorSpaceName: str, dstConfig: PyOpenColorIO.Config, dstColorSpaceName: str) -> PyOpenColorIO.Processor
Get a processor to convert between color spaces in two separate configs.
This relies on both configs having the aces_interchange role (when srcName is scene-referred) or the role cie_xyz_d65_interchange (when srcName is display-referred) defined. An exception is thrown if that is not the case.
GetProcessorFromConfigs(srcContext: PyOpenColorIO.Context, srcConfig: PyOpenColorIO.Config, srcColorSpaceName: str, dstContext: PyOpenColorIO.Context, dstConfig: PyOpenColorIO.Config, dstColorSpaceName: str) -> PyOpenColorIO.Processor
GetProcessorFromConfigs(srcConfig: PyOpenColorIO.Config, srcColorSpaceName: str, srcInterchangeName: str, dstConfig: PyOpenColorIO.Config, dstColorSpaceName: str, dstInterchangeName: str) -> PyOpenColorIO.Processor
The srcInterchangeName and dstInterchangeName must refer to a pair of color spaces in the two configs that are the same. A role name may also be used.
GetProcessorFromConfigs(srcContext: PyOpenColorIO.Context, srcConfig: PyOpenColorIO.Config, srcColorSpaceName: str, srcInterchangeName: str, dstContext: PyOpenColorIO.Context, dstConfig: PyOpenColorIO.Config, dstColorSpaceName: str, dstInterchangeName: str) -> PyOpenColorIO.Processor
-
Config
() → None¶ Create an empty config of the current version.
Note that an empty config will not pass validation since required elements will be missing.
-
str
(self) → str¶
-
addColorSpace
(colorSpace: PyOpenColorIO.ColorSpace) → None¶ Add a color space to the configuration.
Note
If another color space is already present with the same name, this will overwrite it. This stores a copy of the specified color space.
Note
Adding a color space to a Config does not affect any ColorSpaceSet sets that have already been created.
Add a (reference to a) shared view to a display.
The shared view must be part of the config. See Config::addSharedView
This will throw if: - Display or view are null or empty. - Display already has a view (shared or not) with the same name.
-
addDisplayView
(*args, **kwargs)¶ Overloaded function.
addDisplayView(self: PyOpenColorIO.Config, display: str, view: str, colorSpaceName: str, looks: str = ‘’) -> None
For the (display, view) pair, specify which color space and look to use. If a look is not desired, then just pass a null or empty string.
addDisplayView(self: PyOpenColorIO.Config, display: str, view: str, viewTransform: str, displayColorSpaceName: str, looks: str = ‘’, ruleName: str = ‘’, description: str = ‘’) -> None
For the (display, view) pair, specify which color space and look to use. If a look is not desired, then just pass a null or empty string.
-
addEnvironmentVar
(name: str, defaultValue: str) → None¶ Add (or update) an environment variable with a default value. But it removes it if the default value is null.
-
addLook
(look: PyOpenColorIO.Look) → None¶
-
addNamedTransform
(namedTransform: PyOpenColorIO.NamedTransform) → None¶
-
addSearchPath
(path: str) → None¶ Add a single search path to the end of the list.
Paths may be either absolute or relative. Relative paths are relative to the working directory. Forward slashes will be normalized to reverse for Windows. Environment (context) variables may be used in paths.
Will throw if view or colorSpaceName are null or empty.
The following methods only manipulate active displays and views. Active displays and views are defined from an env. variable or from the config file.
Looks is a potentially comma (or colon) delimited list of lookNames, Where +/- prefixes are optionally allowed to denote forward/inverse look specification. (And forward is assumed in the absence of either)
Add shared view (or replace existing one with same name). Shared views are defined at config level and can be referenced by several displays. Either provide a view transform and a display color space or just a color space (and a null view transform). Looks, rule and description are optional, they can be null or empty.
Shared views using a view transform may use the token <USE_DISPLAY_NAME> for the color space (see
OCIO_VIEW_USE_DISPLAY_NAME
). In that case, when the view is referenced in a display, the display color space that is used will be the one matching the display name. In other words, the view will be customized based on the display it is used in. Config::validate will throw if the config does not contain the matching display color space.
-
addViewTransform
(viewTransform: PyOpenColorIO.ViewTransform) → None¶
-
clearColorSpaces
() → None¶ Remove all the color spaces from the configuration.
Note
Removing color spaces from a Config does not affect any ColorSpaceSet sets that have already been created.
-
clearDisplays
() → None¶ Clear all the displays.
-
clearEnvironmentVars
() → None¶
-
clearLooks
() → None¶
-
clearNamedTransforms
() → None¶
-
clearSearchPaths
() → None¶
-
clearViewTransforms
() → None¶
-
filepathOnlyMatchesDefaultRule
(filePath: str) → bool¶ Returns true if the only rule matched by filePath is the default rule. This is a convenience method for applications that want to require the user to manually choose a color space when strictParsing is true and no other rules match.
-
getActiveDisplays
() → str¶
-
getActiveViews
() → str¶
-
getCacheID
(*args, **kwargs)¶ Overloaded function.
getCacheID(self: PyOpenColorIO.Config) -> str
This will produce a hash of the all colorspace definitions, etc. All external references, such as files used in FileTransforms, etc., will be incorporated into the cacheID. While the contents of the files are not read, the file system is queried for relevant information (mtime, inode) so that the config’s cacheID will change when the underlying luts are updated.
If a context is not provided, the current Context will be used.
If a null context is provided, file references will not be taken into account (this is essentially a hash of Config::serialize).
getCacheID(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context) -> str
This will produce a hash of the all colorspace definitions, etc. All external references, such as files used in FileTransforms, etc., will be incorporated into the cacheID. While the contents of the files are not read, the file system is queried for relevant information (mtime, inode) so that the config’s cacheID will change when the underlying luts are updated.
If a context is not provided, the current Context will be used.
If a null context is provided, file references will not be taken into account (this is essentially a hash of Config::serialize).
-
getCanonicalName
(name: str) → str¶ Accepts an alias, role name, named transform name, or color space name and returns the color space name or the named transform name.
-
getColorSpace
(name: str) → PyOpenColorIO.ColorSpace¶ Get the color space from all the color spaces (i.e. active and inactive) and return null if the name is not found.
Note
The fcn accepts either a color space name, role name, or alias. (Color space names take precedence over roles.)
-
getColorSpaceFromFilepath
(filePath: str) → tuple¶ Get the color space of the first rule that matched filePath.
-
getColorSpaceNames
(*args, **kwargs)¶ Overloaded function.
getColorSpaceNames(self: PyOpenColorIO.Config, searchReferenceType: PyOpenColorIO.SearchReferenceSpaceType, visibility: PyOpenColorIO.ColorSpaceVisibility) -> PyOpenColorIO.Config.ColorSpaceNameIterator
getColorSpaceNames(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ActiveColorSpaceNameIterator
-
getColorSpaces
(*args, **kwargs)¶ Overloaded function.
getColorSpaces(self: PyOpenColorIO.Config, category: str) -> PyOpenColorIO.ColorSpaceSet
Get all active color spaces having a specific category in the order they appear in the config file.
Note
If the category is null or empty, the method returns all the active color spaces like Config::getNumColorSpaces and Config::getColorSpaceNameByIndex do.
Note
It’s worth noticing that the method returns a copy of the selected color spaces decoupling the result from the config. Hence, any changes on the config do not affect the existing color space sets, and vice-versa.
getColorSpaces(self: PyOpenColorIO.Config, searchReferenceType: PyOpenColorIO.SearchReferenceSpaceType, visibility: PyOpenColorIO.ColorSpaceVisibility) -> PyOpenColorIO.Config.ColorSpaceIterator
getColorSpaces(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ActiveColorSpaceIterator
-
getCurrentContext
() → PyOpenColorIO.Context¶
-
getDefaultDisplay
() → str¶
-
getDefaultLumaCoefs
() → List[float[3]]¶ Get the default coefficients for computing luma.
Note
There is no “1 size fits all” set of luma coefficients. (The values are typically different for each colorspace, and the application of them may be nonsensical depending on the intensity coding anyways). Thus, the ‘right’ answer is to make these functions on the Config class. However, it’s often useful to have a config-wide default so here it is. We will add the colorspace specific luma call if/when another client is interesting in using it.
-
getDefaultSceneToDisplayViewTransform
() → PyOpenColorIO.ViewTransform¶ This view transform is the one that will be used by default if a ColorSpaceTransform is needed between a scene-referred and display-referred color space. The config author may specify a transform to use via the default_view_transform entry in the config. If that is not present, or does not return a valid view transform from the scene-referred connection space, the fall-back is to use the first valid view transform in the config. Returns a null ConstTransformRcPtr if there isn’t one.
-
getDefaultView
(display: str) → str¶
-
getDefaultViewTransformName
() → str¶ Get or set the default_view_transform string from the config.
Note that if this is not the name of a valid view transform from the scene-referred connection space, it will be ignored.
-
getDescription
() → str¶
-
getDisplayViewColorSpaceName
(display: str, view: str) → str¶ Returns the colorspace attribute of the (display, view) pair. (Note that this may be either a color space or a display color space.)
-
getDisplayViewDescription
(display: str, view: str) → str¶ Returns the description attribute of a (display, view) pair.
-
getDisplayViewLooks
(display: str, view: str) → str¶ Returns the looks attribute of a (display, view) pair.
-
getDisplayViewRule
(display: str, view: str) → str¶ Returns the rule attribute of a (display, view) pair.
-
getDisplayViewTransformName
(display: str, view: str) → str¶ Returns the view_transform attribute of the (display, view) pair. View can be a shared view of the display. If display is null or empty, config shared views are used.
-
getDisplays
() → PyOpenColorIO.Config.DisplayIterator¶
-
getEnvironmentMode
() → PyOpenColorIO.EnvironmentMode¶
-
getEnvironmentVarDefault
(name: str) → str¶
-
getEnvironmentVarNames
() → PyOpenColorIO.Config.EnvironmentVarNameIterator¶
-
getFamilySeparator
() → str¶ Get the family separator.
A single character used to separate the family string into tokens for use in hierarchical menus. Defaults to ‘/’.
-
getFileRules
() → PyOpenColorIO.FileRules¶ Get read-only version of the file rules.
-
getInactiveColorSpaces
() → str¶
-
getLook
(name: str) → PyOpenColorIO.Look¶
-
getLookNames
() → PyOpenColorIO.Config.LookNameIterator¶
-
getLooks
() → PyOpenColorIO.Config.LookIterator¶
-
getMajorVersion
() → int¶ Get the configuration major version.
-
getMinorVersion
() → int¶ Get the configuration minor version.
-
getName
() → str¶ Get/set a name string for the config.
The name string may be used to communicate config update details or similar information to workflows external to OCIO in cases where the config path/filename itself does not provide adequate information.
-
getNamedTransform
(name: str) → PyOpenColorIO.NamedTransform¶
-
getNamedTransformNames
(*args, **kwargs)¶ Overloaded function.
getNamedTransformNames(self: PyOpenColorIO.Config, visibility: PyOpenColorIO.NamedTransformVisibility) -> PyOpenColorIO.Config.NamedTransformNameIterator
getNamedTransformNames(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ActiveNamedTransformNameIterator
-
getNamedTransforms
(*args, **kwargs)¶ Overloaded function.
getNamedTransforms(self: PyOpenColorIO.Config, visibility: PyOpenColorIO.NamedTransformVisibility) -> PyOpenColorIO.Config.NamedTransformIterator
getNamedTransforms(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ActiveNamedTransformIterator
-
getProcessor
(*args, **kwargs)¶ Overloaded function.
getProcessor(self: PyOpenColorIO.Config, srcColorSpace: PyOpenColorIO.ColorSpace, dstColorSpace: PyOpenColorIO.ColorSpace) -> PyOpenColorIO.Processor
Get the processor to apply a ColorSpaceTransform from a source to a destination color space.
getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, srcColorSpace: PyOpenColorIO.ColorSpace, dstColorSpace: PyOpenColorIO.ColorSpace) -> PyOpenColorIO.Processor
getProcessor(self: PyOpenColorIO.Config, srcColorSpaceName: str, dstColorSpaceName: str) -> PyOpenColorIO.Processor
Note
Names can be colorspace name, role name, or a combination of both.
getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, srcColorSpaceName: str, dstColorSpaceName: str) -> PyOpenColorIO.Processor
getProcessor(self: PyOpenColorIO.Config, srcColorSpaceName: str, display: str, view: str, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor
Get the processor to apply a DisplayViewTransform for a display and view. Refer to the Display/View Registration section above for more info on the display and view arguments.
getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, srcColorSpaceName: str, display: str, view: str, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor
getProcessor(self: PyOpenColorIO.Config, transform: PyOpenColorIO.Transform) -> PyOpenColorIO.Processor
Get the processor for the specified transform.
Not often needed, but will allow for the re-use of atomic OCIO functionality (such as to apply an individual LUT file).
getProcessor(self: PyOpenColorIO.Config, transform: PyOpenColorIO.Transform, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor
getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, transform: PyOpenColorIO.Transform, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor
-
getRoleNames
() → PyOpenColorIO.Config.RoleNameIterator¶
-
getRoles
() → PyOpenColorIO.Config.RoleColorSpaceIterator¶
-
getSearchPath
() → str¶
-
getSearchPaths
() → PyOpenColorIO.Config.SearchPathIterator¶
-
getViewTransform
(name: str) → PyOpenColorIO.ViewTransform¶
-
getViewTransformNames
() → PyOpenColorIO.Config.ViewTransformNameIterator¶
-
getViewTransforms
() → PyOpenColorIO.Config.ViewTransformIterator¶
-
getViewingRules
() → PyOpenColorIO.ViewingRules¶ Get read-only version of the viewing rules.
-
getViews
(*args, **kwargs)¶ Overloaded function.
getViews(self: PyOpenColorIO.Config, display: str) -> PyOpenColorIO.Config.ViewIterator
getViews(self: PyOpenColorIO.Config, display: str, colorSpaceName: str) -> PyOpenColorIO.Config.ViewForColorSpaceIterator
-
getWorkingDir
() → str¶
-
hasRole
(role: str) → bool¶ Return true if the role has been defined.
-
isColorSpaceUsed
(name: str) → bool¶ Return true if the color space is used by a transform, a role, or a look.
Note
Name must be the canonical name.
-
isStrictParsingEnabled
() → bool¶
-
loadEnvironment
() → None¶
-
parseColorSpaceFromString
(str: str) → str¶ Given the specified string, get the longest, right-most, colorspace substring that appears. This is now deprecated, please use getColorSpaceFromFilepath.
If strict parsing is enabled, and no color space is found, return an empty string.
If strict parsing is disabled, return ROLE_DEFAULT (if defined).
If the default role is not defined, return an empty string.
-
removeColorSpace
(name: str) → None¶ Remove a color space from the configuration.
Note
It does not throw an exception. Name must be the canonical name. If a role name or alias is provided or if the name is not in the config, nothing is done.
Note
Removing a color space from a Config does not affect any ColorSpaceSet sets that have already been created.
-
removeDisplayView
(display: str, view: str) → None¶ Remove the view and the display if no more views.
It does not remove the associated color space. If the view name is a shared view, it only removes the reference to the view from the display but the shared view, remains in the config.
Will throw if the view does not exist.
Remove a shared view. Will throw if the view does not exist.
-
serialize
(*args, **kwargs)¶ Overloaded function.
serialize(self: PyOpenColorIO.Config, fileName: str) -> None
serialize(self: PyOpenColorIO.Config) -> str
Returns the string representation of the Config in YAML text form.
This is typically stored on disk in a file with the extension .ocio. NB: This does not validate the config. Applications should validate before serializing.
-
setActiveDisplays
(displays: str) → None¶ $OCIO_ACTIVE_DISPLAYS envvar can, at runtime, optionally override the allowed displays. It is a comma or colon delimited list. Active displays that are not in the specified profile will be ignored, and the left-most defined display will be the default.
Comma-delimited list of names to filter and order the active displays.
Note
The setter does not override the envvar. The getter does not take into account the envvar value and thus may not represent what the user is seeing.
-
setActiveViews
(views: str) → None¶ $OCIO_ACTIVE_VIEWS envvar can, at runtime, optionally override the allowed views. It is a comma or colon delimited list. Active views that are not in the specified profile will be ignored, and the left-most defined view will be the default.
Comma-delimited list of names to filter and order the active views.
Note
The setter does not override the envvar. The getter does not take into account the envvar value and thus may not represent what the user is seeing.
-
setDefaultLumaCoefs
(rgb: List[float[3]]) → None¶ These should be normalized (sum to 1.0 exactly).
-
setDefaultViewTransformName
(name: str) → None¶
-
setDescription
(description: str) → None¶
-
setEnvironmentMode
(mode: PyOpenColorIO.EnvironmentMode) → None¶
-
setFamilySeparator
(separator: str) → None¶ Set the family separator.
Succeeds if the characters is null or a valid character from the ASCII table i.e. from value 32 (i.e. space) to 126 (i.e. ‘~’); otherwise, it throws an exception.
-
setFileRules
(fileRules: PyOpenColorIO.FileRules) → None¶ Set file rules.
Note
The argument is cloned.
-
setInactiveColorSpaces
(inactiveColorSpaces: str) → None¶ Set/get a list of inactive color space or named transform names.
Notes: - List can contain color space and/or named transform names. - The inactive spaces are color spaces that should not appear in application menus. - These color spaces will still work in Config::getProcessor calls. - The argument is a comma-delimited string. A null or empty string empties the list. - The environment variable OCIO_INACTIVE_COLORSPACES may also be used to set the inactive color space list. - The env. var. takes precedence over the inactive_colorspaces list in the config file. - Setting the list via the API takes precedence over either the env. var. or the config file list.
-
setMajorVersion
(major: int) → None¶ Set the configuration major version.
Throws if it is not supported. Resets minor to the most recent minor for the given major.
-
setMinorVersion
(minor: int) → None¶ Set the configuration minor version. Throws if it is not supported for the current major.
-
setName
(name: str) → None¶
-
setProcessorCacheFlags
(flags: PyOpenColorIO.ProcessorCacheFlags) → None¶ - Control the caching of processors in the config instance. By default, caching is on.
The flags allow turning caching off entirely or only turning it off if dynamic properties are being used by the processor.
-
setRole
(role: str, colorSpaceName: str) → None¶ Note
Setting the colorSpaceName name to a null string unsets it.
-
setSearchPath
(path: str) → None¶ Set all search paths as a concatenated string, ‘:’ to separate the paths.
See addSearchPath for a more robust and platform-agnostic method of setting the search paths.
-
setStrictParsingEnabled
(enabled: bool) → None¶
-
setVersion
(major: int, minor: int) → None¶ Set the configuration major and minor versions. Throws if version is not supported.
-
setViewingRules
(ViewingRules: PyOpenColorIO.ViewingRules) → None¶ Set viewing rules.
Note
The argument is cloned.
-
setWorkingDir
(dirName: str) → None¶ The working directory defaults to the location of the config file. It is used to convert any relative paths to absolute. If no search paths have been set, the working directory will be used as the fallback search path. No environment (context) variables may be used in the working directory.
-
upgradeToLatestVersion
() → None¶ Allows an older config to be serialized as the current version.
-
validate
() → None¶ Performs a thorough validation for the most common user errors.
This will throw an exception if the config is malformed. The most common error occurs when references are made to colorspaces that do not exist.
-
static
-
class
PyOpenColorIO.Config.
EnvironmentVarNameIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.EnvironmentVarNameIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
SearchPathIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.SearchPathIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
ColorSpaceNameIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.ColorSpaceNameIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
ColorSpaceIterator
¶ -
self
[
arg0: int]
→ PyOpenColorIO.ColorSpace¶
-
iter
(self) → PyOpenColorIO.Config.ColorSpaceIterator¶
-
len
(self) → int¶
-
next
(self) → PyOpenColorIO.ColorSpace¶
-
self
-
class
PyOpenColorIO.Config.
ActiveColorSpaceNameIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.ActiveColorSpaceNameIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
ActiveColorSpaceIterator
¶ -
self
[
arg0: int]
→ PyOpenColorIO.ColorSpace¶
-
iter
(self) → PyOpenColorIO.Config.ActiveColorSpaceIterator¶
-
len
(self) → int¶
-
next
(self) → PyOpenColorIO.ColorSpace¶
-
self
-
class
PyOpenColorIO.Config.
RoleNameIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.RoleNameIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
RoleColorSpaceIterator
¶ -
self
[
arg0: int]
→ tuple¶
-
iter
(self) → PyOpenColorIO.Config.RoleColorSpaceIterator¶
-
len
(self) → int¶
-
next
(self) → tuple¶
-
self
-
class
PyOpenColorIO.Config.
DisplayIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.DisplayIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
ViewIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.ViewIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
ViewForColorSpaceIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.ViewForColorSpaceIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
LookNameIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.LookNameIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
LookIterator
¶ -
self
[
arg0: int]
→ PyOpenColorIO.Look¶
-
iter
(self) → PyOpenColorIO.Config.LookIterator¶
-
len
(self) → int¶
-
next
(self) → PyOpenColorIO.Look¶
-
self
-
class
PyOpenColorIO.Config.
ViewTransformNameIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.ViewTransformNameIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
ViewTransformIterator
¶ -
self
[
arg0: int]
→ PyOpenColorIO.ViewTransform¶
-
iter
(self) → PyOpenColorIO.Config.ViewTransformIterator¶
-
len
(self) → int¶
-
next
(self) → PyOpenColorIO.ViewTransform¶
-
self
-
class
PyOpenColorIO.Config.
NamedTransformNameIterator
¶ -
self
[
arg0: int]
→ str¶
-
iter
(self) → PyOpenColorIO.Config.NamedTransformNameIterator¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
NamedTransformIterator
¶ -
self
[
arg0: int]
→ PyOpenColorIO.NamedTransform¶
-
iter
(self) → PyOpenColorIO.Config.NamedTransformIterator¶
-
len
(self) → int¶
-
next
(self) → PyOpenColorIO.NamedTransform¶
-
self
-
class
PyOpenColorIO.Config.
ActiveNamedTransformNameIterator
¶ -
self
[
arg0: int]
→ str¶
-
len
(self) → int¶
-
next
(self) → str¶
-
self
-
class
PyOpenColorIO.Config.
ActiveNamedTransformIterator
¶ -
self
[
arg0: int]
→ PyOpenColorIO.NamedTransform¶
-
iter
(self) → PyOpenColorIO.Config.ActiveNamedTransformIterator¶
-
len
(self) → int¶
-
next
(self) → PyOpenColorIO.NamedTransform¶
-
self
-
ConstConfigRcPtr
OpenColorIO_v2_1dev
::
GetCurrentConfig
()¶ Get the current configuration.
-
void
OpenColorIO_v2_1dev
::
SetCurrentConfig
(const ConstConfigRcPtr &config)¶ Set the current configuration. This will then store a copy of the specified config.
-
class
OpenColorIO_v2_1dev
::
Config
¶ A config defines all the color spaces to be available at runtime.
The color configuration (Config) is the main object for interacting with this library. It encapsulates all of the information necessary to use customized ColorSpaceTransform and DisplayViewTransform operations.
See the user-guide for more information on selecting, creating, and working with custom color configurations.
For applications interested in using only one color config at a time (this is the vast majority of apps), their API would traditionally get the global configuration and use that, as opposed to creating a new one. This simplifies the use case for plugins and bindings, as it alleviates the need to pass around configuration handles.
An example of an application where this would not be sufficient would be a multi-threaded image proxy server (daemon), which wished to handle multiple show configurations in a single process concurrently. This app would need to keep multiple configurations alive, and to manage them appropriately.
Roughly speaking, a novice user should select a default configuration that most closely approximates the use case (animation, visual effects, etc.), and set the :envvar:
OCIO
environment variable to point at the root of that configuration.See developers-usageexamples
- Note
Initialization using environment variables is typically preferable in a multi-app ecosystem, as it allows all applications to be consistently configured.
Public Functions
-
ConfigRcPtr
createEditableCopy
() const¶
-
unsigned int
getMajorVersion
() const¶ Get the configuration major version.
-
void
setMajorVersion
(unsigned int major)¶ Set the configuration major version.
Throws if it is not supported. Resets minor to the most recent minor for the given major.
-
unsigned int
getMinorVersion
() const¶ Get the configuration minor version.
-
void
setMinorVersion
(unsigned int minor)¶ Set the configuration minor version. Throws if it is not supported for the current major.
-
void
setVersion
(unsigned int major, unsigned int minor)¶ Set the configuration major and minor versions. Throws if version is not supported.
-
void
upgradeToLatestVersion
() noexcept¶ Allows an older config to be serialized as the current version.
-
void
validate
() const¶ Performs a thorough validation for the most common user errors.
This will throw an exception if the config is malformed. The most common error occurs when references are made to colorspaces that do not exist.
-
const char *
getName
() const noexcept¶ Get/set a name string for the config.
The name string may be used to communicate config update details or similar information to workflows external to OCIO in cases where the config path/filename itself does not provide adequate information.
-
void
setName
(const char *name) noexcept¶
-
char
getFamilySeparator
() const¶ Get the family separator.
A single character used to separate the family string into tokens for use in hierarchical menus. Defaults to ‘/’.
-
void
setFamilySeparator
(char separator)¶ Set the family separator.
Succeeds if the characters is null or a valid character from the ASCII table i.e. from value 32 (i.e. space) to 126 (i.e. ‘~’); otherwise, it throws an exception.
-
const char *
getDescription
() const¶
-
void
setDescription
(const char *description)¶
-
void
serialize
(std::ostream &os) const¶ Returns the string representation of the Config in YAML text form.
This is typically stored on disk in a file with the extension .ocio. NB: This does not validate the config. Applications should validate before serializing.
-
const char *
getCacheID
() const¶ This will produce a hash of the all colorspace definitions, etc. All external references, such as files used in FileTransforms, etc., will be incorporated into the cacheID. While the contents of the files are not read, the file system is queried for relevant information (mtime, inode) so that the config’s cacheID will change when the underlying luts are updated.
If a context is not provided, the current Context will be used.
If a null context is provided, file references will not be taken into account (this is essentially a hash of Config::serialize).
-
const char *
getCacheID
(const ConstContextRcPtr &context) const¶
-
ConstContextRcPtr
getCurrentContext
() const¶
-
void
addEnvironmentVar
(const char *name, const char *defaultValue)¶ Add (or update) an environment variable with a default value. But it removes it if the default value is null.
-
int
getNumEnvironmentVars
() const¶
-
const char *
getEnvironmentVarNameByIndex
(int index) const¶
-
const char *
getEnvironmentVarDefault
(const char *name) const¶
-
void
clearEnvironmentVars
()¶
-
void
setEnvironmentMode
(EnvironmentMode mode) noexcept¶
-
EnvironmentMode
getEnvironmentMode
() const noexcept¶
-
void
loadEnvironment
() noexcept¶
-
const char *
getSearchPath
() const¶
-
void
setSearchPath
(const char *path)¶ Set all search paths as a concatenated string, ‘:’ to separate the paths.
See addSearchPath for a more robust and platform-agnostic method of setting the search paths.
-
int
getNumSearchPaths
() const¶
-
const char *
getSearchPath
(int index) const¶ Get a search path from the list.
The paths are in the order they will be searched (that is, highest to lowest priority).
-
void
clearSearchPaths
()¶
-
void
addSearchPath
(const char *path)¶ Add a single search path to the end of the list.
Paths may be either absolute or relative. Relative paths are relative to the working directory. Forward slashes will be normalized to reverse for Windows. Environment (context) variables may be used in paths.
-
const char *
getWorkingDir
() const¶
-
void
setWorkingDir
(const char *dirname)¶ The working directory defaults to the location of the config file. It is used to convert any relative paths to absolute. If no search paths have been set, the working directory will be used as the fallback search path. No environment (context) variables may be used in the working directory.
-
ColorSpaceSetRcPtr
getColorSpaces
(const char *category) const¶ Get all active color spaces having a specific category in the order they appear in the config file.
- Note
If the category is null or empty, the method returns all the active color spaces like Config::getNumColorSpaces and Config::getColorSpaceNameByIndex do.
- Note
It’s worth noticing that the method returns a copy of the selected color spaces decoupling the result from the config. Hence, any changes on the config do not affect the existing color space sets, and vice-versa.
-
int
getNumColorSpaces
(SearchReferenceSpaceType searchReferenceType, ColorSpaceVisibility visibility) const¶ Work on the color spaces selected by the reference color space type and visibility.
-
const char *
getColorSpaceNameByIndex
(SearchReferenceSpaceType searchReferenceType, ColorSpaceVisibility visibility, int index) const¶ Work on the color spaces selected by the reference color space type and visibility (active or inactive).
Return empty for invalid index.
-
int
getNumColorSpaces
() const¶ Work on the active color spaces only.
- Note
Only works from the list of active color spaces.
-
const char *
getColorSpaceNameByIndex
(int index) const¶ Work on the active color spaces only and return null for invalid index.
- Note
Only works from the list of active color spaces.
-
int
getIndexForColorSpace
(const char *name) const¶ Get an index from the active color spaces only and return -1 if the name is not found.
- Note
The fcn accepts either a color space name, role name, or alias. (Color space names take precedence over roles.)
-
ConstColorSpaceRcPtr
getColorSpace
(const char *name) const¶ Get the color space from all the color spaces (i.e. active and inactive) and return null if the name is not found.
- Note
The fcn accepts either a color space name, role name, or alias. (Color space names take precedence over roles.)
-
const char *
getCanonicalName
(const char *name) const¶ Accepts an alias, role name, named transform name, or color space name and returns the color space name or the named transform name.
-
void
addColorSpace
(const ConstColorSpaceRcPtr &cs)¶ Add a color space to the configuration.
- Note
If another color space is already present with the same name, this will overwrite it. This stores a copy of the specified color space.
- Note
Adding a color space to a Config does not affect any ColorSpaceSet sets that have already been created.
-
void
removeColorSpace
(const char *name)¶ Remove a color space from the configuration.
- Note
It does not throw an exception. Name must be the canonical name. If a role name or alias is provided or if the name is not in the config, nothing is done.
- Note
Removing a color space from a Config does not affect any ColorSpaceSet sets that have already been created.
-
bool
isColorSpaceUsed
(const char *name) const noexcept¶ Return true if the color space is used by a transform, a role, or a look.
- Note
Name must be the canonical name.
-
void
clearColorSpaces
()¶ Remove all the color spaces from the configuration.
- Note
Removing color spaces from a Config does not affect any ColorSpaceSet sets that have already been created.
-
void
setInactiveColorSpaces
(const char *inactiveColorSpaces)¶ Set/get a list of inactive color space or named transform names.
Notes:
List can contain color space and/or named transform names.
The inactive spaces are color spaces that should not appear in application menus.
These color spaces will still work in Config::getProcessor calls.
The argument is a comma-delimited string. A null or empty string empties the list.
The environment variable OCIO_INACTIVE_COLORSPACES may also be used to set the inactive color space list.
The env. var. takes precedence over the inactive_colorspaces list in the config file.
Setting the list via the API takes precedence over either the env. var. or the config file list.
-
const char *
getInactiveColorSpaces
() const¶
-
void
setRole
(const char *role, const char *colorSpaceName)¶ - Note
Setting the
colorSpaceName
name to a null string unsets it.
-
int
getNumRoles
() const¶
-
bool
hasRole
(const char *role) const¶ Return true if the role has been defined.
-
const char *
getRoleName
(int index) const¶ Get the role name at index, this will return values like ‘scene_linear’, ‘compositing_log’.
Return empty string if index is out of range.
-
const char *
getRoleColorSpace
(int index) const¶ Get the role color space at index.
Return empty string if index is out of range.
Will throw if view or colorSpaceName are null or empty.
The following methods only manipulate active displays and views. Active displays and views are defined from an env. variable or from the config file.
Looks is a potentially comma (or colon) delimited list of lookNames, Where +/- prefixes are optionally allowed to denote forward/inverse look specification. (And forward is assumed in the absence of either)
Add shared view (or replace existing one with same name). Shared views are defined at config level and can be referenced by several displays. Either provide a view transform and a display color space or just a color space (and a null view transform). Looks, rule and description are optional, they can be null or empty.
Shared views using a view transform may use the token <USE_DISPLAY_NAME> for the color space (see :c:var:
OCIO_VIEW_USE_DISPLAY_NAME
). In that case, when the view is referenced in a display, the display color space that is used will be the one matching the display name. In other words, the view will be customized based on the display it is used in. Config::validate will throw if the config does not contain the matching display color space.
Remove a shared view. Will throw if the view does not exist.
-
const char *
getDefaultDisplay
() const¶
-
int
getNumDisplays
() const¶
-
const char *
getDisplay
(int index) const¶ Will return “” if the index is invalid.
-
const char *
getDefaultView
(const char *display) const¶
-
int
getNumViews
(const char *display) const¶ Return the number of views attached to the display including the number of shared views if any. Return 0 if display does not exist.
-
const char *
getView
(const char *display, int index) const¶
-
int
getNumViews
(const char *display, const char *colorspaceName) const¶ If the config has ViewingRules, get the number of active Views for this colorspace. (If there are no rules, it returns all of them.)
-
const char *
getView
(const char *display, const char *colorspaceName, int index) const¶
-
const char *
getDisplayViewTransformName
(const char *display, const char *view) const¶ Returns the view_transform attribute of the (display, view) pair. View can be a shared view of the display. If display is null or empty, config shared views are used.
-
const char *
getDisplayViewColorSpaceName
(const char *display, const char *view) const¶ Returns the colorspace attribute of the (display, view) pair. (Note that this may be either a color space or a display color space.)
-
const char *
getDisplayViewLooks
(const char *display, const char *view) const¶ Returns the looks attribute of a (display, view) pair.
-
const char *
getDisplayViewRule
(const char *display, const char *view) const noexcept¶ Returns the rule attribute of a (display, view) pair.
-
const char *
getDisplayViewDescription
(const char *display, const char *view) const noexcept¶ Returns the description attribute of a (display, view) pair.
-
void
addDisplayView
(const char *display, const char *view, const char *colorSpaceName, const char *looks)¶ For the (display, view) pair, specify which color space and look to use. If a look is not desired, then just pass a null or empty string.
-
void
addDisplayView
(const char *display, const char *view, const char *viewTransformName, const char *colorSpaceName, const char *looks, const char *ruleName, const char *description)¶ For the (display, view) pair, specify the color space or alternatively specify the view transform and display color space. The looks, viewing rule, and description are optional. Pass a null or empty string for any optional arguments. If the view already exists, it is replaced.
Will throw if:
Display, view or colorSpace are null or empty.
Display already has a shared view with the same name.
Add a (reference to a) shared view to a display.
The shared view must be part of the config. See Config::addSharedView
This will throw if:
Display or view are null or empty.
Display already has a view (shared or not) with the same name.
-
void
removeDisplayView
(const char *display, const char *view)¶ Remove the view and the display if no more views.
It does not remove the associated color space. If the view name is a shared view, it only removes the reference to the view from the display but the shared view, remains in the config.
Will throw if the view does not exist.
-
void
clearDisplays
()¶ Clear all the displays.
-
void
addVirtualDisplayView
(const char *view, const char *viewTransformName, const char *colorSpaceName, const char *looks, const char *ruleName, const char *description)¶
-
int
getVirtualDisplayNumViews
(ViewType type) const noexcept¶ Get the number of views associated to the virtual display.
-
const char *
getVirtualDisplayView
(ViewType type, int index) const noexcept¶ Get the view name at a specific index.
-
const char *
getVirtualDisplayViewTransformName
(const char *view) const noexcept¶
-
const char *
getVirtualDisplayViewColorSpaceName
(const char *view) const noexcept¶
-
const char *
getVirtualDisplayViewLooks
(const char *view) const noexcept¶
-
const char *
getVirtualDisplayViewRule
(const char *view) const noexcept¶
-
const char *
getVirtualDisplayViewDescription
(const char *view) const noexcept¶
-
void
removeVirtualDisplayView
(const char *view) noexcept¶ Remove the view from the virtual display.
-
void
clearVirtualDisplay
() noexcept¶ Clear the virtual display.
-
int
instantiateDisplayFromMonitorName
(const char *monitorName)¶ Instantiate a new display from a virtual display, using the monitor name.
This method uses the virtual display to create an actual display for the given monitorName. The new display will receive the views from the virtual display.
After the ICC profile is read, a display name will be created by combining the description text from the profile with the monitorName obtained from the OS. Use the SystemMonitors class to obtain the list of monitorName strings for the displays connected to the computer.
A new display color space will also be created using the display name. It will have a from_display_reference transform that is a FileTransform pointing to the ICC profile.
Any instantiated display color spaces for a virtual display are intended to be temporary (i.e. last as long as the current session). By default, they are not saved when writing a config file. If there is a need to make it a permanent color space, it may be desirable to copy the ICC profile somewhere under the config search_path.
Will throw if the config does not have a virtual display or if the monitorName does not exist.
If there is already a display or a display color space with the name monitorName, it will be replaced/updated.
Returns the index of the display.
-
int
instantiateDisplayFromICCProfile
(const char *ICCProfileFilepath)¶ Instantiate a new display from a virtual display, using an ICC profile.
On platforms such as Linux, where the SystemMonitors class is not able to obtain a list of ICC profiles from the OS, this method may be used to manually specify a path to an ICC profile.
Will throw if the virtual display definition is missing from the config.
Returns the index of the display.
-
void
setActiveDisplays
(const char *displays)¶ $OCIO_ACTIVE_DISPLAYS envvar can, at runtime, optionally override the allowed displays. It is a comma or colon delimited list. Active displays that are not in the specified profile will be ignored, and the left-most defined display will be the default.
Comma-delimited list of names to filter and order the active displays.
- Note
The setter does not override the envvar. The getter does not take into account the envvar value and thus may not represent what the user is seeing.
-
const char *
getActiveDisplays
() const¶
-
void
setActiveViews
(const char *views)¶ $OCIO_ACTIVE_VIEWS envvar can, at runtime, optionally override the allowed views. It is a comma or colon delimited list. Active views that are not in the specified profile will be ignored, and the left-most defined view will be the default.
Comma-delimited list of names to filter and order the active views.
- Note
The setter does not override the envvar. The getter does not take into account the envvar value and thus may not represent what the user is seeing.
-
const char *
getActiveViews
() const¶
-
int
getNumDisplaysAll
() const noexcept¶ Get all displays in the config, ignoring the active_displays list.
-
const char *
getDisplayAll
(int index) const noexcept¶
-
int
getDisplayAllByName
(const char*) const noexcept¶
-
bool
isDisplayTemporary
(int index) const noexcept¶ Will be true for a display that was instantiated from a virtual display. These displays are intended to be temporary (i.e. for the current session) and are not saved to a config file.
-
int
getNumViews
(ViewType type, const char *display) const¶ Get either the shared or display-defined views for a display. The active_views list is ignored. Passing a null or empty display (with type=VIEW_SHARED) returns the contents of the shared_views section of the config. Return 0 if display does not exist.
-
ConstViewingRulesRcPtr
getViewingRules
() const noexcept¶ Get read-only version of the viewing rules.
-
void
setViewingRules
(ConstViewingRulesRcPtr viewingRules)¶ Set viewing rules.
- Note
The argument is cloned.
-
void
getDefaultLumaCoefs
(double *rgb) const¶ Get the default coefficients for computing luma.
- Note
There is no “1 size fits all” set of luma coefficients. (The values are typically different for each colorspace, and the application of them may be nonsensical depending on the intensity coding anyways). Thus, the ‘right’ answer is to make these functions on the Config class. However, it’s often useful to have a config-wide default so here it is. We will add the colorspace specific luma call if/when another client is interesting in using it.
-
void
setDefaultLumaCoefs
(const double *rgb)¶ These should be normalized (sum to 1.0 exactly).
-
ConstLookRcPtr
getLook
(const char *name) const¶
-
int
getNumLooks
() const¶
-
const char *
getLookNameByIndex
(int index) const¶
-
void
addLook
(const ConstLookRcPtr &look)¶
-
void
clearLooks
()¶
-
int
getNumViewTransforms
() const noexcept¶
-
ConstViewTransformRcPtr
getViewTransform
(const char *name) const noexcept¶
-
const char *
getViewTransformNameByIndex
(int i) const noexcept¶
-
void
addViewTransform
(const ConstViewTransformRcPtr &viewTransform)¶
-
ConstViewTransformRcPtr
getDefaultSceneToDisplayViewTransform
() const¶ This view transform is the one that will be used by default if a ColorSpaceTransform is needed between a scene-referred and display-referred color space. The config author may specify a transform to use via the default_view_transform entry in the config. If that is not present, or does not return a valid view transform from the scene-referred connection space, the fall-back is to use the first valid view transform in the config. Returns a null ConstTransformRcPtr if there isn’t one.
-
const char *
getDefaultViewTransformName
() const noexcept¶ Get or set the default_view_transform string from the config.
Note that if this is not the name of a valid view transform from the scene-referred connection space, it will be ignored.
-
void
setDefaultViewTransformName
(const char *defaultName) noexcept¶
-
void
clearViewTransforms
()¶
-
int
getNumNamedTransforms
(NamedTransformVisibility visibility) const noexcept¶ Work on the named transforms selected by visibility.
-
const char *
getNamedTransformNameByIndex
(NamedTransformVisibility visibility, int index) const noexcept¶ Work on the named transforms selected by visibility (active or inactive).
Return an empty string for invalid index.
-
int
getNumNamedTransforms
() const noexcept¶ Work on the active named transforms only.
-
const char *
getNamedTransformNameByIndex
(int index) const noexcept¶ Work on the active named transforms only and return an empty string for invalid index.
-
int
getIndexForNamedTransform
(const char *name) const noexcept¶ Get an index from the active named transforms only and return -1 if the name is not found.
-
ConstNamedTransformRcPtr
getNamedTransform
(const char *name) const noexcept¶ Get the named transform from all the named transforms (i.e. active and inactive) and return null if the name is not found.
-
void
addNamedTransform
(const ConstNamedTransformRcPtr &namedTransform)¶ Add or replace named transform.
- Note
Throws if namedTransform is null, name is missing, or no transform is set. Also throws if the name or the aliases conflict with names or aliases already in the config.
-
void
clearNamedTransforms
()¶ Clear all named transforms.
-
ConstFileRulesRcPtr
getFileRules
() const noexcept¶ Get read-only version of the file rules.
-
void
setFileRules
(ConstFileRulesRcPtr fileRules)¶ Set file rules.
- Note
The argument is cloned.
-
const char *
getColorSpaceFromFilepath
(const char *filePath) const¶ Get the color space of the first rule that matched filePath.
-
const char *
getColorSpaceFromFilepath
(const char *filePath, size_t &ruleIndex) const¶ Most applications will use the preceding method, but this method may be used for applications that want to know which was the highest priority rule to match filePath. FileRules::getNumCustomKeys and custom keys methods may then be used to get additional information about the matching rule.
-
bool
filepathOnlyMatchesDefaultRule
(const char *filePath) const¶ Returns true if the only rule matched by filePath is the default rule. This is a convenience method for applications that want to require the user to manually choose a color space when strictParsing is true and no other rules match.
-
const char *
parseColorSpaceFromString
(const char *str) const¶ Given the specified string, get the longest, right-most, colorspace substring that appears. This is now deprecated, please use getColorSpaceFromFilepath.
If strict parsing is enabled, and no color space is found, return an empty string.
If strict parsing is disabled, return ROLE_DEFAULT (if defined).
If the default role is not defined, return an empty string.
-
bool
isStrictParsingEnabled
() const¶
-
void
setStrictParsingEnabled
(bool enabled)¶
-
ConstProcessorRcPtr
getProcessor
(const ConstContextRcPtr &context, const ConstColorSpaceRcPtr &srcColorSpace, const ConstColorSpaceRcPtr &dstColorSpace) const¶ Get the processor to apply a ColorSpaceTransform from a source to a destination color space.
-
ConstProcessorRcPtr
getProcessor
(const ConstColorSpaceRcPtr &srcColorSpace, const ConstColorSpaceRcPtr &dstColorSpace) const¶
-
ConstProcessorRcPtr
getProcessor
(const char *srcColorSpaceName, const char *dstColorSpaceName) const¶ - Note
Names can be colorspace name, role name, or a combination of both.
-
ConstProcessorRcPtr
getProcessor
(const ConstContextRcPtr &context, const char *srcColorSpaceName, const char *dstColorSpaceName) const¶
-
ConstProcessorRcPtr
getProcessor
(const char *srcColorSpaceName, const char *display, const char *view, TransformDirection direction) const¶ Get the processor to apply a DisplayViewTransform for a display and view. Refer to the Display/View Registration section above for more info on the display and view arguments.
-
ConstProcessorRcPtr
getProcessor
(const ConstContextRcPtr &context, const char *srcColorSpaceName, const char *display, const char *view, TransformDirection direction) const¶
-
ConstProcessorRcPtr
getProcessor
(const ConstTransformRcPtr &transform) const¶ Get the processor for the specified transform.
Not often needed, but will allow for the re-use of atomic OCIO functionality (such as to apply an individual LUT file).
-
ConstProcessorRcPtr
getProcessor
(const ConstTransformRcPtr &transform, TransformDirection direction) const¶
-
ConstProcessorRcPtr
getProcessor
(const ConstContextRcPtr &context, const ConstTransformRcPtr &transform, TransformDirection direction) const¶
-
~Config
()¶ Do not use (needed only for pybind11).
-
void
setProcessorCacheFlags
(ProcessorCacheFlags flags) noexcept¶ Control the caching of processors in the config instance. By default, caching is on. The flags allow turning caching off entirely or only turning it off if dynamic properties are being used by the processor.
Public Static Functions
-
static ConfigRcPtr
Create
()¶ Create an empty config of the current version.
Note that an empty config will not pass validation since required elements will be missing.
-
static ConstConfigRcPtr
CreateRaw
()¶ Create a fall-back config.
This may be useful to allow client apps to launch in cases when the supplied config path is not loadable.
-
static ConstConfigRcPtr
CreateFromEnv
()¶ Create a configuration using the OCIO environment variable.
If the variable is missing or empty, returns the same result as Config::CreateRaw .
-
static ConstConfigRcPtr
CreateFromFile
(const char *filename)¶ Create a configuration using a specific config file.
-
static ConstConfigRcPtr
CreateFromStream
(std::istream &istream)¶ Create a configuration using a stream.
-
static char
GetDefaultFamilySeparator
() noexcept¶ Get the default family separator i.e. ‘/’ .
-
static ConstProcessorRcPtr
GetProcessorFromConfigs
(const ConstConfigRcPtr &srcConfig, const char *srcColorSpaceName, const ConstConfigRcPtr &dstConfig, const char *dstColorSpaceName)¶ Get a processor to convert between color spaces in two separate configs.
This relies on both configs having the aces_interchange role (when srcName is scene-referred) or the role cie_xyz_d65_interchange (when srcName is display-referred) defined. An exception is thrown if that is not the case.
-
static ConstProcessorRcPtr
GetProcessorFromConfigs
(const ConstContextRcPtr &srcContext, const ConstConfigRcPtr &srcConfig, const char *srcColorSpaceName, const ConstContextRcPtr &dstContext, const ConstConfigRcPtr &dstConfig, const char *dstColorSpaceName)¶
-
static ConstProcessorRcPtr
GetProcessorFromConfigs
(const ConstConfigRcPtr &srcConfig, const char *srcColorSpaceName, const char *srcInterchangeName, const ConstConfigRcPtr &dstConfig, const char *dstColorSpaceName, const char *dstInterchangeName)¶ The srcInterchangeName and dstInterchangeName must refer to a pair of color spaces in the two configs that are the same. A role name may also be used.
-
static ConstProcessorRcPtr
GetProcessorFromConfigs
(const ConstContextRcPtr &srcContext, const ConstConfigRcPtr &srcConfig, const char *srcColorSpaceName, const char *srcInterchangeName, const ConstContextRcPtr &dstContext, const ConstConfigRcPtr &dstConfig, const char *dstColorSpaceName, const char *dstInterchangeName)¶
Constants: Roles, Shared View