+def add_colorspace_alias(config, reference_colorspace, colorspace, colorspace_alias_names):
+ """
+ Object description.
+
+ Parameters
+ ----------
+ parameter : type
+ Parameter description.
+
+ Returns
+ -------
+ type
+ Return value description.
+ """
+
+ for alias_name in colorspace_alias_names:
+ if alias_name == colorspace.name.lower():
+ return
+
+ print( "Adding alias colorspace space %s, alias to %s" % (
+ alias_name, colorspace.name))
+
+ compact_family_name = "Aliases"
+
+ ocio_colorspace_alias = ocio.ColorSpace(
+ name=alias_name,
+ bitDepth=colorspace.bit_depth,
+ description=colorspace.description,
+ equalityGroup=colorspace.equality_group,
+ family=compact_family_name,
+ isData=colorspace.is_data,
+ allocation=colorspace.allocation_type,
+ allocationVars=colorspace.allocation_vars)
+
+ if colorspace.to_reference_transforms != []:
+ print("Generating To-Reference transforms")
+ ocio_transform = generate_OCIO_transform([{
+ 'type': 'colorspace',
+ 'src': colorspace.name,
+ 'dst': reference_colorspace.name,
+ 'direction': 'forward'
+ }])
+ ocio_colorspace_alias.setTransform(
+ ocio_transform,
+ ocio.Constants.COLORSPACE_DIR_TO_REFERENCE)
+
+ if colorspace.from_reference_transforms != []:
+ print("Generating From-Reference transforms")
+ ocio_transform = generate_OCIO_transform([{
+ 'type': 'colorspace',
+ 'src': reference_colorspace.name,
+ 'dst': colorspace.name,
+ 'direction': 'forward'
+ }])
+ ocio_colorspace_alias.setTransform(
+ ocio_transform,
+ ocio.Constants.COLORSPACE_DIR_FROM_REFERENCE)
+
+ config.addColorSpace(ocio_colorspace_alias)
+