MCPcopy Create free account
hub / github.com/NSLS2/PyXRF / _metadata_update_program_state

Method _metadata_update_program_state

pyxrf/model/fileio.py:237–264  ·  view source on GitHub ↗

Update program state based on metadata: -- enable controls (mostly ``View Metadata`` button in ``File IO`` tab -- set incident energy if it is available -- print logger warning if incident energy is not available in metadata (or if metadata does not exist)

(self)

Source from the content-addressed store, hash-verified

235 return db is not None
236
237 def _metadata_update_program_state(self):
238 """
239 Update program state based on metadata:
240
241 -- enable controls (mostly ``View Metadata`` button in ``File IO`` tab
242
243 -- set incident energy if it is available
244
245 -- print logger warning if incident energy is not available in metadata
246 (or if metadata does not exist)
247 """
248
249 self.scan_metadata_available = False
250 self.incident_energy_available = False
251 if self.scan_metadata is not None:
252 self.scan_metadata_available = self.scan_metadata.is_metadata_available()
253 self.incident_energy_available = self.scan_metadata.is_mono_incident_energy_available()
254
255 if self.incident_energy_available:
256 # Fetch incident energy from metadata if it exists
257 self.incident_energy_set = self.scan_metadata.get_mono_incident_energy()
258 logger.info(f"Incident energy {self.incident_energy_set} keV was extracted from the scan metadata")
259 else:
260 logger.warning(
261 "Incident energy is not available in scan metadata and needs to be set manually:\n"
262 " Click 'Find Elements Automatically' button in 'Fit' "
263 "tab to access the settings dialog box."
264 )
265
266 def clear(self):
267 """

Callers 3

clearMethod · 0.95
load_data_from_fileMethod · 0.95
load_data_runidMethod · 0.95

Tested by

no test coverage detected