Wasatch.NET 2.4.14
.NET application driver for Wasatch Photonics spectrometers
Loading...
Searching...
No Matches
Classes | Enumerations
WasatchNET Namespace Reference

Classes

class  AcquisitionStatus
 Developmental class to support the acquisition status we plan to send on endpoint 6 following an integration. More...
 
class  AndorEEPROMJSON
 
class  BoulderEEPROM
 
class  BoulderSpectrometer
 
class  BoulderStatusRegister
 
class  ChannelSpectrum
 Return type used by MultiChannelWrapper acquisitions, provided to bundle x-axis and position number. Also snapshots integration time and temperature at time of construction. More...
 
class  Driver
 
class  DriverVBAWrapper
 A way to get to the static Singleton from languages that don't support static class methods like Driver.getInstance(). More...
 
class  EEPROM
 Encapsulates access to the spectrometer's writable but non-volatile EEPROM. More...
 
class  EEPROMJSON
 
class  FeatureIdentification
 Encapsulates metadata inferred by the spectrometer PID. More...
 
class  FeatureMask
 This class encapsulates a 16-bit set of boolean flags which indicate whether a given spectrometer has a particular feature or not, without expending quite as much storage as, for instance, legacy hasCooling, hasLaser or hasBattery bytes. More...
 
class  FPGAOptions
 The set of options and settings enabled when the FPGA firmware was compiled for this spectrometer. More...
 
class  FRAM
 
class  FunkyFloat
 Converts to and from the weird unsigned 16-bit float format used by the CCD gain commands. More...
 
class  HOCTEEPROM
 
class  HOCTSpectrometer
 
interface  IDriver
 Singleton providing access to individual Spectrometer instances, while providing high-level support infrastructure like a master version string, reusable logger etc. More...
 
interface  IDriverVBAWrapper
 
interface  IEEPROM
 COM wrapper for the EEPROM class. More...
 
interface  IFeatureIdentification
 TODO: move to IFeatureIdentification file. More...
 
interface  IFPGAOptions
 
interface  ILogger
 This interface is provided for COM clients (Delphi etc) who seem to find it useful. I don't know that .NET users would find much benefit in it. More...
 
class  IntegrationOptimizer
 Controls the automatic (background) optimization of a spectrometer's integration time to within 'targetCountThreshold' counts of 'targetCounts' intensity goal. More...
 
interface  ISpectrometer
 This interface is provided for COM clients (Delphi etc) who seem to find it useful. I don't know that .NET users would find much benefit in it. More...
 
interface  IUInt40
 40-bit unsigned value, used for many of the laser functions. More...
 
class  Logger
 Singleton used throughout WasatchNET for logging and debugging. More...
 
class  MockEEPROM
 
class  MockSpectrometer
 
class  MockSpectrometerJSON
 
class  MultiChannelWrapper
 WasatchNET has always provided support to control multiple spectrometers in parallel. However, such control is inherently manual, with all operations and timing left to the user. Other than basic synchronization of the USB bus, no automated timing or coordination is provided across multiple devices. More...
 
class  OpcodeHelper
 Utility class for automating Opcode operations and processing. More...
 
class  ParseData
 A class to access fields of various primitive types embedded at arbitrary indexes within a byte array. Used by EEPROM. More...
 
class  Spectrometer
 Encapsulates a logical Wasatch Photonics spectrometer for communication. More...
 
class  SpectrometerUptime
 Tracks whether a given spectrometer's "last known state" was successful (working) or error.
More...
 
class  SPIEEPROM
 
class  SPISpectrometer
 
class  UInt40
 40-bit unsigned value, used for many of the laser functions. More...
 
class  Unpack
 A class to help unpack byte arrays returned from the spectrometer's various getCmd() results into standard datatypes. More...
 
class  Util
 A collection of static functions provided to automate common algorithms and post-processing steps in spectroscopy applications. More...
 

Enumerations

enum  BOARD_TYPES {
  RAMAN_FX2 , INGAAS_FX2 , DRAGSTER_FX3 , ARM ,
  STROKER , ERROR
}
 the fundamental electronic board configurations supported by our spectrometers More...
 
enum  EXTERNAL_TRIGGER_OUTPUT { LASER_MODULATION , INTEGRATION_ACTIVE_PULSE , ERROR }
 
enum  FPGA_DATA_HEADER { NONE , OCEAN_OPTICS , WASATCH , ERROR }
 
enum  FPGA_INTEG_TIME_RES { ONE_MS , TEN_MS , SWITCHABLE , ERROR }
 
enum  FPGA_LASER_CONTROL { MODULATION , TRANSITION_POINTS , RAMPING , ERROR }
 Firmware support for laser control modes other than modulation (rare) More...
 
enum  FPGA_LASER_TYPE { NONE , INTERNAL , EXTERNAL , ERROR }
 
enum  HORIZONTAL_BINNING { NONE , TWO_PIXEL , FOUR_PIXEL , ERROR }
 
enum  LogLevel { DEBUG , INFO , ERROR , NEVER }
 
enum  Opcodes {
  ACQUIRE_SPECTRUM , ERASE_STORAGE , FPGA_RESET , GET_ACCESSORY_ENABLE ,
  GET_ACTUAL_FRAMES , GET_ACTUAL_INTEGRATION_TIME , GET_ADC_RAW , GET_AREA_SCAN_ENABLE ,
  GET_BATTERY_STATE , GET_CF_SELECT , GET_COMPILATION_OPTIONS , GET_CONTINUOUS_ACQUISITION ,
  GET_CONTINUOUS_FRAMES , GET_DETECTOR_GAIN , GET_DETECTOR_GAIN_ODD , GET_DETECTOR_OFFSET ,
  GET_DETECTOR_OFFSET_ODD , GET_DETECTOR_SENSING_THRESHOLD , GET_DETECTOR_SENSING_THRESHOLD_ENABLE , GET_DETECTOR_START_LINE ,
  GET_DETECTOR_STOP_LINE , GET_DETECTOR_TEC_ENABLE , GET_DETECTOR_TEC_SETPOINT , GET_DETECTOR_TEMPERATURE ,
  GET_FIRMWARE_REVISION , GET_FPGA_REVISION , GET_STORAGE , GET_HORIZONTAL_BINNING ,
  GET_INTEGRATION_TIME , GET_LAMP_ENABLE , GET_LASER_ENABLE , GET_LASER_FIRING ,
  GET_LASER_INTERLOCK , GET_LASER_MOD_DURATION , GET_LASER_MOD_ENABLE , GET_LASER_MOD_PERIOD ,
  GET_LASER_MOD_PULSE_DELAY , GET_LASER_MOD_PULSE_WIDTH , GET_LASER_RAMPING_MODE , GET_LASER_TEC_SETPOINT ,
  GET_LINE_LENGTH , GET_LINK_LASER_MOD_TO_INTEGRATION_TIME , GET_MODEL_CONFIG , GET_OPT_ACTUAL_INTEGRATION_TIME ,
  GET_OPT_AREA_SCAN , GET_OPT_CF_SELECT , GET_OPT_DATA_HEADER_TAG , GET_OPT_HORIZONTAL_BINNING ,
  GET_OPT_INTEGRATION_TIME_RESOLUTION , GET_OPT_LASER_CONTROL , GET_OPT_LASER_TYPE , GET_SELECTED_ADC ,
  GET_TRIGGER_DELAY , GET_TRIGGER_OUTPUT , GET_TRIGGER_SOURCE , POLL_DATA ,
  SECOND_TIER_COMMAND , SET_ACCESSORY_ENABLE , SET_AREA_SCAN_ENABLE , SET_CF_SELECT ,
  SET_CONTINUOUS_ACQUISITION , SET_CONTINUOUS_FRAMES , SET_DETECTOR_GAIN , SET_DETECTOR_GAIN_ODD ,
  SET_DETECTOR_OFFSET , SET_DETECTOR_OFFSET_ODD , SET_DETECTOR_SENSING_THRESHOLD , SET_DETECTOR_SENSING_THRESHOLD_ENABLE ,
  SET_DETECTOR_START_LINE , SET_DETECTOR_STOP_LINE , SET_DETECTOR_TEC_ENABLE , SET_DETECTOR_TEC_SETPOINT ,
  SET_DFU_MODE , SET_FEEDBACK , SET_HORIZONTAL_BINNING , SET_INTEGRATION_TIME ,
  SET_LAMP_ENABLE , SET_LASER_ENABLE , SET_LASER_MOD_DURATION , SET_LASER_MOD_ENABLE ,
  SET_LASER_MOD_PERIOD , SET_LASER_MOD_PULSE_DELAY , SET_LASER_MOD_PULSE_WIDTH , SET_LASER_RAMPING_MODE ,
  SET_LASER_TEC_SETPOINT , SET_LINK_LASER_MOD_TO_INTEGRATION_TIME , SET_MODEL_CONFIG_ARM , SET_MODEL_CONFIG_FX2 ,
  SET_SELECTED_ADC , SET_TRIGGER_DELAY , SET_TRIGGER_OUTPUT , SET_TRIGGER_SOURCE ,
  WRITE_LIBRARY , PROCESS_LIBRARY
}
 Convenience enum for mapping USB API commands to stringifiable English labels. More...
 
enum  TRIGGER_SOURCE { INTERNAL , EXTERNAL , ERROR }
 
enum  X_AXIS_TYPE { PIXEL , WAVELENGTH , WAVENUMBER }
 

Enumeration Type Documentation

◆ BOARD_TYPES

the fundamental electronic board configurations supported by our spectrometers

STROKER is a legacy board firmware without PID conforming to FID and no EEPROM

Enumerator
RAMAN_FX2 
INGAAS_FX2 
DRAGSTER_FX3 
ARM 
STROKER 
ERROR 

◆ EXTERNAL_TRIGGER_OUTPUT

Enumerator
LASER_MODULATION 
INTEGRATION_ACTIVE_PULSE 
ERROR 

◆ FPGA_DATA_HEADER

Enumerator
NONE 
OCEAN_OPTICS 
WASATCH 
ERROR 

◆ FPGA_INTEG_TIME_RES

Enumerator
ONE_MS 
TEN_MS 
SWITCHABLE 
ERROR 

◆ FPGA_LASER_CONTROL

Firmware support for laser control modes other than modulation (rare)

Enumerator
MODULATION 
TRANSITION_POINTS 
RAMPING 
ERROR 

◆ FPGA_LASER_TYPE

Enumerator
NONE 
INTERNAL 
EXTERNAL 
ERROR 

◆ HORIZONTAL_BINNING

Enumerator
NONE 
TWO_PIXEL 
FOUR_PIXEL 
ERROR 

◆ LogLevel

Enumerator
DEBUG 
INFO 
ERROR 
NEVER 

◆ Opcodes

Convenience enum for mapping USB API commands to stringifiable English labels.

Enumerator
ACQUIRE_SPECTRUM 
ERASE_STORAGE 
FPGA_RESET 
GET_ACCESSORY_ENABLE 
GET_ACTUAL_FRAMES 
GET_ACTUAL_INTEGRATION_TIME 
GET_ADC_RAW 
GET_AREA_SCAN_ENABLE 
GET_BATTERY_STATE 
GET_CF_SELECT 
GET_COMPILATION_OPTIONS 
GET_CONTINUOUS_ACQUISITION 
GET_CONTINUOUS_FRAMES 
GET_DETECTOR_GAIN 
GET_DETECTOR_GAIN_ODD 
GET_DETECTOR_OFFSET 
GET_DETECTOR_OFFSET_ODD 
GET_DETECTOR_SENSING_THRESHOLD 
GET_DETECTOR_SENSING_THRESHOLD_ENABLE 
GET_DETECTOR_START_LINE 
GET_DETECTOR_STOP_LINE 
GET_DETECTOR_TEC_ENABLE 
GET_DETECTOR_TEC_SETPOINT 
GET_DETECTOR_TEMPERATURE 
GET_FIRMWARE_REVISION 
GET_FPGA_REVISION 
GET_STORAGE 
GET_HORIZONTAL_BINNING 
GET_INTEGRATION_TIME 
GET_LAMP_ENABLE 
GET_LASER_ENABLE 
GET_LASER_FIRING 
GET_LASER_INTERLOCK 
GET_LASER_MOD_DURATION 
GET_LASER_MOD_ENABLE 
GET_LASER_MOD_PERIOD 
GET_LASER_MOD_PULSE_DELAY 
GET_LASER_MOD_PULSE_WIDTH 
GET_LASER_RAMPING_MODE 
GET_LASER_TEC_SETPOINT 
GET_LINE_LENGTH 
GET_LINK_LASER_MOD_TO_INTEGRATION_TIME 
GET_MODEL_CONFIG 
GET_OPT_ACTUAL_INTEGRATION_TIME 
GET_OPT_AREA_SCAN 
GET_OPT_CF_SELECT 
GET_OPT_DATA_HEADER_TAG 
GET_OPT_HORIZONTAL_BINNING 
GET_OPT_INTEGRATION_TIME_RESOLUTION 
GET_OPT_LASER_CONTROL 
GET_OPT_LASER_TYPE 
GET_SELECTED_ADC 
GET_TRIGGER_DELAY 
GET_TRIGGER_OUTPUT 
GET_TRIGGER_SOURCE 
POLL_DATA 
SECOND_TIER_COMMAND 
SET_ACCESSORY_ENABLE 
SET_AREA_SCAN_ENABLE 
SET_CF_SELECT 
SET_CONTINUOUS_ACQUISITION 
SET_CONTINUOUS_FRAMES 
SET_DETECTOR_GAIN 
SET_DETECTOR_GAIN_ODD 
SET_DETECTOR_OFFSET 
SET_DETECTOR_OFFSET_ODD 
SET_DETECTOR_SENSING_THRESHOLD 
SET_DETECTOR_SENSING_THRESHOLD_ENABLE 
SET_DETECTOR_START_LINE 
SET_DETECTOR_STOP_LINE 
SET_DETECTOR_TEC_ENABLE 
SET_DETECTOR_TEC_SETPOINT 
SET_DFU_MODE 
SET_FEEDBACK 
SET_HORIZONTAL_BINNING 
SET_INTEGRATION_TIME 
SET_LAMP_ENABLE 
SET_LASER_ENABLE 
SET_LASER_MOD_DURATION 
SET_LASER_MOD_ENABLE 
SET_LASER_MOD_PERIOD 
SET_LASER_MOD_PULSE_DELAY 
SET_LASER_MOD_PULSE_WIDTH 
SET_LASER_RAMPING_MODE 
SET_LASER_TEC_SETPOINT 
SET_LINK_LASER_MOD_TO_INTEGRATION_TIME 
SET_MODEL_CONFIG_ARM 
SET_MODEL_CONFIG_FX2 
SET_SELECTED_ADC 
SET_TRIGGER_DELAY 
SET_TRIGGER_OUTPUT 
SET_TRIGGER_SOURCE 
WRITE_LIBRARY 
PROCESS_LIBRARY 

◆ TRIGGER_SOURCE

Enumerator
INTERNAL 
EXTERNAL 
ERROR 

◆ X_AXIS_TYPE

Enumerator
PIXEL 
WAVELENGTH 
WAVENUMBER