@@ -147,6 +147,7 @@ def retrieve_sample_metadata(self, list_of_images):
147147 self .match_files ()
148148 self .calculate_first_and_last_ob ()
149149 self .calculate_time_range ()
150+
150151 # self.display_time_range_selection_widgets()
151152
152153 def select_ob_folder (self ):
@@ -157,11 +158,11 @@ def retrieve_ob_metadata(self, selected_folder):
157158 self .ob_metadata_dict = MetadataHandler .retrieve_metadata (list_of_files = list_of_ob_files )
158159
159160 def auto_retrieve_ob_metadata (self ):
160- logging .info ("> auto_retrieve_ob_metadata" )
161+ logging .info ("> auto_retrieve_ob_metadata - WORKING WITH OB " )
161162 folder = os .path .join (self .working_dir , "raw" , "ob" )
162- logging .info (f"-> folder: { folder } " )
163+ logging .info (f"\t -> folder: { folder } " )
163164 list_of_ob_files = file_handler .get_list_of_all_files_in_subfolders (folder = folder , extensions = ["tiff" , "tif" ])
164- logging .info (f"-> nbr of ob files found: { len (list_of_ob_files )} " )
165+ logging .info (f"\t -> nbr of ob files found: { len (list_of_ob_files )} " )
165166 self .ob_metadata_dict = MetadataHandler .retrieve_metadata (list_of_files = list_of_ob_files , label = "ob" )
166167
167168 # logging.info(f"ob metadata dict")
@@ -185,6 +186,7 @@ def retrieve_df_metadata(self, selected_folder):
185186 self .df_metadata_dict = MetadataHandler .retrieve_metadata (list_of_files = list_of_df_files )
186187
187188 def auto_retrieve_df_metadata (self ):
189+ logging .info ("> auto_retrieve_df_metadata - WORKING WITH DF" )
188190 folder_df = os .path .join (self .working_dir , "raw" , "df" )
189191 folder_dc = os .path .join (self .working_dir , "raw" , "dc" )
190192 list_of_df_files = file_handler .get_list_of_all_files_in_subfolders (
@@ -196,12 +198,14 @@ def auto_retrieve_df_metadata(self):
196198 list_of_files = list_of_df_files + list_of_dc_files
197199 logging .info (f"-> nbr of dc files found: { len (list_of_files )} " )
198200 self .df_metadata_dict = MetadataHandler .retrieve_metadata (list_of_files = list_of_files , label = "df" )
201+ logging .info (f"\t -> df metadata dict: { self .df_metadata_dict } " )
199202
200203 def match_files (self ):
201204 """This is where the files will be associated with their respective OB, DC by using the metadata"""
202205
203206 if not JSON_DEBUGGING :
204207 self .create_master_sample_dict ()
208+ logging .info (f"\t -> after creating master sample dict, final_full_master_dict: { self .final_full_master_dict } " )
205209
206210 self .match_ob ()
207211 self .match_df ()
@@ -210,7 +214,7 @@ def match_files(self):
210214 # for debugging only, exporting the json
211215 import json
212216
213- with open ("/Users /j35/Desktop/which_ob_and_df_to_use.json" , "w" ) as outfile :
217+ with open ("/SNS/users /j35/Desktop/which_ob_and_df_to_use.json" , "w" ) as outfile :
214218 json .dump (self .final_full_master_dict , outfile )
215219
216220 def match_ob (self ):
@@ -219,21 +223,35 @@ def match_ob(self):
219223 - detector type
220224 - aperture
221225 """
226+ logging .info ("> entering match_ob" )
222227 list_ob_dict = self .ob_metadata_dict
223228 final_full_master_dict = self .final_full_master_dict
224229 list_of_sample_acquisition = final_full_master_dict .keys ()
225230
231+ if JSON_DEBUGGING :
232+ import json
233+ with open ("/SNS/users/j35/Desktop/list_ob_dict.json" , "w" ) as outfile :
234+ json .dump (list_ob_dict , outfile )
235+
226236 for _index_ob in list_ob_dict .keys ():
227237 _all_ob_instrument_metadata = Get .get_instrument_metadata_only (list_ob_dict [_index_ob ])
228238 _ob_instrument_metadata = utilities .isolate_instrument_metadata (_all_ob_instrument_metadata )
229- _acquisition_time = _all_ob_instrument_metadata [MetadataName .EXPOSURE_TIME .value ]["value" ]
239+
240+ _acquisition_time = _all_ob_instrument_metadata [MetadataName .EXPOSURE_TIME .value ].get ("value" , None )
241+ if _acquisition_time is None :
242+ logging .warning (f"\t -> OB file { list_ob_dict [_index_ob ]['filename' ]} does not have acquisition time metadata, skipping it for the matching with the sample" )
243+ continue
244+ else :
245+ logging .info (f"\t -> OB file { list_ob_dict [_index_ob ]['filename' ]} has acquisition time { _acquisition_time } , trying to match with sample metadata" )
246+
230247 if _acquisition_time in list_of_sample_acquisition :
231248 for _config_id in final_full_master_dict [_acquisition_time ].keys ():
232249 _sample_metadata_infos = final_full_master_dict [_acquisition_time ][_config_id ]["metadata_infos" ]
233250 if utilities .all_metadata_match (_sample_metadata_infos , _ob_instrument_metadata ):
234251 final_full_master_dict [_acquisition_time ][_config_id ]["list_ob" ].append (list_ob_dict [_index_ob ])
235252
236253 self .final_full_master_dict = final_full_master_dict
254+ logging .info (f"\t -> after matching ob, final_full_master_dict: { self .final_full_master_dict } " )
237255
238256 def match_df (self ):
239257 """
@@ -242,14 +260,19 @@ def match_df(self):
242260 - detector type used
243261 - acquisition time
244262 """
263+ logging .info ("> entering match_df" )
245264 list_df_dict = self .df_metadata_dict
246265 final_full_master_dict = self .final_full_master_dict
247266 list_of_sample_acquisition = final_full_master_dict .keys ()
248267
249268 for _index_df in list_df_dict .keys ():
250269 _all_df_instrument_metadata = Get .get_instrument_metadata_only (list_df_dict [_index_df ])
251270 _df_instrument_metadata = utilities .isolate_instrument_metadata (_all_df_instrument_metadata )
252- _acquisition_time = _all_df_instrument_metadata [MetadataName .EXPOSURE_TIME .value ]["value" ]
271+ _acquisition_time = _all_df_instrument_metadata [MetadataName .EXPOSURE_TIME .value ].get ("value" , None )
272+
273+ if _acquisition_time is None :
274+ logging .warning (f"\t -> DF file { list_df_dict [_index_df ]['filename' ]} does not have acquisition time metadata, skipping it for the matching with the sample" )
275+ continue
253276
254277 if _acquisition_time in list_of_sample_acquisition :
255278 for _config_id in final_full_master_dict [_acquisition_time ].keys ():
@@ -263,6 +286,7 @@ def match_df(self):
263286 final_full_master_dict [_acquisition_time ][_config_id ]["list_df" ].append (list_df_dict [_index_df ])
264287
265288 self .final_full_master_dict = final_full_master_dict
289+ logging .info (f"\t -> after matching df, final_full_master_dict: { self .final_full_master_dict } " )
266290
267291 def create_master_sample_dict (self ):
268292 final_full_master_dict = collections .OrderedDict ()
0 commit comments