..
  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:: Config
   :module: PyOpenColorIO

   A config defines all the color spaces to be available at runtime.

   The color configuration (:ref:`Config`) is the main object for interacting with this library. It encapsulates all of the information necessary to use customized :ref:`ColorSpaceTransform` and :ref:`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.

   .. 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


   .. py:method:: Config.CreateFromBuiltinConfig(arg0: str) -> PyOpenColorIO.Config
      :module: PyOpenColorIO
      :staticmethod:

      Create a configuration using an OCIO built-in config.

      :param configName: Built-in config name.

      The available configNames are: "cg-config-v0.1.0_aces-v1.3_ocio-v2.1.1"-- ACES CG config, basic color spaces for computer graphics apps. More information about these configs is available at: https://github.com/AcademySoftwareFoundation/OpenColorIO-Config-ACES

      Information about the available configs is available from the :ref:`BuiltinConfigRegistry`.

      :exception :ref:`Exception`: If the configName is not recognized.

      :return: One of the configs built into the OCIO library.


   .. py:method:: Config.CreateFromConfigIOProxy(arg0: OpenColorIO_v2_2dev::ConfigIOProxy) -> PyOpenColorIO.Config
      :module: PyOpenColorIO
      :staticmethod:

      Create a config from the supplied :ref:`ConfigIOProxy` object. This allows the calling program to directly provide the config and associated LUTs rather than reading them from the standard file system.

      See the :ref:`ConfigIOProxy` class documentation for more info.

      :param ciop: :ref:`ConfigIOProxy` object providing access to the config's files.

      :exception :ref:`Exception`: If the config may not be read from the proxy, or does not parse.

      :return: The :ref:`Config` object.


   .. py:method:: Config.CreateFromEnv() -> PyOpenColorIO.Config
      :module: PyOpenColorIO
      :staticmethod:

      Create a configuration using the OCIO environment variable.

      Also supports the OCIO URI format for Built-in configs and supports archived configs. See :ref:`Config::CreateFromFile`.

      If the variable is missing or empty, returns the same result as :ref:`Config::CreateRaw`. :return: The :ref:`Config` object.


   .. py:method:: Config.CreateFromFile(fileName: str) -> PyOpenColorIO.Config
      :module: PyOpenColorIO
      :staticmethod:

      Create a configuration using a specific config file.

      Also supports the following OCIO URI format for Built-in configs: "ocio://default" - Default Built-in config. "ocio://<CONFIG NAME>" - A specific Built-in config. For the list of available <CONFIG NAME> strings, see :ref:`Config::CreateFromBuiltinConfig`.

      Also supports archived configs (.ocioz files).

      :exception :ref:`Exception`: If the file may not be read or does not parse.

      :return: The :ref:`Config` object.


   .. py:method:: Config.CreateFromStream(str: str) -> PyOpenColorIO.Config
      :module: PyOpenColorIO
      :staticmethod:

      Create a configuration using a stream.

      Note that CreateFromStream does not set the working directory so the caller would need to set that separately in order to resolve FileTransforms. This function is typically only used for self-contained configs (no LUTs).

      Configs created from CreateFromStream can not be archived unless the working directory is set and contains any necessary LUT files.

      :param istream: Stream to the config.

      :exception :ref:`Exception`: If the stream does not parse.

      :return: The :ref:`Config` object.


   .. py:method:: Config.CreateRaw() -> PyOpenColorIO.Config
      :module: PyOpenColorIO
      :staticmethod:

      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. :return: The :ref:`Config` object.


   .. py:class:: Config.DisplayAllIterator
      :module: PyOpenColorIO


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


   .. py:method:: Config.GetProcessorFromConfigs(*args, **kwargs)
      :module: PyOpenColorIO
      :staticmethod:

      Overloaded function.

      1. 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.

      2. GetProcessorFromConfigs(srcContext: PyOpenColorIO.Context, srcConfig: PyOpenColorIO.Config, srcColorSpaceName: str, dstContext: PyOpenColorIO.Context, dstConfig: PyOpenColorIO.Config, dstColorSpaceName: str) -> PyOpenColorIO.Processor

      3. 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.

      4. GetProcessorFromConfigs(srcContext: PyOpenColorIO.Context, srcConfig: PyOpenColorIO.Config, srcColorSpaceName: str, srcInterchangeName: str, dstContext: PyOpenColorIO.Context, dstConfig: PyOpenColorIO.Config, dstColorSpaceName: str, dstInterchangeName: str) -> PyOpenColorIO.Processor


   .. py:class:: Config.ViewForViewTypeIterator
      :module: PyOpenColorIO


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


   .. py:class:: Config.VirtualViewIterator
      :module: PyOpenColorIO


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


   .. py:method:: Config.__init__(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO

      Create an empty config of the current version.

      Note that an empty config will not pass validation since required elements will be missing. :return: The :ref:`Config` object.


   .. py:method:: Config.__str__(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.addColorSpace(self: PyOpenColorIO.Config, colorSpace: PyOpenColorIO.ColorSpace) -> None
      :module: PyOpenColorIO

      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 :ref:`Config` does not affect any :ref:`ColorSpaceSet` sets that have already been created.


   .. py:method:: Config.addDisplaySharedView(self: PyOpenColorIO.Config, display: str, view: str) -> None
      :module: PyOpenColorIO

      Add a (reference to a) shared view to a display.

      The shared view must be part of the config. See :ref:`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.


   .. py:method:: Config.addDisplayView(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. 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.

      2. 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.


   .. py:method:: Config.addEnvironmentVar(self: PyOpenColorIO.Config, name: str, defaultValue: str) -> None
      :module: PyOpenColorIO

      Add (or update) an environment variable with a default value. But it removes it if the default value is null.


   .. py:method:: Config.addLook(self: PyOpenColorIO.Config, look: PyOpenColorIO.Look) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.addNamedTransform(self: PyOpenColorIO.Config, namedTransform: PyOpenColorIO.NamedTransform) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.addSearchPath(self: PyOpenColorIO.Config, path: str) -> None
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.addSharedView(self: PyOpenColorIO.Config, view: str, viewTransformName: str, colorSpaceName: str, looks: str = '', ruleName: str = '', description: str = '') -> None
      :module: PyOpenColorIO

      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. :ref:`Config::validate` will throw if the config does not contain the matching display color space.


   .. py:method:: Config.addViewTransform(self: PyOpenColorIO.Config, viewTransform: PyOpenColorIO.ViewTransform) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.addVirtualDisplaySharedView(self: PyOpenColorIO.Config, sharedView: str) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.addVirtualDisplayView(self: PyOpenColorIO.Config, view: str, viewTransformName: str, colorSpaceName: str, looks: str = '', ruleName: str = '', description: str = '') -> None
      :module: PyOpenColorIO


   .. py:method:: Config.archive(self: PyOpenColorIO.Config, arg0: str) -> None
      :module: PyOpenColorIO

      Archive the config and its LUTs into the specified output stream.

      The config is archived by serializing the :ref:`Config` object into a file named "config.ocio" and then walking through the current working directory and any sub-directories. Any files that have an extension matching a supported LUT file format are added to the archive. Any files that do not have an extension (or have some unsupported LUT extension, including .ocio), will not be added to the archive. To reiterate, it is the in-memory :ref:`Config` object that is archived, and not any .ocio file in the current working directory. The directory structure relative to the working directory is preserved. No files outside the working directory are archived so that if it is later expanded, no files will be created outside the working dir.

      The reason the archive is created using all supported LUT file extensions rather than by trying to resolve all the FileTransforms in the :ref:`Config` to specific files is because of the goal to allow context variables to continue to work.

      If a :ref:`Config` is created with CreateFromStream, CreateFromFile with an OCIOZ archive, or CreateFromConfigIOProxy, it cannot be archived unless the working directory is manually set to a directory that contains any necessary LUT files.

      The provided output stream must be closed by the caller, if necessary (e.g., an ofstream).

      :param ostream: The output stream to write to.


   .. py:method:: Config.clearColorSpaces(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO

      Remove all the color spaces from the configuration.

      .. note::
         Removing color spaces from a :ref:`Config` does not affect any :ref:`ColorSpaceSet` sets that have already been created.


   .. py:method:: Config.clearDisplays(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO

      Clear all the displays.


   .. py:method:: Config.clearEnvironmentVars(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.clearLooks(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.clearNamedTransforms(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.clearSearchPaths(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.clearViewTransforms(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.clearVirtualDisplay(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO

      Clear the virtual display.


   .. py:method:: Config.filepathOnlyMatchesDefaultRule(self: PyOpenColorIO.Config, filePath: str) -> bool
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.getActiveDisplays(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getActiveViews(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getCacheID(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. 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 :ref:`Context` will be used.

      If a null context is provided, file references will not be taken into account (this is essentially a hash of :ref:`Config::serialize`).

      2. 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 :ref:`Context` will be used.

      If a null context is provided, file references will not be taken into account (this is essentially a hash of :ref:`Config::serialize`).


   .. py:method:: Config.getCanonicalName(self: PyOpenColorIO.Config, name: str) -> str
      :module: PyOpenColorIO

      Accepts an alias, role name, named transform name, or color space name and returns the color space name or the named transform name.


   .. py:method:: Config.getColorSpace(self: PyOpenColorIO.Config, name: str) -> PyOpenColorIO.ColorSpace
      :module: PyOpenColorIO

      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.)


   .. py:method:: Config.getColorSpaceFromFilepath(self: PyOpenColorIO.Config, filePath: str) -> tuple
      :module: PyOpenColorIO

      Get the color space of the first rule that matched filePath. (For v1 configs, this is equivalent to calling parseColorSpaceFromString with strictparsing set to false.)


   .. py:method:: Config.getColorSpaceNames(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. getColorSpaceNames(self: PyOpenColorIO.Config, searchReferenceType: PyOpenColorIO.SearchReferenceSpaceType, visibility: PyOpenColorIO.ColorSpaceVisibility) -> PyOpenColorIO.Config.ColorSpaceNameIterator

      2. getColorSpaceNames(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ActiveColorSpaceNameIterator


   .. py:method:: Config.getColorSpaces(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. 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 :ref:`Config::getNumColorSpaces` and :ref:`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.

      2. getColorSpaces(self: PyOpenColorIO.Config, searchReferenceType: PyOpenColorIO.SearchReferenceSpaceType, visibility: PyOpenColorIO.ColorSpaceVisibility) -> PyOpenColorIO.Config.ColorSpaceIterator

      3. getColorSpaces(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ActiveColorSpaceIterator


   .. py:method:: Config.getCurrentContext(self: PyOpenColorIO.Config) -> PyOpenColorIO.Context
      :module: PyOpenColorIO


   .. py:method:: Config.getDefaultDisplay(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getDefaultLumaCoefs(self: PyOpenColorIO.Config) -> List[float[3]]
      :module: PyOpenColorIO

      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 :ref:`ColorSpace` 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.


   .. py:method:: Config.getDefaultSceneToDisplayViewTransform(self: PyOpenColorIO.Config) -> PyOpenColorIO.ViewTransform
      :module: PyOpenColorIO

      This view transform is the one that will be used by default if a :ref:`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.


   .. py:method:: Config.getDefaultView(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. getDefaultView(self: PyOpenColorIO.Config, display: str) -> str

      2. getDefaultView(self: PyOpenColorIO.Config, display: str, colorSpacename: str) -> str


   .. py:method:: Config.getDefaultViewTransformName(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.getDescription(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getDisplayViewColorSpaceName(self: PyOpenColorIO.Config, display: str, view: str) -> str
      :module: PyOpenColorIO

      Returns the colorspace attribute of the (display, view) pair. (Note that this may be either a color space or a display color space.)


   .. py:method:: Config.getDisplayViewDescription(self: PyOpenColorIO.Config, display: str, view: str) -> str
      :module: PyOpenColorIO

      Returns the description attribute of a (display, view) pair.


   .. py:method:: Config.getDisplayViewLooks(self: PyOpenColorIO.Config, display: str, view: str) -> str
      :module: PyOpenColorIO

      Returns the looks attribute of a (display, view) pair.


   .. py:method:: Config.getDisplayViewRule(self: PyOpenColorIO.Config, display: str, view: str) -> str
      :module: PyOpenColorIO

      Returns the rule attribute of a (display, view) pair.


   .. py:method:: Config.getDisplayViewTransformName(self: PyOpenColorIO.Config, display: str, view: str) -> str
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.getDisplays(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.DisplayIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getDisplaysAll(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.DisplayAllIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getEnvironmentMode(self: PyOpenColorIO.Config) -> PyOpenColorIO.EnvironmentMode
      :module: PyOpenColorIO


   .. py:method:: Config.getEnvironmentVarDefault(self: PyOpenColorIO.Config, name: str) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getEnvironmentVarNames(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.EnvironmentVarNameIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getFamilySeparator(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO

      Get the family separator.

      A single character used to separate the family string into tokens for use in hierarchical menus. Defaults to '/'.


   .. py:method:: Config.getFileRules(self: PyOpenColorIO.Config) -> PyOpenColorIO.FileRules
      :module: PyOpenColorIO

      Get read-only version of the file rules.


   .. py:method:: Config.getInactiveColorSpaces(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getLook(self: PyOpenColorIO.Config, name: str) -> PyOpenColorIO.Look
      :module: PyOpenColorIO


   .. py:method:: Config.getLookNames(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.LookNameIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getLooks(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.LookIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getMajorVersion(self: PyOpenColorIO.Config) -> int
      :module: PyOpenColorIO

      Get the configuration major version.


   .. py:method:: Config.getMinorVersion(self: PyOpenColorIO.Config) -> int
      :module: PyOpenColorIO

      Get the configuration minor version.


   .. py:method:: Config.getName(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.getNamedTransform(self: PyOpenColorIO.Config, name: str) -> PyOpenColorIO.NamedTransform
      :module: PyOpenColorIO


   .. py:method:: Config.getNamedTransformNames(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. getNamedTransformNames(self: PyOpenColorIO.Config, visibility: PyOpenColorIO.NamedTransformVisibility) -> PyOpenColorIO.Config.NamedTransformNameIterator

      2. getNamedTransformNames(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ActiveNamedTransformNameIterator


   .. py:method:: Config.getNamedTransforms(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. getNamedTransforms(self: PyOpenColorIO.Config, visibility: PyOpenColorIO.NamedTransformVisibility) -> PyOpenColorIO.Config.NamedTransformIterator

      2. getNamedTransforms(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ActiveNamedTransformIterator


   .. py:method:: Config.getProcessor(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. getProcessor(self: PyOpenColorIO.Config, srcColorSpace: PyOpenColorIO.ColorSpace, dstColorSpace: PyOpenColorIO.ColorSpace) -> PyOpenColorIO.Processor

      Get the processor to apply a :ref:`ColorSpaceTransform` from a source to a destination color space.

      2. getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, srcColorSpace: PyOpenColorIO.ColorSpace, dstColorSpace: PyOpenColorIO.ColorSpace) -> PyOpenColorIO.Processor

      3. getProcessor(self: PyOpenColorIO.Config, srcColorSpaceName: str, dstColorSpaceName: str) -> PyOpenColorIO.Processor

      .. note::
         Names can be colorspace name, role name, or a combination of both.

      4. getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, srcColorSpaceName: str, dstColorSpaceName: str) -> PyOpenColorIO.Processor

      5. getProcessor(self: PyOpenColorIO.Config, srcColorSpaceName: str, display: str, view: str, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor

      Get the processor to apply a :ref:`DisplayViewTransform` for a display and view. Refer to the Display/View Registration section above for more info on the display and view arguments.

      6. getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, srcColorSpaceName: str, display: str, view: str, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor

      7. getProcessor(self: PyOpenColorIO.Config, namedTransform: PyOpenColorIO.NamedTransform, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor

      Get the processor to apply a :ref:`NamedTransform` in the specified direction.

      8. getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, namedTransform: PyOpenColorIO.NamedTransform, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor

      9. getProcessor(self: PyOpenColorIO.Config, namedTransformName: str, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor

      10. getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, namedTransformName: str, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor

      11. 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).

      12. getProcessor(self: PyOpenColorIO.Config, transform: PyOpenColorIO.Transform, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor

      13. getProcessor(self: PyOpenColorIO.Config, context: PyOpenColorIO.Context, transform: PyOpenColorIO.Transform, direction: PyOpenColorIO.TransformDirection) -> PyOpenColorIO.Processor


   .. py:method:: Config.getRoleNames(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.RoleNameIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getRoles(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.RoleColorSpaceIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getSearchPath(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getSearchPaths(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.SearchPathIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getSharedViews(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.SharedViewIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getViewTransform(self: PyOpenColorIO.Config, name: str) -> PyOpenColorIO.ViewTransform
      :module: PyOpenColorIO


   .. py:method:: Config.getViewTransformNames(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ViewTransformNameIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getViewTransforms(self: PyOpenColorIO.Config) -> PyOpenColorIO.Config.ViewTransformIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getViewingRules(self: PyOpenColorIO.Config) -> PyOpenColorIO.ViewingRules
      :module: PyOpenColorIO

      Get read-only version of the viewing rules.


   .. py:method:: Config.getViews(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. getViews(self: PyOpenColorIO.Config, display: str) -> PyOpenColorIO.Config.ViewIterator

      2. getViews(self: PyOpenColorIO.Config, type: PyOpenColorIO.ViewType, display: str) -> PyOpenColorIO.Config.ViewForViewTypeIterator

      3. getViews(self: PyOpenColorIO.Config, display: str, colorSpaceName: str) -> PyOpenColorIO.Config.ViewForColorSpaceIterator


   .. py:method:: Config.getVirtualDisplayViewColorSpaceName(self: PyOpenColorIO.Config, view: str) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getVirtualDisplayViewDescription(self: PyOpenColorIO.Config, view: str) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getVirtualDisplayViewLooks(self: PyOpenColorIO.Config, view: str) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getVirtualDisplayViewRule(self: PyOpenColorIO.Config, view: str) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getVirtualDisplayViewTransformName(self: PyOpenColorIO.Config, view: str) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.getVirtualDisplayViews(self: PyOpenColorIO.Config, display: PyOpenColorIO.ViewType) -> PyOpenColorIO.Config.VirtualViewIterator
      :module: PyOpenColorIO


   .. py:method:: Config.getWorkingDir(self: PyOpenColorIO.Config) -> str
      :module: PyOpenColorIO


   .. py:method:: Config.hasRole(self: PyOpenColorIO.Config, role: str) -> bool
      :module: PyOpenColorIO

      Return true if the role has been defined.


   .. py:method:: Config.instantiateDisplayFromICCProfile(self: PyOpenColorIO.Config, ICCProfileFilepath: str) -> int
      :module: PyOpenColorIO

      Instantiate a new display from a virtual display, using an ICC profile.

      On platforms such as Linux, where the :ref:`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.


   .. py:method:: Config.instantiateDisplayFromMonitorName(self: PyOpenColorIO.Config, monitorName: str) -> int
      :module: PyOpenColorIO

      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 :ref:`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 :ref:`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.


   .. py:method:: Config.isArchivable(self: PyOpenColorIO.Config) -> bool
      :module: PyOpenColorIO

      Verify if the config is archivable.

      A config is not archivable if any of the following are true: -- The working directory is not set -- It contains FileTransforms with a src outside the working directory -- The search path contains paths outside the working directory -- The search path contains paths that start with a context variable

      :ref:`Context` variables are allowed but the intent is that they may only resolve to paths that are within or below the working directory. This is because the archiving function will only archive files that are within the working directory in order to ensure that if it is later expanded, that it will not create any files outside this directory.

      For example, a context variable on the search path intended to contain the name of a sub-directory under the working directory must have the form "./$DIR_NAME" rather than just "$DIR_NAME" to be considered archivable. This is imperfect since there is no way to prevent the context variable from creating a path outside the working dir, but it should at least draw attention to the fact that the archive would fail if used with context vars that try to abuse the intended functionality.

      :return: bool Archivable if true.


   .. py:method:: Config.isColorSpaceLinear(self: PyOpenColorIO.Config, colorSpace: str, referenceSpaceType: PyOpenColorIO.ReferenceSpaceType) -> bool
      :module: PyOpenColorIO

      Return true if the specified color space is linear.

      The determination of linearity is made with respect to one of the two reference spaces (i.e., either the scene-referred one or the display-referred one). If the reference space type of the color space is the opposite of the requested reference space type, false is returned immediately rather than trying to invoke the default view transform to convert between the reference spaces.

      Note: This function relies on heuristics that may sometimes give an incorrect result. For example, if the encoding attribute is not set appropriately or the sampled values fail to detect non-linearity.

      The algorithm proceeds as follows: -- If the color space isdata attribute is true, return false. -- If the reference space type of the color space differs from the requested reference space type, return false. -- If the color space's encoding attribute is present, return true if it matches the expected reference space type (i.e., "scene-linear" for REFERENCE_SPACE_SCENE or "display-linear" for REFERENCE_SPACE_DISPLAY) and false otherwise. -- If the color space has no to_reference or from_reference transform, return true. -- Evaluate several points through the color space's transform and check if the output only differs by a scale factor (which may be different per channel, e.g. allowing an arbitrary matrix transform, with no offset).

      Note that the encoding test happens before the sampled value test to give config authors ultimate control over the linearity determination. For example, they could set the encoding attribute to indicate linearity if they want to ignore some areas of non-linearity (e.g., at extreme values). Or they could set it to indicate that a color space should not be considered linear, even if it is, in a mathematical sense.

      :param colorSpace: Color space to evaluate.
      :param referenceSpaceType: Evaluate linearity with respect to the specified reference space (either scene-referred or display-referred).


   .. py:method:: Config.isColorSpaceUsed(self: PyOpenColorIO.Config, name: str) -> bool
      :module: PyOpenColorIO

      Return true if the color space is used by a transform, a role, or a look.

      .. note::
         Name must be the canonical name.


   .. py:method:: Config.isDisplayTemporary(self: PyOpenColorIO.Config, display: str) -> bool
      :module: PyOpenColorIO


   .. py:method:: Config.isStrictParsingEnabled(self: PyOpenColorIO.Config) -> bool
      :module: PyOpenColorIO


   .. py:method:: Config.loadEnvironment(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.parseColorSpaceFromString(self: PyOpenColorIO.Config, str: str) -> str
      :module: PyOpenColorIO

      Given the specified string, get the longest, right-most, colorspace substring that appears.

      - 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.


   .. py:method:: Config.removeColorSpace(self: PyOpenColorIO.Config, name: str) -> None
      :module: PyOpenColorIO

      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 :ref:`Config` does not affect any :ref:`ColorSpaceSet` sets that have already been created.


   .. py:method:: Config.removeDisplayView(self: PyOpenColorIO.Config, display: str, view: str) -> None
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.removeSharedView(self: PyOpenColorIO.Config, view: str) -> None
      :module: PyOpenColorIO

      Remove a shared view. Will throw if the view does not exist.


   .. py:method:: Config.removeVirtualDisplayView(self: PyOpenColorIO.Config, view: str) -> None
      :module: PyOpenColorIO

      Remove the view from the virtual display.


   .. py:method:: Config.serialize(*args, **kwargs)
      :module: PyOpenColorIO

      Overloaded function.

      1. serialize(self: PyOpenColorIO.Config, fileName: str) -> None

      2. serialize(self: PyOpenColorIO.Config) -> str

      Returns the string representation of the :ref:`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.


   .. py:method:: Config.setActiveDisplays(self: PyOpenColorIO.Config, displays: str) -> None
      :module: PyOpenColorIO

      $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.


   .. py:method:: Config.setActiveViews(self: PyOpenColorIO.Config, views: str) -> None
      :module: PyOpenColorIO

      $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.


   .. py:method:: Config.setDefaultLumaCoefs(self: PyOpenColorIO.Config, rgb: List[float[3]]) -> None
      :module: PyOpenColorIO

      These should be normalized (sum to 1.0 exactly).


   .. py:method:: Config.setDefaultViewTransformName(self: PyOpenColorIO.Config, name: str) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.setDescription(self: PyOpenColorIO.Config, description: str) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.setEnvironmentMode(self: PyOpenColorIO.Config, mode: PyOpenColorIO.EnvironmentMode) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.setFamilySeparator(self: PyOpenColorIO.Config, separator: str) -> None
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.setFileRules(self: PyOpenColorIO.Config, fileRules: PyOpenColorIO.FileRules) -> None
      :module: PyOpenColorIO

      Set file rules.

      .. note::
         The argument is cloned.


   .. py:method:: Config.setInactiveColorSpaces(self: PyOpenColorIO.Config, inactiveColorSpaces: str) -> None
      :module: PyOpenColorIO

      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 :ref:`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.


   .. py:method:: Config.setMajorVersion(self: PyOpenColorIO.Config, major: int) -> None
      :module: PyOpenColorIO

      Set the configuration major version.

      Throws if it is not supported. Resets minor to the most recent minor for the given major.


   .. py:method:: Config.setMinorVersion(self: PyOpenColorIO.Config, minor: int) -> None
      :module: PyOpenColorIO

      Set the configuration minor version. Throws if it is not supported for the current major.


   .. py:method:: Config.setName(self: PyOpenColorIO.Config, name: str) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.setProcessorCacheFlags(self: PyOpenColorIO.Config, flags: PyOpenColorIO.ProcessorCacheFlags) -> None
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.setRole(self: PyOpenColorIO.Config, role: str, colorSpaceName: str) -> None
      :module: PyOpenColorIO

      .. note::
         Setting the `colorSpaceName` name to a null string unsets it.


   .. py:method:: Config.setSearchPath(self: PyOpenColorIO.Config, path: str) -> None
      :module: PyOpenColorIO

      Set all search paths as a concatenated string, ':' to separate the paths.

      See :ref:`addSearchPath` for a more robust and platform-agnostic method of setting the search paths.


   .. py:method:: Config.setStrictParsingEnabled(self: PyOpenColorIO.Config, enabled: bool) -> None
      :module: PyOpenColorIO


   .. py:method:: Config.setVersion(self: PyOpenColorIO.Config, major: int, minor: int) -> None
      :module: PyOpenColorIO

      Set the configuration major and minor versions. Throws if version is not supported.


   .. py:method:: Config.setViewingRules(self: PyOpenColorIO.Config, ViewingRules: PyOpenColorIO.ViewingRules) -> None
      :module: PyOpenColorIO

      Set viewing rules.

      .. note::
         The argument is cloned.


   .. py:method:: Config.setWorkingDir(self: PyOpenColorIO.Config, dirName: str) -> None
      :module: PyOpenColorIO

      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.


   .. py:method:: Config.upgradeToLatestVersion(self: PyOpenColorIO.Config) -> None
      :module: PyOpenColorIO

      Allows an older config to be serialized as the current version.


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

      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.


.. py:class:: EnvironmentVarNameIterator
   :module: PyOpenColorIO.Config


   .. py:method:: EnvironmentVarNameIterator.__getitem__(self: PyOpenColorIO.Config.EnvironmentVarNameIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: EnvironmentVarNameIterator.__iter__(self: PyOpenColorIO.Config.EnvironmentVarNameIterator) -> PyOpenColorIO.Config.EnvironmentVarNameIterator
      :module: PyOpenColorIO.Config


   .. py:method:: EnvironmentVarNameIterator.__len__(self: PyOpenColorIO.Config.EnvironmentVarNameIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: EnvironmentVarNameIterator.__next__(self: PyOpenColorIO.Config.EnvironmentVarNameIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: SearchPathIterator
   :module: PyOpenColorIO.Config


   .. py:method:: SearchPathIterator.__getitem__(self: PyOpenColorIO.Config.SearchPathIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: SearchPathIterator.__iter__(self: PyOpenColorIO.Config.SearchPathIterator) -> PyOpenColorIO.Config.SearchPathIterator
      :module: PyOpenColorIO.Config


   .. py:method:: SearchPathIterator.__len__(self: PyOpenColorIO.Config.SearchPathIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: SearchPathIterator.__next__(self: PyOpenColorIO.Config.SearchPathIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: ColorSpaceNameIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ColorSpaceNameIterator.__getitem__(self: PyOpenColorIO.Config.ColorSpaceNameIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: ColorSpaceNameIterator.__iter__(self: PyOpenColorIO.Config.ColorSpaceNameIterator) -> PyOpenColorIO.Config.ColorSpaceNameIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ColorSpaceNameIterator.__len__(self: PyOpenColorIO.Config.ColorSpaceNameIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ColorSpaceNameIterator.__next__(self: PyOpenColorIO.Config.ColorSpaceNameIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: ColorSpaceIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ColorSpaceIterator.__getitem__(self: PyOpenColorIO.Config.ColorSpaceIterator, arg0: int) -> PyOpenColorIO.ColorSpace
      :module: PyOpenColorIO.Config


   .. py:method:: ColorSpaceIterator.__iter__(self: PyOpenColorIO.Config.ColorSpaceIterator) -> PyOpenColorIO.Config.ColorSpaceIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ColorSpaceIterator.__len__(self: PyOpenColorIO.Config.ColorSpaceIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ColorSpaceIterator.__next__(self: PyOpenColorIO.Config.ColorSpaceIterator) -> PyOpenColorIO.ColorSpace
      :module: PyOpenColorIO.Config


.. py:class:: ActiveColorSpaceNameIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ActiveColorSpaceNameIterator.__getitem__(self: PyOpenColorIO.Config.ActiveColorSpaceNameIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveColorSpaceNameIterator.__iter__(self: PyOpenColorIO.Config.ActiveColorSpaceNameIterator) -> PyOpenColorIO.Config.ActiveColorSpaceNameIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveColorSpaceNameIterator.__len__(self: PyOpenColorIO.Config.ActiveColorSpaceNameIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveColorSpaceNameIterator.__next__(self: PyOpenColorIO.Config.ActiveColorSpaceNameIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: ActiveColorSpaceIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ActiveColorSpaceIterator.__getitem__(self: PyOpenColorIO.Config.ActiveColorSpaceIterator, arg0: int) -> PyOpenColorIO.ColorSpace
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveColorSpaceIterator.__iter__(self: PyOpenColorIO.Config.ActiveColorSpaceIterator) -> PyOpenColorIO.Config.ActiveColorSpaceIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveColorSpaceIterator.__len__(self: PyOpenColorIO.Config.ActiveColorSpaceIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveColorSpaceIterator.__next__(self: PyOpenColorIO.Config.ActiveColorSpaceIterator) -> PyOpenColorIO.ColorSpace
      :module: PyOpenColorIO.Config


.. py:class:: RoleNameIterator
   :module: PyOpenColorIO.Config


   .. py:method:: RoleNameIterator.__getitem__(self: PyOpenColorIO.Config.RoleNameIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: RoleNameIterator.__iter__(self: PyOpenColorIO.Config.RoleNameIterator) -> PyOpenColorIO.Config.RoleNameIterator
      :module: PyOpenColorIO.Config


   .. py:method:: RoleNameIterator.__len__(self: PyOpenColorIO.Config.RoleNameIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: RoleNameIterator.__next__(self: PyOpenColorIO.Config.RoleNameIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: RoleColorSpaceIterator
   :module: PyOpenColorIO.Config


   .. py:method:: RoleColorSpaceIterator.__getitem__(self: PyOpenColorIO.Config.RoleColorSpaceIterator, arg0: int) -> tuple
      :module: PyOpenColorIO.Config


   .. py:method:: RoleColorSpaceIterator.__iter__(self: PyOpenColorIO.Config.RoleColorSpaceIterator) -> PyOpenColorIO.Config.RoleColorSpaceIterator
      :module: PyOpenColorIO.Config


   .. py:method:: RoleColorSpaceIterator.__len__(self: PyOpenColorIO.Config.RoleColorSpaceIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: RoleColorSpaceIterator.__next__(self: PyOpenColorIO.Config.RoleColorSpaceIterator) -> tuple
      :module: PyOpenColorIO.Config


.. py:class:: DisplayIterator
   :module: PyOpenColorIO.Config


   .. py:method:: DisplayIterator.__getitem__(self: PyOpenColorIO.Config.DisplayIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: DisplayIterator.__iter__(self: PyOpenColorIO.Config.DisplayIterator) -> PyOpenColorIO.Config.DisplayIterator
      :module: PyOpenColorIO.Config


   .. py:method:: DisplayIterator.__len__(self: PyOpenColorIO.Config.DisplayIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: DisplayIterator.__next__(self: PyOpenColorIO.Config.DisplayIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: SharedViewIterator
   :module: PyOpenColorIO.Config


   .. py:method:: SharedViewIterator.__getitem__(self: PyOpenColorIO.Config.SharedViewIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: SharedViewIterator.__iter__(self: PyOpenColorIO.Config.SharedViewIterator) -> PyOpenColorIO.Config.SharedViewIterator
      :module: PyOpenColorIO.Config


   .. py:method:: SharedViewIterator.__len__(self: PyOpenColorIO.Config.SharedViewIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: SharedViewIterator.__next__(self: PyOpenColorIO.Config.SharedViewIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: ViewIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ViewIterator.__getitem__(self: PyOpenColorIO.Config.ViewIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: ViewIterator.__iter__(self: PyOpenColorIO.Config.ViewIterator) -> PyOpenColorIO.Config.ViewIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ViewIterator.__len__(self: PyOpenColorIO.Config.ViewIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ViewIterator.__next__(self: PyOpenColorIO.Config.ViewIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: ViewForColorSpaceIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ViewForColorSpaceIterator.__getitem__(self: PyOpenColorIO.Config.ViewForColorSpaceIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: ViewForColorSpaceIterator.__iter__(self: PyOpenColorIO.Config.ViewForColorSpaceIterator) -> PyOpenColorIO.Config.ViewForColorSpaceIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ViewForColorSpaceIterator.__len__(self: PyOpenColorIO.Config.ViewForColorSpaceIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ViewForColorSpaceIterator.__next__(self: PyOpenColorIO.Config.ViewForColorSpaceIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: LookNameIterator
   :module: PyOpenColorIO.Config


   .. py:method:: LookNameIterator.__getitem__(self: PyOpenColorIO.Config.LookNameIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: LookNameIterator.__iter__(self: PyOpenColorIO.Config.LookNameIterator) -> PyOpenColorIO.Config.LookNameIterator
      :module: PyOpenColorIO.Config


   .. py:method:: LookNameIterator.__len__(self: PyOpenColorIO.Config.LookNameIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: LookNameIterator.__next__(self: PyOpenColorIO.Config.LookNameIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: LookIterator
   :module: PyOpenColorIO.Config


   .. py:method:: LookIterator.__getitem__(self: PyOpenColorIO.Config.LookIterator, arg0: int) -> PyOpenColorIO.Look
      :module: PyOpenColorIO.Config


   .. py:method:: LookIterator.__iter__(self: PyOpenColorIO.Config.LookIterator) -> PyOpenColorIO.Config.LookIterator
      :module: PyOpenColorIO.Config


   .. py:method:: LookIterator.__len__(self: PyOpenColorIO.Config.LookIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: LookIterator.__next__(self: PyOpenColorIO.Config.LookIterator) -> PyOpenColorIO.Look
      :module: PyOpenColorIO.Config


.. py:class:: ViewTransformNameIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ViewTransformNameIterator.__getitem__(self: PyOpenColorIO.Config.ViewTransformNameIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: ViewTransformNameIterator.__iter__(self: PyOpenColorIO.Config.ViewTransformNameIterator) -> PyOpenColorIO.Config.ViewTransformNameIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ViewTransformNameIterator.__len__(self: PyOpenColorIO.Config.ViewTransformNameIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ViewTransformNameIterator.__next__(self: PyOpenColorIO.Config.ViewTransformNameIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: ViewTransformIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ViewTransformIterator.__getitem__(self: PyOpenColorIO.Config.ViewTransformIterator, arg0: int) -> PyOpenColorIO.ViewTransform
      :module: PyOpenColorIO.Config


   .. py:method:: ViewTransformIterator.__iter__(self: PyOpenColorIO.Config.ViewTransformIterator) -> PyOpenColorIO.Config.ViewTransformIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ViewTransformIterator.__len__(self: PyOpenColorIO.Config.ViewTransformIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ViewTransformIterator.__next__(self: PyOpenColorIO.Config.ViewTransformIterator) -> PyOpenColorIO.ViewTransform
      :module: PyOpenColorIO.Config


.. py:class:: NamedTransformNameIterator
   :module: PyOpenColorIO.Config


   .. py:method:: NamedTransformNameIterator.__getitem__(self: PyOpenColorIO.Config.NamedTransformNameIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: NamedTransformNameIterator.__iter__(self: PyOpenColorIO.Config.NamedTransformNameIterator) -> PyOpenColorIO.Config.NamedTransformNameIterator
      :module: PyOpenColorIO.Config


   .. py:method:: NamedTransformNameIterator.__len__(self: PyOpenColorIO.Config.NamedTransformNameIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: NamedTransformNameIterator.__next__(self: PyOpenColorIO.Config.NamedTransformNameIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: NamedTransformIterator
   :module: PyOpenColorIO.Config


   .. py:method:: NamedTransformIterator.__getitem__(self: PyOpenColorIO.Config.NamedTransformIterator, arg0: int) -> PyOpenColorIO.NamedTransform
      :module: PyOpenColorIO.Config


   .. py:method:: NamedTransformIterator.__iter__(self: PyOpenColorIO.Config.NamedTransformIterator) -> PyOpenColorIO.Config.NamedTransformIterator
      :module: PyOpenColorIO.Config


   .. py:method:: NamedTransformIterator.__len__(self: PyOpenColorIO.Config.NamedTransformIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: NamedTransformIterator.__next__(self: PyOpenColorIO.Config.NamedTransformIterator) -> PyOpenColorIO.NamedTransform
      :module: PyOpenColorIO.Config


.. py:class:: ActiveNamedTransformNameIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ActiveNamedTransformNameIterator.__getitem__(self: PyOpenColorIO.Config.ActiveNamedTransformNameIterator, arg0: int) -> str
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveNamedTransformNameIterator.__iter__(self: PyOpenColorIO.Config.ActiveNamedTransformNameIterator) -> PyOpenColorIO.Config.ActiveNamedTransformNameIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveNamedTransformNameIterator.__len__(self: PyOpenColorIO.Config.ActiveNamedTransformNameIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveNamedTransformNameIterator.__next__(self: PyOpenColorIO.Config.ActiveNamedTransformNameIterator) -> str
      :module: PyOpenColorIO.Config


.. py:class:: ActiveNamedTransformIterator
   :module: PyOpenColorIO.Config


   .. py:method:: ActiveNamedTransformIterator.__getitem__(self: PyOpenColorIO.Config.ActiveNamedTransformIterator, arg0: int) -> PyOpenColorIO.NamedTransform
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveNamedTransformIterator.__iter__(self: PyOpenColorIO.Config.ActiveNamedTransformIterator) -> PyOpenColorIO.Config.ActiveNamedTransformIterator
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveNamedTransformIterator.__len__(self: PyOpenColorIO.Config.ActiveNamedTransformIterator) -> int
      :module: PyOpenColorIO.Config


   .. py:method:: ActiveNamedTransformIterator.__next__(self: PyOpenColorIO.Config.ActiveNamedTransformIterator) -> PyOpenColorIO.NamedTransform
      :module: PyOpenColorIO.Config

