Documentation ¶
Overview ¶
Package sdk2 exposes control of Andor cameras in Go via their SDK, v2
This package provides much of the total C/C++ API for working with Andor cameras but it is not totally exhaustive. It was created to enable use of the NEO sCMOS and iXon EMCCD cameras at JPL in a scientific / instruments context, and thus does not fully support any of the onboard processing features, except the Set functions used to disable them. We do not support multiple cameras on one PC. We do not in this package provide any recipes; this is purely a driver interface that has some gussied up in and output types. We mostly duplicate the API from the C/C++ shared library, with the exception of a few grammatical cleanups.
Users are encouraged to write packages that build on this driver to build more complex functionality. An example of this is in the same repository, cmd/andorhttp2, which wraps the camera in an HTTP server.
Index ¶
- Variables
- func BeneignThermal(err error) bool
- func Error(code uint) error
- func Initialize(iniPath string) error
- type AcquisitionTimings
- type Camera
- func (c *Camera) AbortAcquisition() error
- func (c *Camera) Burst(frames int, fps float64, ch chan<- image.Image) error
- func (c *Camera) CollectHeaderMetadata() []fitsio.Card
- func (c *Camera) Configure(settings map[string]interface{}) error
- func (c *Camera) GetADChannel() (int, error)
- func (c *Camera) GetADChannelRange() (int, int, error)
- func (c *Camera) GetAOI() (camera.AOI, error)
- func (c *Camera) GetAcquiredData() ([]int32, error)
- func (c *Camera) GetAcquisitionMode() (string, error)
- func (c *Camera) GetAcquisitionTimings() (AcquisitionTimings, error)
- func (c *Camera) GetBaselineClamp() (bool, error)
- func (c *Camera) GetBinning() (camera.Binning, error)
- func (c *Camera) GetBitDepth(ch uint) (uint, error)
- func (c *Camera) GetCooling() (bool, error)
- func (c *Camera) GetDetector() (int, int, error)
- func (c *Camera) GetEMAdvanced() (bool, error)
- func (c *Camera) GetEMGain() (int, error)
- func (c *Camera) GetEMGainMode() (string, error)
- func (c *Camera) GetEMGainRange() (int, int, error)
- func (c *Camera) GetExposureTime() (time.Duration, error)
- func (c *Camera) GetFan() (bool, error)
- func (c *Camera) GetFastestRecommendedVSSpeed() (int, float64, error)
- func (c *Camera) GetFeature(feature string) (interface{}, error)
- func (c *Camera) GetFeatureIdx(index int, feature string) (interface{}, error)
- func (c *Camera) GetFeatureInfo(feature string) (map[string]interface{}, error)
- func (c *Camera) GetFilterMode() (string, error)
- func (c *Camera) GetFrame() (image.Image, error)
- func (c *Camera) GetFrameSize() (int, int, error)
- func (c *Camera) GetFrameTransferMode() (bool, error)
- func (c *Camera) GetHSSpeed(idx int) (float64, error)
- func (c *Camera) GetHSSpeedOption(adcCh, outputAmpType, idx int) (float64, error)
- func (c *Camera) GetHardwareVersion() (HardwareVersion, error)
- func (c *Camera) GetMaximumBinning(rm string, horizontal bool) (int, error)
- func (c *Camera) GetMaximumExposure() (float64, error)
- func (c *Camera) GetNumberADChannels() (int, error)
- func (c *Camera) GetNumberHSSpeeds(ch int) (int, error)
- func (c *Camera) GetNumberPreAmpGains() (int, error)
- func (c *Camera) GetNumberVSSpeeds() (int, error)
- func (c *Camera) GetPreAmpGain(idx int) (float64, error)
- func (c *Camera) GetPreAmpGainText(idx int) (string, error)
- func (c *Camera) GetPreAmpOptions() (map[string]interface{}, error)
- func (c *Camera) GetReadoutMode() (string, error)
- func (c *Camera) GetSerialNumber() (int, error)
- func (c *Camera) GetShutter() (bool, error)
- func (c *Camera) GetShutterAuto() (bool, error)
- func (c *Camera) GetShutterSpeed() (time.Duration, error)
- func (c *Camera) GetSoftwareVersion() (SoftwareVersion, error)
- func (c *Camera) GetStatus() (Status, error)
- func (c *Camera) GetTemperature() (float64, error)
- func (c *Camera) GetTemperatureRange() (int, int, error)
- func (c *Camera) GetTemperatureSetpoint() (string, error)
- func (c *Camera) GetTemperatureSetpointInfo() (map[string]interface{}, error)
- func (c *Camera) GetTemperatureSetpoints() ([]string, error)
- func (c *Camera) GetTemperatureStatus() (string, error)
- func (c *Camera) GetTriggerMode() (string, error)
- func (c *Camera) GetVSAmplitude() (string, error)
- func (c *Camera) GetVSAmplitudeIndex() (int, error)
- func (c *Camera) GetVSSpeed(idx int) (float64, error)
- func (c *Camera) GetVSSpeedOption(idx int) (float64, error)
- func (c *Camera) GetVSSpeedRange() (float64, float64, error)
- func (c *Camera) SetADChannel(ch int) error
- func (c *Camera) SetAOI(a camera.AOI) error
- func (c *Camera) SetAccumulationCycleTime(t float64) error
- func (c *Camera) SetAcquisitionMode(am string) error
- func (c *Camera) SetBaselineClamp(b bool) error
- func (c *Camera) SetBinning(b camera.Binning) error
- func (c *Camera) SetCooling(b bool) error
- func (c *Camera) SetEMAdvanced(b bool) error
- func (c *Camera) SetEMGain(fctr int) error
- func (c *Camera) SetEMGainMode(gm string) error
- func (c *Camera) SetExposureTime(t time.Duration) error
- func (c *Camera) SetFan(on bool) error
- func (c *Camera) SetFeature(feature string, v interface{}) error
- func (c *Camera) SetFilterMode(fm string) error
- func (c *Camera) SetFrameTransferMode(useFrameTransfer bool) error
- func (c *Camera) SetHSSpeed(idx int) error
- func (c *Camera) SetHSSpeedIndex(outputAmpType, idx int) error
- func (c *Camera) SetImage(hbin, vbin, hstart, hend, vstart, vend int) error
- func (c *Camera) SetKineticCycleTime(t float64) error
- func (c *Camera) SetNumberAccumulations(i uint) error
- func (c *Camera) SetNumberKinetics(i uint) error
- func (c *Camera) SetPreAmpGain(idx int) error
- func (c *Camera) SetReadoutMode(rm string) error
- func (c *Camera) SetShutter(b bool) error
- func (c *Camera) SetShutterAuto(b bool) error
- func (c *Camera) SetShutterSpeed(t time.Duration) error
- func (c *Camera) SetTemperatureSetpoint(t string) error
- func (c *Camera) SetTriggerMode(tm string) error
- func (c *Camera) SetVSAmplitude(v string) error
- func (c *Camera) SetVSAmplitudeIndex(idx int) error
- func (c *Camera) SetVSSpeed(idx int) error
- func (c *Camera) ShutDown()
- func (c *Camera) StartAcquisition() error
- func (c *Camera) WaitForAcquisition(t time.Duration) error
- type DRVError
- type Enum
- type ErrFeatureNotFound
- type ErrParameterNotSet
- type HardwareVersion
- type SoftwareVersion
- type Status
Constants ¶
This section is empty.
Variables ¶
var ( // ErrBadEnumIndex is generated when an unknown enum index is used ErrBadEnumIndex = errors.New("index not found in enum") // AcquisitionMode maps names to the values used by the SDK AcquisitionMode = Enum{ "SingleScan": 1, "Accumulate": 2, "Kinetic": 3, "FastKinetic": 4, "RunUntilAbort": 5, } // ReadoutMode maps names to the values used by the SDK ReadoutMode = Enum{ "FullVerticalBinning": 0, "MultiTrack": 1, "RandomTrack": 2, "SingleTrack": 3, "Image": 4, } // TriggerMode maps names to the values used by the SDK TriggerMode = Enum{ "Internal": 0, "External": 1, "ExternalStart": 6, "External Exposure (Bulb)": 7, "External FVB EM": 9, "Software": 10, } // FilterMode maps names to the values used by the SDK FilterMode = Enum{ "No Filter": 0, "Median": 1, "Level Above": 2, "Interquartile Range": 3, "Noise Threshold": 4, } // ShutterMode maps names to the values used by the SDK ShutterMode = Enum{ "Auto": 0, "Open": 1, "Close": 2, } // VerticalClockVoltage maps names to the values used by the SDK VerticalClockVoltage = Enum{ "Normal": 0, "+1": 1, "+2": 2, "+3": 3, "+4": 4, } // EMGainMode maps names ot the values used by the SDK EMGainMode = Enum{ "Default": 0, "Extended": 1, "Linear": 2, "Real": 3, } //ErrCodes is a map of error codes to their string values ErrCodes = map[DRVError]string{ 20001: "DRV_ERROR_CODES", 20002: "DRV_SUCCESS", 20003: "DRV_VXD_NOT_INSTALLED", 20004: "DRV_ERROR_SCAN", 20005: "DRV_ERROR_CHECKSUM", 20006: "DRV_ERROR_FILELOAD", 20007: "DRV_UNKNOWN_FUNCTION", 20008: "DRV_ERROR_VXD_INIT", 20009: "DRV_ERROR_ADDRESS", 20010: "DRV_ERROR_PAGE_LOCK", 20011: "DRV_ERROR_PAGE_UNLOCK", 20012: "DRV_ERROR_BOARDTEST", 20013: "DRV_ERROR_ACK", 20014: "DRV_ERROR_UP_FIFO", 20015: "DRV_ERROR_PATTERN", 20017: "DRV_ACQUISITION_ERRORS", 20018: "DRV_ACQ_BUFFER", 20019: "DRV_ACQ_DOWNFIFO_FULL", 20020: "DRV_PROC_UNKNOWN_INSTRUCTION", 20021: "DRV_ILLEGAL_OP_CODE", 20022: "DRV_KINETIC_TIME_NOT_MET", 20023: "DRV_ACCUM_TIME_NOT_MET", 20024: "DRV_NO_NEW_DATA", 20026: "DRV_SPOOLERROR", 20033: "DRV_TEMPERATURE_CODES", 20034: "DRV_TEMPERATURE_OFF", 20035: "DRV_TEMPERATURE_NOT_STABILIZED", 20036: "DRV_TEMPERATURE_STABILIZED", 20037: "DRV_TEMPERATURE_NOT_REACHED", 20038: "DRV_TEMPERATURE_OUT_RANGE", 20039: "DRV_TEMPERATURE_NOT_SUPPORTED", 20040: "DRV_TEMPERATURE_DRIFT", 20049: "DRV_GENERAL_ERRORS", 20050: "DRV_INVALID_AUX", 20051: "DRV_COF_NOTLOADED", 20052: "DRV_FPGAPROG", 20053: "DRV_FLEXERROR", 20054: "DRV_GPIBERROR", 20064: "DRV_DATATYPE", 20065: "DRV_DRIVER_ERRORS", 20066: "DRV_P1INVALID", 20067: "DRV_P2INVALID", 20068: "DRV_P3INVALID", 20069: "DRV_P4INVALID", 20070: "DRV_INIERROR", 20071: "DRV_COFERROR", 20072: "DRV_ACQUIRING", 20073: "DRV_IDLE", 20074: "DRV_TEMPCYCLE", 20075: "DRV_NOT_INITIALIZED", 20076: "DRV_P5INVALID", 20077: "DRV_P6INVALID", 20078: "DRV_INVALID_MODE", 20079: "DRV_INVALID_FILTER", 20080: "DRV_I2CERRORS", 20081: "DRV_DRV_I2CDEVNOTFOUND", 20082: "DRV_I2CTIMEOUT", 20083: "DRV_P7INVALID", 20089: "DRV_USBERROR", 20090: "DRV_IOCERROR", 20091: "DRV_NOT_SUPPORTED", 20093: "DRV_USB_INTERRUPT_ENDPOINT_ERROR", 20094: "DRV_RANDOM_TRACK_ERROR", 20095: "DRV_INVALID_TRIGGER_MODE", 20096: "DRV_LOAD_FIRMWARE_ERROR", 20097: "DRV_DIVIDE_BY_ZERO_ERROR", 20098: "DRV_INVALID_RINGEXPOSURES", 20099: "DRV_BINNING_ERROR", 20990: "DRV_ERROR_NOCAMERA", 20991: "DRV_NOT_SUPPORTED", 20992: "DRV_NOT_AVAILABLE", 20115: "DRV_ERROR_MAP", 20116: "DRV_ERROR_UNMAP", 20117: "DRV_ERROR_MDL", 20118: "DRV_ERROR_UNMDL", 20119: "DRV_ERROR_BUFFSIZE", 20121: "DRV_ERROR_NOHANDLE", 20130: "DRV_GATING_NOT_AVAILABLE", 20131: "DRV_FPGA_VOLTAGE_ERROR", 20100: "DRV_INVALID_AMPLIFIER", } // BeneignErrorCodes is sequence of error codes which mean // the status is normal BeneignErrorCodes = []uint{ 20002, 20073, } )
Functions ¶
func BeneignThermal ¶
BeneignThermal returns true if the status code is a beneign thermal one
func Error ¶
Error returns nil if the error code is beneign, otherwise returns an object which prints the error code and string value
func Initialize ¶
Initialize initializes the camera connection with the driver library
Types ¶
type AcquisitionTimings ¶
type AcquisitionTimings struct { // Exposure is the exposure time in seconds Exposure float64 // Accumulation is the charge accumulation cycle time in seconds Accumulation float64 // Kinetic is the kinetic cycle time in seconds Kinetic float64 }
AcquisitionTimings holds various acquisition timing parameters
type Camera ¶
type Camera struct {
// contains filtered or unexported fields
}
Camera represents an Andor camera
func (*Camera) AbortAcquisition ¶
AbortAcquisition aborts the current acquisition if one is active
func (*Camera) CollectHeaderMetadata ¶
CollectHeaderMetadata satisfies generichttp/camera and makes a stack of FITS cards
func (*Camera) GetADChannel ¶
GetADChannel returns the currently selected AD channel
func (*Camera) GetADChannelRange ¶
GetADChannelRange returns the currently selected AD channel
func (*Camera) GetAcquiredData ¶
GetAcquiredData gets the acquired data / frame
func (*Camera) GetAcquisitionMode ¶
func (*Camera) GetAcquisitionTimings ¶
func (c *Camera) GetAcquisitionTimings() (AcquisitionTimings, error)
GetAcquisitionTimings gets the acquisition timings
func (*Camera) GetBaselineClamp ¶
GetBaselineClamp returns the EM advanced
func (*Camera) GetBinning ¶
GetBinning returns the current binning used by the camera
func (*Camera) GetBitDepth ¶
GetBitDepth gets the number of bits of dynamic range for a given AD channel
func (*Camera) GetCooling ¶
GetCooling gets if the cooler is currently engaged
func (*Camera) GetDetector ¶
GetDetector gets the detector
func (*Camera) GetEMAdvanced ¶
GetEMAdvanced returns the EM advanced
func (*Camera) GetEMGainMode ¶
GetEMGainMode returns the current EM gain mode
func (*Camera) GetEMGainRange ¶
GetEMGainRange gets the min and max EMCCD gain settings for the current gain mode and temperature of the sensor
func (*Camera) GetExposureTime ¶
GetExposureTime returns the current exposure time
func (*Camera) GetFan ¶
GetFan returns if the fan is turned on or not, as commanded the SDK may override and make the return not a true mimic of reality even if the value is false. A true value should always mimic reality.
func (*Camera) GetFastestRecommendedVSSpeed ¶
GetFastestRecommendedVSSpeed gets the fastest vertical shift register speed that does not require changing the vertical clock voltage. It returns the fastest vertical clock speed's intcode and the actual speed in microseconds
func (*Camera) GetFeature ¶
func (*Camera) GetFeatureIdx ¶
func (*Camera) GetFeatureInfo ¶
GetFeatureInfo For numerical features, it returns the min and max values. For enum features, it returns the possible strings that can be used
func (*Camera) GetFilterMode ¶
GetFilterMode returns the current filter mode
func (*Camera) GetFrameSize ¶
GetFrameSize gets the W, H of a frame as recorded in the strided buffer
func (*Camera) GetFrameTransferMode ¶
GetFrameTransferMode returns true if the camera is in frame transfer mode
func (*Camera) GetHSSpeed ¶
GetHSSpeed gets the horizontal shift speed in Megahertz idx is the enum index
ADC channel obtain from the last set Output amplifier type; 0 => EM gain; 1 => conventional, obtained from last
func (*Camera) GetHSSpeedOption ¶
GetHSSpeedOption gets the horizontal shift speed in Megahertz adcCh is an ADC channel outputAmpType is the output amplifier type; 0 => EM gain; 1 => conventional idx is the enum index
func (*Camera) GetHardwareVersion ¶
func (c *Camera) GetHardwareVersion() (HardwareVersion, error)
GetHardwareVersion gets the hardware version string from the camera
func (*Camera) GetMaximumBinning ¶
GetMaximumBinning returns the maximum binning factor usable. if horizontal is true, the returned value is for the horizontal dimension. if horizontal is false, the returned value is for the vertical dimension.
func (*Camera) GetMaximumExposure ¶
GetMaximumExposure gets the maximum exposure time supported in the current configuration in seconds
func (*Camera) GetNumberADChannels ¶
GetNumberADChannels returns the number of discrete A/D channels available
func (*Camera) GetNumberHSSpeeds ¶
GetNumberHSSpeeds gets the number of horizontal shift register speeds available
func (*Camera) GetNumberPreAmpGains ¶
GetNumberPreAmpGains returns the number of preamplifier gain settings available
func (*Camera) GetNumberVSSpeeds ¶
GetNumberVSSpeeds gets the number of vertical shift register speeds available
func (*Camera) GetPreAmpGain ¶
GetPreAmpGain returns the preamp gain (multiplier) associated with a given index
func (*Camera) GetPreAmpGainText ¶
GetPreAmpGainText returns a text description of a given preamp gain
func (*Camera) GetPreAmpOptions ¶
GetPreAmpOptions
func (*Camera) GetReadoutMode ¶
GetReadoutMode returns the current read mode
func (*Camera) GetSerialNumber ¶
GetSerialNumber returns the serial number as an integer
func (*Camera) GetShutter ¶
GetShutter returns true if the shutter is currently open
func (*Camera) GetShutterAuto ¶
GetShutterAuto retrieves if the shutter is in automatic (camera managed) or manual (user managed) mode.
func (*Camera) GetShutterSpeed ¶
GetShutterSpeed retrieves if the shutter is in automatic (camera managed) or manual (user managed) mode.
func (*Camera) GetSoftwareVersion ¶
func (c *Camera) GetSoftwareVersion() (SoftwareVersion, error)
GetSoftwareVersion gets the software version from the caemra
func (*Camera) GetTemperature ¶
GetTemperature gets the current temperature in degrees celcius. The real type is int, but we use float for SD3 compatibility
func (*Camera) GetTemperatureRange ¶
GetTemperatureRange gets the valid range of temperatures in which the detector can be cooled returns (min, max, error)
func (*Camera) GetTemperatureSetpoint ¶
GetTemperatureSetpoint returns the setpoint of the camera's TEC
func (*Camera) GetTemperatureSetpointInfo ¶
GetTemperatureSetpointInfo Return possible options for temp setpoint
func (*Camera) GetTemperatureSetpoints ¶
GetTemperatureSetpoints returns an array of the MIN and MAX temperatures. Any integer intermediate is valid
func (*Camera) GetTemperatureStatus ¶
GetTemperatureStatus queries the status of the cooling system. it is not implemented in the SDK but is required to satisfy the thermalcontroller interface
func (*Camera) GetTriggerMode ¶
GetTriggerMode returns the current trigger mode
func (*Camera) GetVSAmplitude ¶
func (*Camera) GetVSAmplitudeIndex ¶
func (*Camera) GetVSSpeed ¶
GetVSSpeed gets the vertical shift register speed in microseconds
func (*Camera) GetVSSpeedOption ¶
GetVSSpeedOption gets the vertical shift register speed in microseconds
func (*Camera) GetVSSpeedRange ¶
GetVSSpeedRange gets the vertical shift register speed in microseconds
func (*Camera) SetADChannel ¶
SetADChannel sets the AD channel to use until it is changed again or the camera is powered off
func (*Camera) SetAccumulationCycleTime ¶
SetAccumulationCycleTime sets the accumulation cycle time of the camera in seconds
func (*Camera) SetAcquisitionMode ¶
SetAcquisitionMode sets the acquisition mode of the camera
func (*Camera) SetBaselineClamp ¶
SetBaselineClamp toggles the baseline clamp feature of the camera on (true) or off (false)
func (*Camera) SetBinning ¶
SetBinning sets the binning used by the camera
func (*Camera) SetCooling ¶
SetCooling toggles the cooler on (true) or off (false) NOTE:
- When the temperature control is switched off, the temperature of the sensor is gradually raised to 0C to ensure no thermal stresses are set up in the sensor. Classic & ICCD only.
- When closing down the program via ShutDown, you must ensure that the temperature of the detector is above -20C, otherwise calling ShutDown while the detector is still cooled will cause the temperature to rise faster than certified.
func (*Camera) SetEMAdvanced ¶
SetEMAdvanced allows setting of the EM gain setting to values higher than 300x. Using this setting with more than 10s of photons per pixel per readout will lead to advanced ageing of the sensor.
func (*Camera) SetEMGain ¶
SetEMGain sets the EMCCD gain. The precise behavior depends on the current gain mode, see SetEMGainMode, GetEMGainMode
func (*Camera) SetEMGainMode ¶
SetEMGainMode sets the current EMCCD gain mode
func (*Camera) SetExposureTime ¶
SetExposureTime sets the exposure time of the camera in seconds
func (*Camera) SetFan ¶
SetFan allows the fan to be turned on or off. this is not a 1:1 mimic of SDk2, since it is binary on (HIGH) or off (OFF)
func (*Camera) SetFeature ¶
func (*Camera) SetFilterMode ¶
SetFilterMode sets the filtering mode of the camera
func (*Camera) SetFrameTransferMode ¶
SetFrameTransferMode puts the camera into frame transfer mode when the argument is true
func (*Camera) SetHSSpeed ¶
SetHSSpeed sets the horizontal shift speed idx is the enum index NOTE: The output amplitude type is the obtained from the last set
func (*Camera) SetHSSpeedIndex ¶
SetHSSpeedIndex sets the horizontal shift speed outputAmpType is the output amplifier type; 0 => EM gain; 1 => conventional idx is the enum index
func (*Camera) SetKineticCycleTime ¶
SetKineticCycleTime sets the kinetic cycle time
func (*Camera) SetNumberAccumulations ¶
SetNumberAccumulations sets the number of accumulaions
func (*Camera) SetNumberKinetics ¶
SetNumberKinetics sets the number of kinetics
func (*Camera) SetPreAmpGain ¶
SetPreAmpGain sets the preamp gain for the given AD channel to the specified index
func (*Camera) SetReadoutMode ¶
SetReadoutMode sets the readout mode of the camera. We rename this from SetReadMode in the actual driver
func (*Camera) SetShutter ¶
SetShutter opens the shutter (true) or closes it (false)
func (*Camera) SetShutterAuto ¶
SetShutterAuto puts the camera into or out of automatic shutering mode, in which the camera itself controls the signaling and timing of the shutter.
b=false will put the shutter into a manual configuration mode and close it.
func (*Camera) SetShutterSpeed ¶
SetShutterSpeed sets the shutter opening AND closing time for the camera
func (*Camera) SetTemperatureSetpoint ¶
SetTemperatureSetpoint assigns a setpoint to the camera's TEC
func (*Camera) SetTriggerMode ¶
SetTriggerMode sets the trigger mode of the camera
func (*Camera) SetVSAmplitude ¶
SetVSAmplitude configures the vertical shift amplitude based on a human legible string
func (*Camera) SetVSAmplitudeIndex ¶
SetVSAmplitudeIndex sets the VS Amplitude by index
func (*Camera) SetVSSpeed ¶
SetVSSpeed sets the vertical shift register speed
func (*Camera) ShutDown ¶
func (c *Camera) ShutDown()
ShutDown shuts down the camera this doesn't mimic the SDK 1:1, but the error can only be DRV_SUCCESS so we spare the user dealing with errors
func (*Camera) StartAcquisition ¶
StartAcquisition starts the camera acquiring charge for an image
type ErrFeatureNotFound ¶
type ErrFeatureNotFound struct { // Feature is the specific feature not found Feature string }
ErrFeatureNotFound is generated when a feature is looked up in the Features map but does not exist there
func (ErrFeatureNotFound) Error ¶
func (e ErrFeatureNotFound) Error() string
Error satisfies the error interface
type ErrParameterNotSet ¶
type ErrParameterNotSet struct {
Parameter string
}
func (ErrParameterNotSet) Error ¶
func (e ErrParameterNotSet) Error() string
type HardwareVersion ¶
type HardwareVersion struct { // PCB version PCB uint // Decode Flex 10K file version Decode uint // CameraFirmwareVersion Version # of camera firmware CameraFirmwareVersion uint // CameraFirmwareBuild CameraFirmwareBuild uint // contains filtered or unexported fields }
HardwareVersion is a struct holding hardware versions
type SoftwareVersion ¶
type SoftwareVersion struct { // EPROM version EPROM uint // COF version COF uint // DriverRevision DriverRevision uint // DriverVersion DriverVersion uint // DLLRevision DLLRevision uint // DLLVersion DLLVersion uint }
SoftwareVersion is a struct holding software versions
type Status ¶
type Status uint
Status is a camera status. They are also error codes
const ( // WRAPVER is the wrapper version around andor SDK v2 WRAPVER = 6 // StatusIdle is IDLE waiting on instructions StatusIdle Status = 20073 // StatusTempCycle executing temperature cycle StatusTempCycle Status = 20074 // StatusAcquiring Acquisition in progress StatusAcquiring Status = 20072 // StatusAccumTimeNotMet unable to meet accumulate cycle time StatusAccumTimeNotMet Status = 20023 // StatusKineticTimeNotMet unable to meet kinetic cycle time StatusKineticTimeNotMet Status = 20022 // StatusDriverError unable to communicate with card StatusDriverError Status = 20013 // StatusAcqBufferOverflow buffer overflow at ISA slot StatusAcqBufferOverflow Status = 20018 // StatusSpoolError buffer overflow at spool buffer StatusSpoolError Status = 20026 )