@@ -967,6 +967,20 @@ def generate_config_aces(
967967 )
968968 continue
969969
970+ # Extending the "AMF" relations.
971+ if not amf_components .get (style ):
972+ amf_components [style ] = []
973+
974+ if (
975+ aces_transform_id := transform_data .get ("aces_transform_id" )
976+ ) is not None :
977+ amf_components [style ].extend (
978+ {
979+ aces_transform_id ,
980+ * amf_components .get (aces_transform_id , []),
981+ }
982+ )
983+
970984 # Checking whether the linked "DisplayColorspace"
971985 # "BuiltinTransform" style exists.
972986 style = transform_data ["linked_display_colorspace_style" ]
@@ -1100,6 +1114,11 @@ def generate_config_aces(
11001114 describe ,
11011115 signature_only = True ,
11021116 scheme = scheme ,
1117+ interchange_mapping = {
1118+ "amf_transform_ids" : "\n " .join (
1119+ filter_amf_components (amf_components , style )
1120+ )
1121+ },
11031122 )
11041123 view_transform ["transforms_data" ] = [transform_data ]
11051124 view_transforms .append (view_transform )
@@ -1110,13 +1129,6 @@ def generate_config_aces(
11101129
11111130 display_style = transform_data ["linked_display_colorspace_style" ]
11121131
1113- filtered_amf_components = filter_amf_components (
1114- amf_components ,
1115- display_style ,
1116- additional_filterers ["any" ].get ("amf_component_display_filterers" ),
1117- additional_filterers ["all" ].get ("amf_component_display_filterers" ),
1118- )
1119-
11201132 display = style_to_display_colorspace (
11211133 display_style ,
11221134 describe ,
@@ -1126,11 +1138,20 @@ def generate_config_aces(
11261138 categories = transform_data .get ("categories" ),
11271139 aliases = transform_data_aliases (transform_data ),
11281140 interop_id = transform_data .get ("interop_id" ),
1129- interchange_mapping = (
1130- None
1131- if filtered_amf_components is None
1132- else {"amf_transform_ids" : "\n " .join (filtered_amf_components )}
1133- ),
1141+ interchange_mapping = {
1142+ "amf_transform_ids" : "\n " .join (
1143+ filter_amf_components (
1144+ amf_components ,
1145+ display_style ,
1146+ additional_filterers ["any" ].get (
1147+ "amf_component_display_filterers"
1148+ ),
1149+ additional_filterers ["all" ].get (
1150+ "amf_component_display_filterers"
1151+ ),
1152+ )
1153+ )
1154+ },
11341155 )
11351156 display ["transforms_data" ] = [transform_data ]
11361157 display_name = display ["name" ]
@@ -1170,6 +1191,11 @@ def generate_config_aces(
11701191 "style" : style ,
11711192 },
11721193 process_space = scene_reference_colorspace ["name" ],
1194+ interchange_mapping = {
1195+ "amf_transform_ids" : "\n " .join (
1196+ filter_amf_components (amf_components , style )
1197+ )
1198+ },
11731199 )
11741200 look ["transforms_data" ] = [transform_data ]
11751201 if look not in looks :
@@ -1180,10 +1206,6 @@ def generate_config_aces(
11801206 style ,
11811207 )
11821208
1183- filtered_amf_components = filter_amf_components (
1184- amf_components , ctl_transform .aces_transform_id .aces_transform_id
1185- )
1186-
11871209 colorspace = ctl_transform_to_colorspace (
11881210 ctl_transform ,
11891211 describe ,
@@ -1198,11 +1220,14 @@ def generate_config_aces(
11981220 categories = transform_data .get ("categories" ),
11991221 aliases = transform_data_aliases (transform_data ),
12001222 interop_id = transform_data .get ("interop_id" ),
1201- interchange_mapping = (
1202- None
1203- if filtered_amf_components is None
1204- else {"amf_transform_ids" : "\n " .join (filtered_amf_components )}
1205- ),
1223+ interchange_mapping = {
1224+ "amf_transform_ids" : "\n " .join (
1225+ filter_amf_components (
1226+ amf_components ,
1227+ ctl_transform .aces_transform_id .aces_transform_id ,
1228+ )
1229+ )
1230+ },
12061231 )
12071232 colorspace ["transforms_data" ] = [transform_data ]
12081233 if colorspace not in colorspaces :
0 commit comments