ENLIGHTEN
Cross-platform desktop GUI for Wasatch Photonics spectrometers
Loading...
Searching...
No Matches
BurnIn.BurnIn Class Reference

A plug-in to help support "burn-in" of a new spectrometer, AKA "load-test" or "robustness validation". More...

Inheritance diagram for BurnIn.BurnIn:
[legend]
Collaboration diagram for BurnIn.BurnIn:
[legend]

Public Member Functions

 cache_config (self, request)
 Persist user options so they'll be saved to enlighten.ini at shutdown.
 
 configure_from_ini (self)
 Load settings from previous session.
 
 get_configuration (self)
 End backwards compatible object-returning wrappers #####.
 
 init_defaults (self)
 Initial GUI values, unless overwritten by enlighten.ini.
 
 laser_check (self, request)
 
 log_header (self, request)
 Make it easy to see ENLIGHTEN restarts in plugin logfile.
 
 process_request (self, request)
 
 randomize_params (self, request)
 
 shutdown_check (self, request)
 
- Public Member Functions inherited from EnlightenPlugin.EnlightenPluginBase
 __init__ (self, ctl)
 
 connect (self)
 Do whatever you have to do to prepare for processing measurements.
 
 disconnect (self)
 Called when ENLIGHTEN is shutting down.
 
 field (self, **kwargs)
 
 get_axis (self, processed_reading=None)
 
 get_axis_name (self)
 
 get_axis_short_name (self)
 
 get_configuration_obj (self)
 End functional-plugins backend ####.
 
 get_plugin_field (self, name)
 get the associated enlighten.Plugins.PluginFieldWidget (which IS a QWidget, mind you)
 
 get_widget_from_name (self, name)
 get the associated QLabel, QSpinBox, etc
 
 log (self, *msgs)
 Begin functional-plugins backend ###.
 
 output (self, name, value)
 
 plot (self, y, x=None, title=None, color=None)
 When plotting on the main scope graph the (co)domain matches that existing graph.
 
 process_request_obj (self, request)
 
 to_graph (self, x)
 Undo to_pixel conversion, and set point back to currently selected graph X-Axis.
 
 to_pixel (self, x, domain=None)
 domain is an array where the index corresponds to a detector pixel number.
 
 update_visibility (self)
 Something has happened which might cause the plugin to wish to refresh its visible state – perhaps a new spectrometer was connected.
 
 wavelength_to_pixel (self, wavelength)
 
 wavenumber_to_pixel (self, wavenumber)
 

Public Attributes

int darks_remaining = 0
 
dict defaults
 
bool header_logged = False
 
 laser_expiry = None
 
 last_shutdown_min = None
 Internal State.
 
int measurement_count = 0
 
 params_expiry = None
 
 shutdown_expiry = None
 
- Public Attributes inherited from EnlightenPlugin.EnlightenPluginBase
 auto_enable = None
 
bool block_enlighten = False
 
 ctl = ctl
 
 error_message = None
 
bool has_other_graph = False
 
bool is_blocking = False
 
bool lock_enable = False
 
 logfile = os.path.join(common.get_default_data_dir(), 'plugin.log')
 
 marquee_message = None
 
dict metadata = {}
 
bool multi_devices = False
 
 name = None
 
dict outputs = {}
 
dict overrides = {}
 
bool process_requests = True
 
dict series = {}
 
list signals = []
 
bool streaming = True
 
 table = None
 
 x_axis_label = None
 
 y_axis_label = None
 

Additional Inherited Members

- Protected Attributes inherited from EnlightenPlugin.EnlightenPluginBase
 _config = None
 
list _fields = []
 

Detailed Description

A plug-in to help support "burn-in" of a new spectrometer, AKA "load-test" or "robustness validation".

Note that the acquisition parameters in effect when the plugin is enabled will remain in effect until the first scheduled randomization.

Signals cruft relates to saving spectra (thumbnail widget creation) and anything that emits to the Marquee (which affects QTimers).

Member Function Documentation

◆ cache_config()

BurnIn.BurnIn.cache_config ( self,
request )

Persist user options so they'll be saved to enlighten.ini at shutdown.

◆ configure_from_ini()

BurnIn.BurnIn.configure_from_ini ( self)

Load settings from previous session.

◆ get_configuration()

BurnIn.BurnIn.get_configuration ( self)

End backwards compatible object-returning wrappers #####.

Can be called BEFORE or AFTER connect. Should be idempotent. Ideally should return same object on multiple calls, but at least should be "equivalent" objects.

Returns
an EnlightenPluginConfiguration

Reimplemented from EnlightenPlugin.EnlightenPluginBase.

◆ init_defaults()

BurnIn.BurnIn.init_defaults ( self)

Initial GUI values, unless overwritten by enlighten.ini.

◆ laser_check()

BurnIn.BurnIn.laser_check ( self,
request )

◆ log_header()

BurnIn.BurnIn.log_header ( self,
request )

Make it easy to see ENLIGHTEN restarts in plugin logfile.

◆ process_request()

BurnIn.BurnIn.process_request ( self,
request )

◆ randomize_params()

BurnIn.BurnIn.randomize_params ( self,
request )

◆ shutdown_check()

BurnIn.BurnIn.shutdown_check ( self,
request )

Member Data Documentation

◆ darks_remaining

int BurnIn.BurnIn.darks_remaining = 0

◆ defaults

dict BurnIn.BurnIn.defaults
Initial value:
= {
"Integ Time": True,
"Gain dB": False,
"TEC Setpoint": False,
"Use Laser": False,
"Laser Power": False,
"Laser Duty Cycle": 20,
"Take Dark": False,
"Save Each": True,
"Export Every": 100,
"Change Min": 1,
"Shutdown Min": 3
}

◆ header_logged

bool BurnIn.BurnIn.header_logged = False

◆ laser_expiry

BurnIn.BurnIn.laser_expiry = None

◆ last_shutdown_min

BurnIn.BurnIn.last_shutdown_min = None

Internal State.

◆ measurement_count

int BurnIn.BurnIn.measurement_count = 0

◆ params_expiry

BurnIn.BurnIn.params_expiry = None

◆ shutdown_expiry

BurnIn.BurnIn.shutdown_expiry = None

The documentation for this class was generated from the following file: