@@ -48,36 +48,37 @@ def get_save_strategy(file_format_bundle, file_name, save_options, additional_pr
48
48
:return: a handle to a save algorithm
49
49
"""
50
50
file_format = file_format_bundle .file_format
51
- if file_format is SaveType .NEXUS :
52
- file_name = get_file_name (file_format_bundle , file_name , "" , ".nxs" )
53
- save_name = "SaveNexusProcessed"
54
- elif file_format is SaveType .CAN_SAS :
55
- file_name = get_file_name (file_format_bundle , file_name , "" , ".xml" )
56
- save_name = "SaveCanSAS1D"
57
- save_options .update (additional_properties )
58
- save_options .update (additional_run_numbers )
59
- elif file_format is SaveType .NX_CAN_SAS :
60
- file_name = get_file_name (file_format_bundle , file_name , "_nxcansas" , ".h5" )
61
- save_name = "SaveNXcanSAS"
62
- save_options .update (additional_properties )
63
- save_options .update (additional_run_numbers )
64
- elif file_format is SaveType .POL_NX_CAN_SAS :
65
- file_name = get_file_name (file_format_bundle , file_name , "_polnxcansas" , ".h5" )
66
- save_name = "SavePolarizedNXcanSAS"
67
- save_options .update (additional_properties )
68
- save_options .update (additional_run_numbers )
69
- elif file_format is SaveType .NIST_QXY :
70
- file_name = get_file_name (file_format_bundle , file_name , "_nistqxy" , ".dat" )
71
- save_name = "SaveNISTDAT"
72
- elif file_format is SaveType .RKH :
73
- file_name = get_file_name (file_format_bundle , file_name , "" , ".txt" )
74
- save_name = "SaveRKH"
75
- save_options .update ({"Append" : False })
76
- elif file_format is SaveType .CSV :
77
- file_name = get_file_name (file_format_bundle , file_name , "" , ".csv" )
78
- save_name = "SaveCSV"
79
- else :
80
- raise RuntimeError ("SaveWorkspace: The requested data {0} format is currently not supported." .format (file_format ))
51
+ match file_format :
52
+ case SaveType .NEXUS :
53
+ file_name = get_file_name (file_format_bundle , file_name , "" , ".nxs" )
54
+ save_name = "SaveNexusProcessed"
55
+ case SaveType .CAN_SAS :
56
+ file_name = get_file_name (file_format_bundle , file_name , "" , ".xml" )
57
+ save_name = "SaveCanSAS1D"
58
+ save_options .update (additional_properties )
59
+ save_options .update (additional_run_numbers )
60
+ case SaveType .NX_CAN_SAS :
61
+ file_name = get_file_name (file_format_bundle , file_name , "_nxcansas" , ".h5" )
62
+ save_name = "SaveNXcanSAS"
63
+ save_options .update (additional_properties )
64
+ save_options .update (additional_run_numbers )
65
+ case SaveType .POL_NX_CAN_SAS :
66
+ file_name = get_file_name (file_format_bundle , file_name , "_polnxcansas" , ".h5" )
67
+ save_name = "SavePolarizedNXcanSAS"
68
+ save_options .update (additional_properties )
69
+ save_options .update (additional_run_numbers )
70
+ case SaveType .NIST_QXY :
71
+ file_name = get_file_name (file_format_bundle , file_name , "_nistqxy" , ".dat" )
72
+ save_name = "SaveNISTDAT"
73
+ case SaveType .RKH :
74
+ file_name = get_file_name (file_format_bundle , file_name , "" , ".txt" )
75
+ save_name = "SaveRKH"
76
+ save_options .update ({"Append" : False })
77
+ case SaveType .CSV :
78
+ file_name = get_file_name (file_format_bundle , file_name , "" , ".csv" )
79
+ save_name = "SaveCSV"
80
+ case _:
81
+ raise RuntimeError ("SaveWorkspace: The requested data {0} format is currently not supported." .format (file_format ))
81
82
save_options .update ({"Filename" : file_name })
82
83
return create_unmanaged_algorithm (save_name , ** save_options )
83
84
0 commit comments