Show / Hide Table of Contents

Interface ICamera

Defines the capabilities supported by an ASCOM Alpaca Camera device

Inherited Members
IDevice.DeviceNumber
IDevice.InvokeAction(String, String)
IDevice.SendCommandBlind(String, Boolean)
IDevice.SendCommandBool(String, Boolean)
IDevice.SendCommandString(String, Boolean)
IDevice.IsConnected()
IDevice.SetConnected(Boolean)
IDevice.GetDescription()
IDevice.GetDriverInfo()
IDevice.GetDriverVersion()
IDevice.GetInterfaceVersion()
IDevice.GetName()
IDevice.GetSupportedActions()
Namespace: ES.Ascom.Alpaca.Devices
Assembly: ES.Ascom.Alpaca.Shared.dll
Syntax
public interface ICamera : IDevice

Methods

| Improve this Doc View Source

AbortExposure()

Aborts the current exposure, if any, and returns the camera to Idle state.

Declaration
void AbortExposure()
| Improve this Doc View Source

CanAbortExposure()

Indicates whether the camera can abort exposures.

Declaration
bool CanAbortExposure()
Returns
Type Description
System.Boolean

Returns true if the camera can abort exposures; false if not.

| Improve this Doc View Source

CanAsymmetricBin()

Indicates whether the camera supports asymmetric binning

Declaration
bool CanAsymmetricBin()
Returns
Type Description
System.Boolean

Returns true if the camera supports asymmetric binning; false if not.

| Improve this Doc View Source

CanFastReadout()

Indicates whether the camera has a fast readout mode.

Declaration
bool CanFastReadout()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

CanGetCoolerPower()

Indicates whether the camera's cooler power setting can be read.

Declaration
bool CanGetCoolerPower()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

CanPulseGuide()

Returns a flag indicating whether this camera supports pulse guiding

Declaration
bool CanPulseGuide()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

CanSetCCDTemperature()

Returns a flag indicating whether this camera supports setting the CCD temperature

Declaration
bool CanSetCCDTemperature()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

CanStopExposure()

Returns a flag indicating whether this camera can stop an exposure that is in progress

Declaration
bool CanStopExposure()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

GetBayerOffsetX()

Returns the X offset of the Bayer matrix, as defined in SensorType.

Declaration
int GetBayerOffsetX()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetBayerOffsetY()

Returns the Y offset of the Bayer matrix, as defined in SensorType.

Declaration
int GetBayerOffsetY()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetBinX()

Returns the binning factor for the X axis.

Declaration
int GetBinX()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetBinY()

Returns the binning factor for the Y axis.

Declaration
int GetBinY()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetCameraState()

Returns the current camera operational state

Declaration
CameraState GetCameraState()
Returns
Type Description
CameraState
| Improve this Doc View Source

GetCameraXSize()

Returns the width of the CCD camera chip in unbinned pixels.

Declaration
int GetCameraXSize()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetCameraYSize()

Returns the height of the CCD camera chip in unbinned pixels.

Declaration
int GetCameraYSize()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetCCDTemperature()

Returns the current CCD temperature in degrees Celsius.

Declaration
double GetCCDTemperature()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetCCDTemperatureSetPoint()

Returns the current camera cooler setpoint in degrees Celsius.

Declaration
double GetCCDTemperatureSetPoint()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetCoolerPower()

Returns the present cooler power level, in percent.

Declaration
double GetCoolerPower()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetElectronPerADU()

Returns the gain of the camera in photoelectrons per A/D unit.

Declaration
double GetElectronPerADU()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetExposureMax()

Returns the maximum exposure time supported by StartExposure.

Declaration
double GetExposureMax()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetExposureMin()

Returns the Minimium exposure time in seconds that the camera supports through StartExposure.

Declaration
double GetExposureMin()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetExposureResolution()

Returns the smallest increment in exposure time supported by StartExposure.

Declaration
double GetExposureResolution()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetFullWellCapacity()

Reports the full well capacity of the camera in electrons, at the current camera settings (binning, SetupDialog settings, etc.).

Declaration
double GetFullWellCapacity()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetGain()

Returns an index into the Gains array for the selected camera gain.

Declaration
int GetGain()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetGainMax()

Returns the maximum value of Gain.

Declaration
int GetGainMax()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetGainMin()

Returns the minimum value of Gain.

Declaration
int GetGainMin()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetGains()

Returns the Gains supported by the camera.

Declaration
IList<string> GetGains()
Returns
Type Description
System.Collections.Generic.IList<System.String>
| Improve this Doc View Source

GetHeatSinkTemperature()

Returns the current heat sink temperature (called "ambient temperature" by some manufacturers) in degrees Celsius.

Declaration
double GetHeatSinkTemperature()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetImageArray()

Returns an array of integers containing the exposure pixel values", "description": "Returns an array of 32bit integers containing the pixel values from the last exposure. This call can return either a 2 dimension (monochrome images) or 3 dimension (colour or multi-plane images) array of size NumX * NumY or NumX * NumY * NumPlanes. Where applicable, the size of NumPlanes has to be determined by inspection of the returned Array.

Since 32bit integers are always returned by this call, the returned JSON Type value (0 = Unknown, 1 = short(16bit), 2 = int(32bit), 3 = Double) is always 2. The number of planes is given in the returned Rank value.

When de-serialising to an object it helps enormously to know the array Rank beforehand so that the correct data class can be used. This can be achieved through a regular expression or by direct parsing of the returned JSON string to extract the Type and Rank values before de-serialising.

This regular expression accomplishes the etraction into two named groups Type and Rank

^"Type":(?<Type>\d),"Rank":(?<Rank>\d*)

which can then be used to select the correct de-serialisation data class.

Declaration
Array GetImageArray()
Returns
Type Description
System.Array
| Improve this Doc View Source

GetImageArrayVariant()

Returns an array containing the pixel values from the last exposure. This call can return either a 2 dimension (monochrome images) or 3 dimension (colour or multi-plane images) array of size NumX * NumY or NumX * NumY * NumPlanes. Where applicable, the size of NumPlanes has to be determined by inspection of the returned Array.

This call can return values as short(16bit) integers, int(32bit) integers or double floating point values. The nature of the returned values is given in the Type parameter: 0 = Unknown, 1 = short(16bit), 2 = int(32bit), 3 = Double. The number of planes is given in the returned Rank value.

When deserialising to an object it helps enormously to know the Type and Rank beforehand so that the correct data class can be used. This can be achieved through a regular expression or by direct parsing of the returned JSON string to extract the Type and Rank values before deserialising.

This regular expression accomplishes the extraction into two named groups: Type and Rank:

^*&quot;Type&quot;:(?&lt;Type>\\d*),&quot;Rank&quot;:(?&lt;Rank>\\d*)

which can then be used to select the correct deserialisation data class.

Declaration
Array GetImageArrayVariant()
Returns
Type Description
System.Array
| Improve this Doc View Source

GetLastExposureDuration()

Get the duration of the last exposure in seconds (i.e. shutter open time).

Declaration
double GetLastExposureDuration()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetLastExposureStartTime()

Start time of the last exposure in FITS standard format. (CCYY-MM-DDThh:mm:ss[.sss...])

Declaration
DateTime GetLastExposureStartTime()
Returns
Type Description
System.DateTime
| Improve this Doc View Source

GetMaxADU()

Reports the maximum ADU value the camera can produce.

Declaration
int GetMaxADU()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetMaxBinX()

Returns the maximum allowed binning for the X camera axis

Declaration
int GetMaxBinX()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetMaxBinY()

Returns the maximum allowed binning for the Y camera axis

Declaration
int GetMaxBinY()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetNumX()

Returns the current subframe width, if binning is active, value is in binned pixels.

Declaration
int GetNumX()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetNumY()

Returns the current subframe height, if binning is active, value is in binned pixels.

Declaration
int GetNumY()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetPercentCompleted()

Returns the percentage of the current operation that is complete. If valid, returns an integer between 0 and 100, where 0 indicates 0% progress (function just started) and 100 indicates 100% progress (i.e. completion).

Declaration
int GetPercentCompleted()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetPixelSizeX()

Returns the width of the CCD chip pixels in microns.

Declaration
double GetPixelSizeX()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetPixelSizeY()

Returns the height of the CCD chip pixels in microns.

Declaration
double GetPixelSizeY()
Returns
Type Description
System.Double
| Improve this Doc View Source

GetReadoutMode()

Indicates the canera's readout mode as an index into the array ReadoutModes. ReadoutMode is an index into the array ReadoutModes and returns the desired readout mode for the camera. Defaults to 0 if not set.

Declaration
int GetReadoutMode()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetReadoutModes()

Get the list of available readout modes. This property provides an array of strings, each of which describes an available readout mode of the camera. At least one string must be present in the list.

Declaration
IList<string> GetReadoutModes()
Returns
Type Description
System.Collections.Generic.IList<System.String>
| Improve this Doc View Source

GetSensorName()

Gets the name of the sensor used within the camera.

Declaration
string GetSensorName()
Returns
Type Description
System.String
| Improve this Doc View Source

GetSensorType()

Returns a value indicating whether the sensor is monochrome, or what Bayer matrix it encodes. Please see the ASCOM Help file for more informaiton on the SensorType.

Declaration
SensorType GetSensorType()
Returns
Type Description
SensorType
| Improve this Doc View Source

GetStartX()

Gets the subframe start position for the X axis (0 based). If binning is active, value is in binned pixels.

Declaration
int GetStartX()
Returns
Type Description
System.Int32
| Improve this Doc View Source

GetStartY()

Gets the subframe start position for the Y axis (0 based). If binning is active, value is in binned pixels.

Declaration
int GetStartY()
Returns
Type Description
System.Int32
| Improve this Doc View Source

HasShutter()

Indicates whether the camera has a mechanical shutter

Declaration
bool HasShutter()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

IsCoolerOn()

Returns the current cooler on/off state.

Declaration
bool IsCoolerOn()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

IsFastReadout()

Returns whether Fast Readout Mode is enabled.

Declaration
bool IsFastReadout()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

IsImageReady()

Indicates that an image is ready to be downloaded

Declaration
bool IsImageReady()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

IsPulseGuiding()

Indicates that the camera is pulse guideing.

Declaration
bool IsPulseGuiding()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

PulseGuide(GuideDirection, Int32)

Activates the Camera's mount control sytem to instruct the mount to move in a particular direction for a given period of time

Declaration
void PulseGuide(GuideDirection direction, int duration)
Parameters
Type Name Description
GuideDirection direction

Direction of movement

System.Int32 duration

Duration of movement in milli-seconds

| Improve this Doc View Source

SetBinX(Int32)

Sets the binning factor for the X axis.

Declaration
void SetBinX(int binX)
Parameters
Type Name Description
System.Int32 binX
| Improve this Doc View Source

SetBinY(Int32)

Sets the binning factor for the Y axis.

Declaration
void SetBinY(int binY)
Parameters
Type Name Description
System.Int32 binY
| Improve this Doc View Source

SetCCDTemperatureSetPoint(Double)

Set the camera's cooler setpoint (degrees Celsius).

Declaration
void SetCCDTemperatureSetPoint(double temperature)
Parameters
Type Name Description
System.Double temperature

Temperature set point in degrees Celsius

| Improve this Doc View Source

SetCoolerOn(Boolean)

Turns on and off the camera cooler

Declaration
void SetCoolerOn(bool coolerOn)
Parameters
Type Name Description
System.Boolean coolerOn
| Improve this Doc View Source

SetFastReadout(Boolean)

Sets whether Fast Readout Mode is enabled.

Declaration
void SetFastReadout(bool fastReadout)
Parameters
Type Name Description
System.Boolean fastReadout

True to enable fast readout mode

| Improve this Doc View Source

SetGain(Int32)

Set the camera gain

Declaration
void SetGain(int gain)
Parameters
Type Name Description
System.Int32 gain

Index of the current camera gain in the Gains string array.

| Improve this Doc View Source

SetNumX(Int32)

Sets the current subframe width

Declaration
void SetNumX(int numX)
Parameters
Type Name Description
System.Int32 numX

Sets the subframe width, if binning is active, value is in binned pixels.

| Improve this Doc View Source

SetNumY(Int32)

Sets the current subframe width

Declaration
void SetNumY(int numY)
Parameters
Type Name Description
System.Int32 numY

Sets the subframe height, if binning is active, value is in binned pixels.

| Improve this Doc View Source

SetReadoutMode(Int32)

Sets the ReadoutMode as an index into the array ReadoutModes.

Declaration
void SetReadoutMode(int readoutMode)
Parameters
Type Name Description
System.Int32 readoutMode
| Improve this Doc View Source

SetStartX(Int32)

Sets the current subframe X axis start position in binned pixels.

Declaration
void SetStartX(int startX)
Parameters
Type Name Description
System.Int32 startX

The subframe X axis start position in binned pixels.

| Improve this Doc View Source

SetStartY(Int32)

Sets the current subframe Y axis start position in binned pixels.

Declaration
void SetStartY(int startY)
Parameters
Type Name Description
System.Int32 startY

The subframe Y axis start position in binned pixels.

| Improve this Doc View Source

StartExposure(Double, Boolean)

Starts an exposure. Use ImageReady to check when the exposure is complete.

Declaration
void StartExposure(double duration, bool isLight)
Parameters
Type Name Description
System.Double duration

Duration of exposure in seconds

System.Boolean isLight

True if light frame, false if dark frame.

| Improve this Doc View Source

StopExposure()

Stops the current exposure, if any. If an exposure is in progress, the readout process is initiated. Ignored if readout is already in process.

Declaration
void StopExposure()

See Also

ICameraAsync
  • Improve this Doc
  • View Source
Back to top Generated by DocFX