15#define DL_STRUCTALIGN 4
18#if defined(_WIN32) || defined(_WIN64)
22# define DL_API extern "C" __declspec(dllexport)
24# define DL_API extern "C" __declspec(dllimport)
27# define MYCDECL __cdecl
194 namespace ErrorFlags {
210 static const unsigned char busy = 0x01;
222 namespace PulseGuideStatus
236# pragma pack(push, DL_STRUCTALIGN)
563 virtual void getLastError(
char * buffer,
size_t& bufferSize)
const = 0;
783 virtual void getLimits(
size_t &tipMin,
size_t &tipMax,
size_t &tiltMin,
size_t &tiltMax)
const = 0;
1101# pragma pack(push, DL_STRUCTALIGN)
1718# pragma pack(push, DL_STRUCTALIGN)
1915 virtual void getSerial(
char * buffer,
size_t & buffer_length)
const = 0;
2379#if defined(_WIN32) || defined(_WIN64)
AO Interface Class.
Definition dlapi.h:689
virtual void getPosition(short &tip, short &tilt) const =0
Return the buffered Tip/Tilt position of the AO device.
virtual IPromisePtr setPosition(short tip, short tilt)=0
Set the Tip/Tilt position of the AO.
Model
Definition dlapi.h:708
@ UnknownAOModel
AO Model could not be ascertained.
Definition dlapi.h:709
@ AO8
AO-8 model of adaptive optics.
Definition dlapi.h:710
@ InvalidAOModel
AO model was not initialized.
Definition dlapi.h:712
@ AOX
AO-X model of adaptive optics.
Definition dlapi.h:711
virtual IPromisePtr queryStatus()=0
Query the status of the AO device.
virtual IAO::Status getStatus() const =0
Return the buffered status of the AO device.
virtual Model getModel() const =0
Get the model number of the connected AO device.
virtual void getLimits(size_t &tipMin, size_t &tipMax, size_t &tiltMin, size_t &tiltMax) const =0
Return limits for Tip/Tilt position of the AO device.
virtual IPromisePtr initialize()=0
Initialize the AO and retrieve basic model information.
Status
Definition dlapi.h:696
@ Idle
Peripheral is idle.
Definition dlapi.h:697
@ Error
Peripheral is in an error state.
Definition dlapi.h:699
@ Busy
Peripheral is busy.
Definition dlapi.h:698
@ InvalidAOStatus
Peripheral is uninitialized.
Definition dlapi.h:700
Camera interface class.
Definition dlapi.h:1632
virtual IPromisePtr queryCapability(ICamera::Capability key)=0
Queries a camera for a specific capability.
virtual IPromisePtr pulseGuide(EPulseGuideDirection direction, unsigned int duration, bool abort)=0
Executes or aborts a pulse guide operation of given duration and direction.
virtual TNetworkSettings getNetworkSettings() const =0
Returns the buffered network settings.
virtual bool getCapability(ICamera::Capability key) const =0
Returns the buffered value of a successful call to ICamera::queryCapability()
virtual EEndpointType getConnectionType() const =0
Returns the connection type of the camera (USB, Networked, etc).
virtual IPromisePtr queryNetworkSettings()=0
Queries the camera's network settings.
virtual ITECPtr getTEC() const =0
Returns a pointer to the camera's TEC (if one is available).
virtual IFWPtr getFW() const =0
Returns a pointer to the camera's FW (if one is available).
virtual ICamera::Info getInfo() const =0
Returns the buffered ICamera::Info structure.
virtual bool initialize()=0
Initializes the camera by fetching operational status, and initializing the various peripherals.
virtual IPromisePtr queryStatus()=0
Queries the camera's ICamera::Status structure.
virtual ISensorPtr getSensor(unsigned int id) const =0
Returns a pointer to the indexed sensor (zero is always the primary imaging chip).
State
Definition dlapi.h:1638
@ Error
Definition dlapi.h:1642
@ Ready
Definition dlapi.h:1641
@ Uninitialized
Definition dlapi.h:1639
@ Initializing
Definition dlapi.h:1640
Model
Definition dlapi.h:1649
@ AlumaAC2020
06 Aluma AC2020 only
Definition dlapi.h:1656
@ Aluma
00 Aluma and AlumaCCD model cameras
Definition dlapi.h:1650
@ InvalidCameraModel
Camera has not been initialized/reported invalid model.
Definition dlapi.h:1661
@ StarChaserC
08 CMOS variants of the StarChaser brand
Definition dlapi.h:1658
@ StarChaser4
08 StarChaser 4 (USB3 compatible variants)
Definition dlapi.h:1670
@ Reserved3
Definition dlapi.h:1664
@ StarChaserP3
Definition dlapi.h:1669
@ Reserved4
Historical Convenience.
Definition dlapi.h:1662
@ StarChaser
04 StarChaser model cameras
Definition dlapi.h:1654
@ StarChaserE
07 StarChaser E (new P3 variant)
Definition dlapi.h:1657
@ Reserved6
Definition dlapi.h:1665
@ STC
05 STC-7 and STC-428
Definition dlapi.h:1655
@ AlumaCMOS
03 Aluma AC4040 and AC4040BSI
Definition dlapi.h:1653
@ Reserved1
Definition dlapi.h:1668
@ Reserved8
Definition dlapi.h:1667
@ AlumaPro
01 Aluma Pro model cameras
Definition dlapi.h:1651
@ Reserved5
Definition dlapi.h:1663
@ Reserved7
Definition dlapi.h:1666
@ AlumaAC455
Definition dlapi.h:1659
@ Reserved2
02 Reserved for future use
Definition dlapi.h:1652
virtual void getConnectionInfo(char *buffer, size_t &buffer_length) const =0
Returns a human readable information string about the camera's connection (IP Address,...
Capability
Definition dlapi.h:1677
@ eSupportsGuidePort
Camera supports control of a guide system via a guide port.
Definition dlapi.h:1684
@ eSupportsInputVoltage
Definition dlapi.h:1693
@ eSupportsCoolerTemp
Camera supports querying of cooler temperature.
Definition dlapi.h:1680
@ eSupportsInternalStacking
Camera supports exposing as a series of short sub-exposures, stacked in the camera to a single images...
Definition dlapi.h:1688
@ eSupportsExtendedStartDownload
Definition dlapi.h:1692
@ eSupportsHeatSinkTemp
Camera supports querying of heat sink temperature.
Definition dlapi.h:1681
@ FirstSoftwareCapability
Definition dlapi.h:1705
@ eSupportsSensorGainOffset
Camera supports the control of ADC gain/offset manipulation.
Definition dlapi.h:1687
@ eSupportsOverscan
Definition dlapi.h:1694
@ eSupportsSoftwareBinMode
Definition dlapi.h:1702
@ eSupportsPeripheralInfo
Camera supports the retrieval of connected peripheral information.
Definition dlapi.h:1697
@ eSupportsWiFi
Camera supports communication over WiFi networks (and thus, the commands for network settings)
Definition dlapi.h:1685
@ eSupportsFan
Camera supports control of an internal fan.
Definition dlapi.h:1678
@ eSupportsFibreXferProtocol
Camera supports the new fibre optics streaming download.
Definition dlapi.h:1698
@ InvalidCameraCapability
Capability has not been initialized/reported an invalid/unsupported feature.
Definition dlapi.h:1707
@ eSupportsShutter
Camera supports the use of a shutter.
Definition dlapi.h:1690
@ CameraCapabilityCount
Number of camera capability keys to query.
Definition dlapi.h:1700
@ eSupportsAdjustableGain
Camera supports the use of adjustable analog gains.
Definition dlapi.h:1696
@ eSupportsPrecisionCoolerPower
Camera supports querying of precision cooler power, calculated in the camera (rather than converted b...
Definition dlapi.h:1691
@ eSupportsOnChipBinning
Definition dlapi.h:1695
@ eSupportsDefogHeater
Camera has a window heater for defogging the sensor window.
Definition dlapi.h:1686
@ eSupportsFastContinuousReadout
Camera supports continuous readout between exposures (i.e. when operated in "Fast Mode",...
Definition dlapi.h:1689
@ eSupportsFilterWheel
Camera supports control of Filter Wheel peripheral.
Definition dlapi.h:1683
@ eSupportsCooler
Camera supports control of an internal cooler.
Definition dlapi.h:1679
@ eSupportsAdaptiveOptics
Camera supports control of Adaptive Optics peripheral.
Definition dlapi.h:1682
@ SoftwareCapabilityCount
Definition dlapi.h:1704
virtual void getSerial(char *buffer, size_t &buffer_length) const =0
Returns a human readable version of the camera's serial number string. e.g. "AL8300M-19010101".
virtual ~ICamera()=0
virtual destructor ensuring the class is abstract.
virtual ICamera::Status getStatus() const =0
Returns the buffered status structure.
virtual IAOPtr getAO() const =0
Returns a pointer to the camera's AO (if one is available).
virtual IPromisePtr queryInfo()=0
Queries the camera's unit information structure (ICamera::Info)
virtual IPromisePtr setNetworkSettings(const TNetworkSettings &cfg)=0
Updates the camera's network settings.
An abstract interface that gives users access to debug logging controls \seealso IGateway,...
Definition dlapi.h:2296
virtual int getDebugSetting(IDebugControl::Setting setting) const =0
Gets a debug setting value.
virtual void setDebugSetting(IDebugControl::Setting setting, int val)=0
Sets debug setting value.
virtual bool hasDebugSetting(IDebugControl::Setting setting) const =0
Check if the IDebugControl instance supports a debug setting.
Setting
Definition dlapi.h:2298
@ First
Definition dlapi.h:2303
@ Last
Definition dlapi.h:2302
@ Enable
Enable: 0 = off, otherwise = on (getDebugSetting returns 1)
Definition dlapi.h:2299
@ Count
Definition dlapi.h:2301
virtual unsigned int getChildSlots(unsigned int) const =0
virtual unsigned int getChildCount() const =0
virtual const char * getModelName(unsigned int) const =0
virtual IFW::Model getChildModel(unsigned int) const =0
FW Interface Class.
Definition dlapi.h:804
virtual IPromisePtr initialize()=0
Initialize the filter wheel, and obtain basic model information.
virtual unsigned int getSlots() const =0
returns the number of slots the filter wheel has available.
Status
Definition dlapi.h:860
@ FWError
Filter Wheel has encountered an error.
Definition dlapi.h:863
@ InvalidFWStatus
Filter Wheel is uninitialized.
Definition dlapi.h:865
@ FWBusy
Filter Wheel is busy.
Definition dlapi.h:862
@ FWIdle
Filter Wheel is idle.
Definition dlapi.h:861
virtual int getPosition() const =0
Returns the buffered position of the filter wheel.
virtual IPromisePtr queryStatus()=0
Queries the status of the filter wheel.
virtual IFW::Status getStatus() const =0
Returns the buffered status of the filter wheel.
virtual IPromisePtr setPosition(int position)=0
Send a goto command to the filter wheel.
Model
Definition dlapi.h:811
@ AFW8
AFW-08 slot filter wheel.
Definition dlapi.h:843
@ UnknownFWModel
Used when an unknown FW model is reported by the camera.
Definition dlapi.h:812
@ AFW9
AFW-09 slot filter wheel.
Definition dlapi.h:842
@ AFW4
AFW-04 slot filter wheel.
Definition dlapi.h:847
@ FW8_STT
STT FW8
Definition dlapi.h:830
@ FW7_STX
STX FW7
Definition dlapi.h:829
@ CFW10
CFW10
Definition dlapi.h:820
@ CFW2
CFW2
Definition dlapi.h:814
@ Internal
STC Internal FW.
Definition dlapi.h:832
@ AFW3
AFW-03 slot filter wheel.
Definition dlapi.h:848
@ AFW13
AFW-13 slot filter wheel.
Definition dlapi.h:838
@ AFW14
AFW-14 slot filter wheel.
Definition dlapi.h:837
@ CFW5
CFW5
Definition dlapi.h:815
@ AFW10
AFW-10 slot filter wheel.
Definition dlapi.h:841
@ AFW11
AFW-11 slot filter wheel.
Definition dlapi.h:840
@ CFW1603
CFW1603
Definition dlapi.h:825
@ AFW15
AFW-15 slot filter wheel.
Definition dlapi.h:836
@ AFW16
AFW-16 slot filter wheel.
Definition dlapi.h:835
@ AFW6
AFW-06 slot filter wheel.
Definition dlapi.h:845
@ CFWL
CFWL
Definition dlapi.h:817
@ CFW402
CFW402
Definition dlapi.h:818
@ CFW8
CFW8
Definition dlapi.h:816
@ CFWL8
CFWL8
Definition dlapi.h:823
@ AFW12
AFW-12 slot filter wheel.
Definition dlapi.h:839
@ CFW9
CFW9
Definition dlapi.h:822
@ FW5_STF_DETENT
STF FW5 with detent
Definition dlapi.h:831
@ AFW2
AFW-02 slot filter wheel.
Definition dlapi.h:849
@ InvalidFWModel
Used for uninitialized variables.
Definition dlapi.h:853
@ CFW6A
CFW6A
Definition dlapi.h:819
@ CFW10_SERIAL
CFW10_SERIAL
Definition dlapi.h:821
@ FW5_STX
STX FW5
Definition dlapi.h:826
@ CFWL8G
CFWL8G
Definition dlapi.h:824
@ AFW5
AFW-05 slot filter wheel.
Definition dlapi.h:846
@ AFW7
AFW-07 slot filter wheel.
Definition dlapi.h:844
@ FW8_8300
STF-8300 FW8.
Definition dlapi.h:828
@ FW5_8300
STF-8300 FW5.
Definition dlapi.h:827
virtual IFW::Model getModel() const =0
Returns the model number of the attached filter wheel.
Gateway object for controlling device discovery, and lifetime management.
Definition dlapi.h:2075
virtual size_t getUSBCameraCount() const =0
Returns the number of cameras found via the last call to IGateway::queryUSBCameras().
virtual ICameraPtr getNetCamera(unsigned int id) const =0
Get a pointer to a camera found on the network via IGateway::queryNetCameras() with the given index,...
virtual size_t getCommProtocolVersion() const =0
Returns the maximum FPGA revision supported by this version of DLAPI.
virtual ICameraPtr getCamera(TConnectionDetails details) const =0
Fetches a pointer to a camera with the provided connection details (if one is available).
virtual void initNetworkConfig(const char *filePath)=0
Initializes the network configuration of UPD-capable cameras using a supplied YAML file.
virtual size_t getNetCameraCount() const =0
Returns the number of cameras found after a call to IGateway::queryNetCameras().
virtual ~IGateway()=0
Virtual destructor to ensure the class is an abstract.
virtual ICameraPtr getUSBCamera(unsigned int id) const =0
Returns a pointer to the camera with the supplied index, from zero to IGateway::getUSBCameraCount().
virtual void queryUSBCameras()=0
Query the computer for any DLAPI compliant cameras connected via USB.
virtual void initFitsDebugSettings()=0
virtual void queryNetCamera(const char *ip, size_t port)=0
Attempt to connect to a camera with the supplied IP Address and port.
virtual void queryNetCameras()=0
Broadcast and enumerate any DLAPI compliant cameras connected to your network.
virtual TConnectionDetails getCameraConnectionDetails(unsigned int serial) const =0
Returns the connection details for a camera with the provided serial number.
virtual ICameraPtr getNetCamera(const char *ip, unsigned int port) const =0
Get a pointer to a queried camera with a given IP and port, if it exists.
virtual void getExpMidpoint(char *pBuffer, size_t &lng) const =0
virtual TLayerMetadata getLayerMetadata(unsigned int layer) const =0
virtual size_t getLayerCount() const =0
Interface to an DLAPI Image buffer.
Definition dlapi.h:405
virtual unsigned short * getBufferData() const =0
Returns a pointer to the raw data buffer of the image.
virtual unsigned int getBufferLength() const =0
Returns the length in pixels of the raw data buffer of the image.
virtual TImageMetadata getMetadata() const =0
Returns the image metadata structure associated with the image.
Promise interface class.
Definition dlapi.h:537
virtual Status getStatus() const =0
Retrieve the status of the command the IPromise is tracking.
Status
Definition dlapi.h:545
@ Complete
Promise completed successfully.
Definition dlapi.h:548
@ Error
Promise completed with an error.
Definition dlapi.h:549
@ Idle
Promise has not yet begun execution.
Definition dlapi.h:546
@ InvalidFuture
Promise is uninstantiated.
Definition dlapi.h:551
@ Executing
Promise is currently being executed.
Definition dlapi.h:547
virtual EStatusCode getAPIStatusCode() const =0
Returns the API status code reported by the execution of the command.
virtual Status wait()=0
Wait (blocking) until the IPromise either completes, or returns an error (timing out at 10 seconds si...
virtual void release()=0
Flags the promise for release within DLAPI.
virtual void getLastError(char *buffer, size_t &bufferSize) const =0
Puts a human readable string into the supplied buffer containing the last known error for command the...
Sensor Interface Class.
Definition dlapi.h:973
virtual IPromisePtr queryCalibration()=0
Query the camera's ISensor::Calibration structure.
virtual IPromisePtr DebugStartExposure(unsigned int id, const char *exposureType, const TExposureOptions ¶ms)=0
Start an exposure using this sensor with aditional information. \id id of the exposure taken \exposur...
Setting
Definition dlapi.h:1044
@ UseExtTrigger
Enable use of external trigger. Set to non-zero to hold exposures in the "Wait for Trigger" state unt...
Definition dlapi.h:1052
@ UseFWAsShutter
Enable use of Filter Wheel as shutter. 0 is off, N on (where N is an integer value representing the s...
Definition dlapi.h:1057
@ SettingCount
The maximum number of settings available to the user.
Definition dlapi.h:1062
@ SoftwareSettingCount
Definition dlapi.h:1067
@ ShutterPolarity
Sets the polarity of a solenoid shutter. Typically only needs to be set once by the factory....
Definition dlapi.h:1054
@ InvalidSensorSetting
Uninitialized sensor setting, not for external use.
Definition dlapi.h:1072
@ FanSpeed
Control the speed of the camera's fan.
Definition dlapi.h:1049
@ ToggleIRLEDs
Control the RBI Preflash IR LEDs on the camera. Used for testing purposes. 0 means off,...
Definition dlapi.h:1050
@ EnableStatusLED
When this setting is set to zero, it turns off the camera's status LED at all times....
Definition dlapi.h:1055
@ ContinuousExposure
Control continuous exposure mode. 0 = off, otherwise on. StartExposure begins repeated exposures as s...
Definition dlapi.h:1060
@ FirstSoftwareSetting
Definition dlapi.h:1070
@ SoftwareBinMode
Selects the algorithm for software binning. See also: ISensor::SoftwareBinningMode.
Definition dlapi.h:1065
@ UseOverscan
Use the sensor's overscan region in exposures. This is off by default. Enabling this changes ISensor:...
Definition dlapi.h:1045
@ RBIPreflashDuration
The duration of an RBI flash before exposures, value is stored in milliseconds.
Definition dlapi.h:1046
@ UseOnChipBinning
Enable use of on-chip binning for main sensor.
Definition dlapi.h:1051
@ PartialExposureLength
This number is an integer (in increments of 1 second) controlling the length of sub-exposures when ta...
Definition dlapi.h:1056
@ UseWindowHeater
Toggles a sensor's window heater to prevent fog/frost.
Definition dlapi.h:1048
@ AutoFanMode
Enable use of self-regulating fan algorithm.
Definition dlapi.h:1053
@ AnalogGain0
Control analog gain for cameras supporting adjustable gain modes (e.g. High-Gain mode in an AC4040)
Definition dlapi.h:1058
@ FirstSensorSetting
The first index of a sensor setting. (In this case, ISensor::UseOverscan)
Definition dlapi.h:1069
@ AnalogGain1
Control analog gain for cameras supporting adjustable gain modes (e.g. Low-Gain mode in an AC4040)
Definition dlapi.h:1059
@ RBIPreflashFlushCount
The number of post-flash flushes performed before an exposure.
Definition dlapi.h:1047
virtual IImagePtr getImage() const =0
Returns the ISensor's buffered image.
virtual void getReadoutModes(char *buf, size_t &lng) const =0
Returns a list of human readable readout modes (the index of each entry corresponding to TExposureOpt...
virtual int getSetting(ISensor::Setting key) const =0
Returns the requested setting value.
virtual IPromisePtr startDownload()=0
Start downloading an image from the camera to DLAPI's internal buffers.
Status
Definition dlapi.h:1023
@ ReadyToDownload
Sensor is ready to transfer the image.
Definition dlapi.h:1033
@ Starting
Sensor is starting the exposure.
Definition dlapi.h:1029
@ Reading
Sensor is reading data to buffer.
Definition dlapi.h:1032
@ PreShutter
Sensor is preparing for shutter movement.
Definition dlapi.h:1027
@ DoShutterClose
Sensor is closing the shutter post-exposure.
Definition dlapi.h:1031
@ Idle
Sensor is in idle state, and can accept ISensor::startExposure() commands.
Definition dlapi.h:1025
@ InvalidSensorState
The sensor status is uninitialized.
Definition dlapi.h:1036
@ Exposing
Sensor is exposing.
Definition dlapi.h:1030
@ Trigger
Sensor is waiting for trigger.
Definition dlapi.h:1026
@ DoShutterOpen
Sensor is opening the shutter.
Definition dlapi.h:1028
@ HomingShutter
Sensor is waiting for the shutter to return home. Sensor is busy, and is unable to start an exposure ...
Definition dlapi.h:1034
virtual IPromisePtr setSubframe(const TSubframe &value)=0
Update the camera's active subframe.
virtual ISensor::Settings getSettings() const =0
Returns the buffered ISensor::Settings structure.
virtual const unsigned int getSensorId() const =0
Returns the sensor index of the specified sensor (within ICamera)
virtual IPromisePtr abortExposure()=0
Abort any exposures/downloads either in progress, or waiting for user input.
virtual IPromisePtr querySetting(ISensor::Setting setting)=0
Query a specific value with an ISensor::Setting key from the camera.
virtual IPromisePtr queryInfo()=0
Query the camera's ISensor::Info structure.
virtual unsigned int getCalibration(ISensor::CalibrationKey key, int subkey)=0
AdjustableGainMode
Definition dlapi.h:1554
@ eAdjustableADCGain1
Definition dlapi.h:1556
@ eAdjustableADCGainCount
Definition dlapi.h:1558
@ eAdjustableADCGainFirst
Definition dlapi.h:1559
@ eAdjustableGainAC4040LoGain
Definition dlapi.h:1562
@ eAdjustableGainAC4040HiGain
Definition dlapi.h:1561
@ eAdjustableADCGain0
Definition dlapi.h:1555
SoftwareBinningMode
Definition dlapi.h:1076
virtual ISensor::Calibration getCalibration() const =0
Returns the buffered ISensor::Calibration structure.
Model
Definition dlapi.h:980
@ IMX455
Sony IMX455.
Definition dlapi.h:1013
@ InvalidSensorModel
Uninitialized sensor model value.
Definition dlapi.h:1015
@ IMX428_7
Sony IMX428 (STC-7 Variant)
Definition dlapi.h:1009
@ RESERVED4
Reserved for future use.
Definition dlapi.h:988
@ IMX290
Sony IMX290.
Definition dlapi.h:1011
@ RESERVED7
Reserved for future use.
Definition dlapi.h:994
@ KAF8300
Kodak KAF 8300.
Definition dlapi.h:992
@ ICX694
Sony ICX694.
Definition dlapi.h:983
@ RESERVED8
Reserved for future use.
Definition dlapi.h:995
@ IMX428
Sony IMX428.
Definition dlapi.h:1008
@ RESERVED2
Reserved for future use.
Definition dlapi.h:982
@ P1300
Python 1300.
Definition dlapi.h:1006
@ KAF3200
Kodak KAF 3200.
Definition dlapi.h:991
@ GSENSE4040
GPixel GSENSE4040.
Definition dlapi.h:1001
@ GSENSE4040BSI
GPixel GSENSE4040 BSI.
Definition dlapi.h:1002
@ RESERVED6
Reserved for future use.
Definition dlapi.h:990
@ CCD4710
CCD 47-10.
Definition dlapi.h:985
@ RESERVED5
Reserved for future use.
Definition dlapi.h:989
@ RESERVED3
Reserved for future use.
Definition dlapi.h:987
@ RESERVEDB1
Reserved for subvariant 1.
Definition dlapi.h:997
@ CCD7700
CCD 77-00.
Definition dlapi.h:986
@ RESERVEDC1
Reserved for subvariant 3.
Definition dlapi.h:999
@ RESERVED1
Reserved for future use.
Definition dlapi.h:981
@ ICX814
Sony ICX814.
Definition dlapi.h:984
@ GSENSE2020
GPixel GSENSE2020.
Definition dlapi.h:1004
CalibrationKey
Definition dlapi.h:1086
@ EGain
Definition dlapi.h:1087
@ DriftStabilization
Definition dlapi.h:1088
@ InvalidCalibrationKey
Definition dlapi.h:1092
@ FirstCalibrationKey
Definition dlapi.h:1091
@ CalibrationCount
Definition dlapi.h:1090
virtual IPromisePtr querySubframe()=0
Query the camera's current subframe.
virtual unsigned int getAdjustableGainCount(AdjustableGainMode mode) const =0
getAdjustableGainCount()
virtual IPromisePtr startExposure(const TExposureOptions ¶ms)=0
Start an exposure using this sensor.
virtual void getAdjustableGains(AdjustableGainMode mode, int *pGainEntries, unsigned int &gainEntryCount) const =0
getAdjustableGains()
virtual IPromisePtr queryCalibration(ISensor::CalibrationKey key, int subkey)=0
virtual IPromisePtr setSetting(ISensor::Setting key, int value)=0
Update an ISensor::Setting value in the camera by key.
virtual ISensor::Info getInfo() const =0
Returns the buffered ISensor::Info structure.
virtual TSubframe getSubframe() const =0
Returns the sensor's buffered TSubframe structure.
virtual unsigned int getDefaultAdjustableGain(AdjustableGainMode mode) const =0
getDefaultAdjustableGain()
TEC interface class.
Definition dlapi.h:617
virtual float getCoolerPower() const =0
Returns the current cooler power in percent of max power draw.
virtual float getSensorThermopileTemperature() const =0
Return the value of the sensor's thermopile in degrees Celsius.
virtual float getHeatSinkThermopileTemperature() const =0
Return the value of the heatsink's thermopile in degrees Celsius.
virtual IPromisePtr setState(bool enable, float setpoint)=0
Toggles the TEC's operation status, and updates the TEC's setpoint.
virtual float getSetpoint() const =0
Returns the value of the cooler's setpoint in degrees Celsius.
virtual bool getEnabled() const =0
true if TEC has been enabled, false otherwise.
virtual void setConnection(bool enable)=0
virtual bool getConnection() const =0
#define DL_API
Definition dlapi.h:39
#define MYCDECL
Definition dlapi.h:41
static const unsigned char badCalibration
AO is not calibrated.
Definition dlapi.h:211
static const unsigned char statusMask
Mask for the AO error flags.
Definition dlapi.h:209
static const unsigned char busy
AO is busy.
Definition dlapi.h:210
static const unsigned char reserved
Reserved for future use.
Definition dlapi.h:212
static const unsigned char badCommand
Bad Command.
Definition dlapi.h:213
static const int SensorThermistorErrorFlag
Definition dlapi.h:201
static const int HeatSinkThermistorErrorFlag
Definition dlapi.h:202
static const int ThermistorErrorFlagMask
Definition dlapi.h:200
static const unsigned char c_yBusy
This bit is set to high when the y-axis guider port is busy.
Definition dlapi.h:225
static const unsigned char c_xBusy
This bit is set to high when the x-axis guider port is busy.
Definition dlapi.h:224
dl::ICamera ICamera
Definition dlapi.h:2027
dl::ICamera * ICameraPtr
Definition dlapi.h:2028
IConnectionManager * IConnectionManagerPtr
Definition dlapi.h:2039
Top-level namespace containing all of DLAPI.
Definition dlapi.h:71
EFrameType
Sensor's readout frame typeid.
Definition dlapi.h:135
@ Interline
Interline sensor.
Definition dlapi.h:137
@ BayerInterline
Bayer/SparseColor interline sensors.
Definition dlapi.h:138
@ Progressive
Progressive, full-frame sensor.
Definition dlapi.h:136
@ GlobalShutter
Global Shutter for CMOS sensors.
Definition dlapi.h:140
@ InvalidFrameType
Frame type is invalid or uninitialized.
Definition dlapi.h:141
@ RollingShutter
Rolling Shutter for CMOS sensors.
Definition dlapi.h:139
ISensor * ISensorPtr
Convenience typedef for ISensor pointers.
Definition dlapi.h:1612
ITEC * ITECPtr
Convenience typedef for ITEC pointers.
Definition dlapi.h:680
EEndpointType
Camera's connection endpoint type (networked, USB, etc)
Definition dlapi.h:179
@ Net
A UDP over Ethernet/WiFi endpoint.
Definition dlapi.h:180
@ FirstEndpointType
A convenience definition for determining the first endpoint type.
Definition dlapi.h:187
@ USB3
A USB3.0 endpoint.
Definition dlapi.h:182
@ USB
A USB endpoint.
Definition dlapi.h:181
@ RAW
A direct-connect interface for raw I/O over Ethernet II Frames.
Definition dlapi.h:183
@ LastEndpointType
A convenience definition for determining the last endpoint type.
Definition dlapi.h:186
@ EndpointTypeCount
A convenience definition for determining the number of endpoint types.
Definition dlapi.h:185
@ InvalidEndpoint
The endpoint is either invalid, or uninitialized.
Definition dlapi.h:188
IPromise * IPromisePtr
Convenience typedef for IPromise pointers.
Definition dlapi.h:605
IAO * IAOPtr
Convenience typedef for IAO pointers.
Definition dlapi.h:796
DL_API IGatewayPtr MYCDECL getGateway()
Returns a pointer to an instance of a Gateway object, or (if one exists) return the existing pointer ...
EStatusCode
Status codes returned by a camera with every message response.
Definition dlapi.h:77
@ DeviceBusy
Catch-all for device busy errors.
Definition dlapi.h:94
@ ClientError
Start of client-side error codes.
Definition dlapi.h:81
@ InvalidParameter
Invalid parameter passed in request body.
Definition dlapi.h:88
@ InvalidStatus
Unknown status response from camera.
Definition dlapi.h:101
@ InvalidFooterType
Invalid footer typeid supplied in request.
Definition dlapi.h:85
@ InvalidHeaderType
Invalid header typeid supplied in request.
Definition dlapi.h:83
@ ImageNotAvailable
Image Transfer was requested, but no image is ready for download
Definition dlapi.h:97
@ InvalidSensorId
Invalid sensor ID number supplied in request.
Definition dlapi.h:86
@ UnsupportedBodyType
Invalid/unsupported body type supplied in request header.
Definition dlapi.h:89
@ BadChecksum
Message with CRC checksum failed validation. Resend message.
Definition dlapi.h:90
@ Success
Device reports command executed successfully, and without error.
Definition dlapi.h:78
@ ReadoutInProgress
Device has a frame readout in progress and cannot comply [[deprecated]].
Definition dlapi.h:96
@ InvalidSoh
Invalid message start-of-header byte.
Definition dlapi.h:82
@ ExposureInProgress
Device has an exposure in progress and cannot comply [[deprecated]].
Definition dlapi.h:95
@ FeatureNotSupported
Camera does not support the requested feature.
Definition dlapi.h:98
@ InvalidBodyType
Invalid body typeid supplied in request.
Definition dlapi.h:84
@ InvalidMessageLength
Invalid message length supplied in request.
Definition dlapi.h:87
@ DeviceError
Start of device-side error codes.
Definition dlapi.h:93
EPulseGuideDirection
Bases for pulse guiding.
Definition dlapi.h:110
@ South
South (- declination/altitude)
Definition dlapi.h:112
@ West
West (- right ascension/azimuth)
Definition dlapi.h:114
@ East
East (+ right ascension/azimuth)
Definition dlapi.h:113
@ North
North (+ declination/altitude)
Definition dlapi.h:111
IFW * IFWPtr
Convenience typedef for IFW pointers.
Definition dlapi.h:954
ENetworkMode
Network Connection type/security for WiFi operation.
Definition dlapi.h:166
@ AdHoc
Use an ad-hoc network. More details coming.
Definition dlapi.h:167
@ Open
Connect to an open network specified via ICamera::setNetworkSettings(), retrieved using ICamera::getN...
Definition dlapi.h:168
@ WEP
Connect to a WEP secured network specified via ICamera::setNetworkSettings(), retrieved using ICamera...
Definition dlapi.h:169
@ InvalidNetworkMode
Network mode is either invalid, or uninitialized.
Definition dlapi.h:172
@ WPA2
Connect to a WPA 2 secured network specified via ICamera::setNetworkSettings(), retrieved using ICame...
Definition dlapi.h:171
@ WPA
Connect to a WPA 1 secured network specified via ICamera::setNetworkSettings(), retrieved using ICame...
Definition dlapi.h:170
DL_API void MYCDECL deleteGateway(IGatewayPtr)
Decrement the internal count of IGateway pointers supplied, and delete the active IGateway instance w...
IImage * IImagePtr
Convenience typedef for IImage pointers.
Definition dlapi.h:436
IImageExt * IImageExtPtr
Definition dlapi.h:461
IGateway * IGatewayPtr
Convenience typedef for IGateway pointers.
Definition dlapi.h:2275
EShutterStatus
Status of sensor's shutter.
Definition dlapi.h:149
@ ShutterOpening
Shutter is moving to opened state.
Definition dlapi.h:153
@ ShutterOpen
Shutter is open.
Definition dlapi.h:151
@ ShutterRolling
for future use in Aluma Pro.
Definition dlapi.h:154
@ ShutterUninitialized
Shutter state is uninitialized.
Definition dlapi.h:158
@ ShutterError
for future use in Aluma Pro
Definition dlapi.h:156
@ ShutterExercising
Shutter is in exercising state, more details coming.
Definition dlapi.h:155
@ ShutterClosing
Shutter is moving to closed state.
Definition dlapi.h:152
@ ShutterClosed
Shutter is closed.
Definition dlapi.h:150
EFilterType
Definition dlapi.h:122
@ Monochrome
Monochrome filter on sensor.
Definition dlapi.h:123
@ Color
Bayer color filter on sensor.
Definition dlapi.h:124
@ InvalidFilterType
Filter type is invalid or uninitialized.
Definition dlapi.h:126
@ SparseColor
TrueSense Sparse Color filter on sensor.
Definition dlapi.h:125
IFWExtended * IFWExtendedPtr
Definition dlapi.h:965
ICamera * ICameraPtr
Convenience typedef for ICamera pointers.
Definition dlapi.h:2042
unsigned char numberOfSensors
Number of sensors connected to the camera.
Definition dlapi.h:1753
unsigned int wifiFirmwareRevision
Revision number of the camera's WiFi firmware.
Definition dlapi.h:1752
unsigned int serialNumber
Encoded serial number of the sensor, use ICamera::getSerial() for human readable string version.
Definition dlapi.h:1750
unsigned int firmwareRevision
Revision number of the camera's Gate Array firmware.
Definition dlapi.h:1751
ICamera::Model model
Model of the camera.
Definition dlapi.h:1749
Info()
Default constructor.
Definition dlapi.h:1755
ISensor::Status mainSensorState
Main sensor state.
Definition dlapi.h:1721
float heatSinkTemperature
Heat Sink Temperature Reading.
Definition dlapi.h:1725
ISensor::Status extSensorState
External sensor state.
Definition dlapi.h:1722
float sensorTemperature
Sensor Temperature Reading.
Definition dlapi.h:1723
float inputVoltage
Input Voltage Reading from the power supply.
Definition dlapi.h:1726
Status()
Definition dlapi.h:1731
unsigned int pulseGuideStatus
Status of the pulse guide relays. /seealso PulseGuideStatus.
Definition dlapi.h:1727
float coolerPower
Cooler Power Reading.
Definition dlapi.h:1724
unsigned int flag
Reserved for future use.
Definition dlapi.h:1728
EShutterStatus shutterStatus
Main sensor shutter status.
Definition dlapi.h:1729
A data structure containing all factory-calibrated sensor characterization.
Definition dlapi.h:1130
unsigned int channelsInUse
Number of readout channels the API can make use of.
Definition dlapi.h:1132
unsigned int substrateVoltage
Sensor's substrate voltage in mV.
Definition dlapi.h:1131
unsigned int adcGains[4]
Array of Analog-to-Digital Converter gains in ADC, one per channel. Diffraction Limited strongly advi...
Definition dlapi.h:1133
float eGain
Measured eGain in e-/ADU.
Definition dlapi.h:1135
int adcOffsets[4]
Array of Analog-to-Digital Converter offsets in ADC, one per channel. Diffraction Limited strongly ad...
Definition dlapi.h:1134
A data structure containing sensor specifications.
Definition dlapi.h:1103
unsigned int pixelsY
The sensor's pixel count in the y-axis. Changes when ISensor::Setting::UseOverscan is toggled.
Definition dlapi.h:1107
FilterType filterType
The sensor's filter type.
Definition dlapi.h:1109
EFrameType frameType
The sensor's frame type.
Definition dlapi.h:1110
unsigned int maxBinX
Maximum binning of the sensor on the x-axis.
Definition dlapi.h:1115
float minExposureDuration
Minimum exposure duration in seconds.
Definition dlapi.h:1117
int minCoolerSetpoint
Minimum cooler setpoint in degrees Celsius.
Definition dlapi.h:1113
int maxCoolerSetpoint
Maximum cooler setpoint in degrees Celsius.
Definition dlapi.h:1114
unsigned char flag
Reserved for future use.
Definition dlapi.h:1120
float pixelSizeY
The sensor's pixel height in micrometers.
Definition dlapi.h:1112
bool hasRBIPreflash
true if the sensor has RBI preflash, false otherwise.
Definition dlapi.h:1119
unsigned int id
The sensor's internal ID (0 is the main sensor, 1 is the external sensor, etc).
Definition dlapi.h:1104
float exposurePrecision
Minimum increment of exposure duration in seconds.
Definition dlapi.h:1118
unsigned int maxBinY
Maximum binning of the sensor on the y-axis.
Definition dlapi.h:1116
unsigned int numberOfChannelsAvailable
The maximum number of readout channels the sensor has available for use.
Definition dlapi.h:1108
ISensor::Model model
The sensor's model.
Definition dlapi.h:1105
unsigned int pixelsX
The sensor's pixel count in the x-axis. Changes when ISensor::Setting::UseOverscan is toggled.
Definition dlapi.h:1106
float pixelSizeX
The sensor's pixel width in micrometers.
Definition dlapi.h:1111
RBI Preflash parametrization data structure.
Definition dlapi.h:1155
int flushes
Number of post-flash flushes. Defaults to 3.
Definition dlapi.h:1157
int duration
Duration of the pre-exposure flash in milliseconds. Defaults to 4000.
Definition dlapi.h:1156
C-style settings structure with built-in type conversion.
Definition dlapi.h:1147
bool autoFanSpeed
Use automatic fan speed control algorithm.
Definition dlapi.h:1166
bool useOnChipBinning
Use on-chip binning.
Definition dlapi.h:1164
bool enableIRLEDs
enable RBI Preflash IR LEDs for testing purposes
Definition dlapi.h:1163
bool useWindowHeater
true to turn on the camera's window heater. false to turn it off.
Definition dlapi.h:1162
int shutterPolarity
controls the polarity of solenoid shutters. Only needs to be changed if shutter operation is inverted...
Definition dlapi.h:1167
int partialExposureLength
controls the length of sub-exposures during internal stacking exposures (in 1 second increments)
Definition dlapi.h:1169
int fanSpeed
controls the fan speed of the camera. Fan speeds: high = 255, medium = 200, low = 150,...
Definition dlapi.h:1160
struct dl::ISensor::Settings::RBIPreflashSettings rbiPreflash
RBI preflash settings.
int useFWAsShutter
true to use the connected filter wheel as a shutter (use the index of the slot, starting from 1),...
Definition dlapi.h:1170
bool enableStatusLED
enables/disables the status LED on the side of the camera. non-zero enables it, zero disables it....
Definition dlapi.h:1168
bool useExtTrigger
Wait for external trigger during exposures.
Definition dlapi.h:1165
bool useOverscan
true to enable the sensor's overscan region, or false to disable it. Defaults to false....
Definition dlapi.h:1161
Network connection detail structure.
Definition dlapi.h:357
unsigned int serialNumber
The ICamera::Info::serialNumber to query--not the human readable serial number string.
Definition dlapi.h:358
EEndpointType endpointType
Type of endpoint to connect to. Not needed in IGateway::GetCameraBySerial()
Definition dlapi.h:359
TConnectionDetails()
Default constructor for the struct.
Definition dlapi.h:362
size_t index
The Internal index of the camera to connect to (depends on EEndpointType). Not needed in IGateway::Ge...
Definition dlapi.h:360
A collection of exposure parameters required for starting an exposure.
Definition dlapi.h:257
char binX
[[deprecated]] Binning of the exposure in the x-direction in pixels. Is unused, and will go away in f...
Definition dlapi.h:260
bool useRBIPreflash
true to perform an RBI Preflash operation (if the camera supports it) before the exposure....
Definition dlapi.h:263
float duration
Duration of the exposure in seconds.
Definition dlapi.h:258
unsigned int readoutMode
The index of the readout mode to use in the exposure. This is the index of the readout mode chosen fr...
Definition dlapi.h:259
char binY
[[deprecated]] Binning of the exposure in the y-direction in pixels. Is unused, and will go away in f...
Definition dlapi.h:261
bool isLightFrame
true if the exposure is a light frame, false otherwise.
Definition dlapi.h:262
bool useExtTrigger
true to wait for an external trigger before executing the exposure. Consult your camera's user manual...
Definition dlapi.h:264
A collection of wireless network configuration settings.
Definition dlapi.h:298
unsigned int ssidLength
Length of the SSID string.
Definition dlapi.h:299
unsigned int passphraseLength
Length of the passphrase string.
Definition dlapi.h:300
bool isPassphraseHex
true to treat the passphrase as hex pairs, false to treat it as an ASCII phrase.
Definition dlapi.h:305
ENetworkMode mode
The networking mode. Changing this value requires a reboot of the camera.
Definition dlapi.h:301
bool isUsaCanadaMode
true to enable USA/Canada mode. (More details to come)
Definition dlapi.h:304
char passphrase[64]
String containing the passphrase of the camera's network settings.
Definition dlapi.h:303
char ssid[32]
String containing the SSID of the camera's network settings.
Definition dlapi.h:302
A collection of frame parameters, required for specifying the dimensions of an image.
Definition dlapi.h:275
int height
The frame's height in pixels.
Definition dlapi.h:279
int binX
The frame's x-binning in pixels.
Definition dlapi.h:280
int top
The frame's y-offset from the sensor's origin in pixels.
Definition dlapi.h:276
int left
The frame's x-offset from the sensor's origin in pixels.
Definition dlapi.h:277
int width
The frame's width in pixels.
Definition dlapi.h:278
int binY
The frame's y-binning in pixels.
Definition dlapi.h:281