Top-level namespace containing all of DLAPI. More...
Namespaces | |
ErrorFlags | |
Contains Error flags/masks for a variety of peripherals/devices, as reported by the camera. | |
PulseGuideStatus | |
Status flags for the pulse guide port. | |
V1 | |
V2 | |
Classes | |
class | IAO |
AO Interface Class. More... | |
class | ICamera |
Camera interface class. More... | |
class | IDebugControl |
An abstract interface that gives users access to debug logging controls \seealso IGateway, getGateway() If Debug logging is supported, the IGateway pointer returned from getGateway() will inheritt from IDebugControl as well. You can check to see whether the version of DLAPI being used by your application supports these features using a dynamic cast: More... | |
class | IFW |
FW Interface Class. More... | |
class | IFWExtended |
class | IGateway |
Gateway object for controlling device discovery, and lifetime management. More... | |
class | IImage |
Interface to an DLAPI Image buffer. More... | |
class | IImageExt |
class | IPromise |
Promise interface class. More... | |
class | ISensor |
Sensor Interface Class. More... | |
class | ITEC |
TEC interface class. More... | |
struct | TConnectionDetails |
Network connection detail structure. More... | |
struct | TExposureOptions |
A collection of exposure parameters required for starting an exposure. More... | |
struct | TImageMetadata |
A collection of metadata associated with an image. More... | |
struct | TLayerMetadata |
struct | TNetworkSettings |
A collection of wireless network configuration settings. More... | |
struct | TSubframe |
A collection of frame parameters, required for specifying the dimensions of an image. More... | |
Typedefs | |
typedef IImage * | IImagePtr |
Convenience typedef for IImage pointers. More... | |
typedef IImageExt * | IImageExtPtr |
typedef IPromise * | IPromisePtr |
Convenience typedef for IPromise pointers. More... | |
typedef ITEC * | ITECPtr |
Convenience typedef for ITEC pointers. More... | |
typedef IAO * | IAOPtr |
Convenience typedef for IAO pointers. More... | |
typedef IFW * | IFWPtr |
Convenience typedef for IFW pointers. More... | |
typedef IFWExtended * | IFWExtendedPtr |
typedef ISensor * | ISensorPtr |
Convenience typedef for ISensor pointers. More... | |
typedef ICamera * | ICameraPtr |
Convenience typedef for ICamera pointers. More... | |
typedef IGateway * | IGatewayPtr |
Convenience typedef for IGateway pointers. More... | |
Functions | |
DL_API IGatewayPtr MYCDECL | getGateway () |
Returns a pointer to an instance of a Gateway object, or (if one exists) return the existing pointer to it. More... | |
DL_API void MYCDECL | deleteGateway (IGatewayPtr) |
Decrement the internal count of IGateway pointers supplied, and delete the active IGateway instance when it is no longer in use. More... | |
Detailed Description
Top-level namespace containing all of DLAPI.
The dl namespace contains all the interface and utility definitions you will need while controlling a DLAPI compliant camera. Classes prefixed with a capital "I" (such as IGateway, ICamera, or IImage) represent abstract interface classes that are instantiated by DLAPI. They are grouped by function:
- Discovery/management of devices (IGateway)
- Camera/peripheral control (ICamera, ISensor, ITEC, IFW, and IAO)
- Image buffer/metadata storage/transport (IImage)
- Asynchronous command monitoring/error reporting (IPromise)
Interface classes all have convenience pointer typedefs (e.g. ICameraPtr is ICamera*), to ease readability.
In addition to the interface classes, there are a number of different parametrization and data structures both contained within interfaces (such as the ICamera::Info structure), and without (such as the TExposureOptions structure). These structures are used to transport large data structures to and from the API, and provides some degree of structure and modularity to the API.
Typedef Documentation
◆ IAOPtr
typedef IAO* dl::IAOPtr |
Convenience typedef for IAO pointers.
◆ ICameraPtr
typedef ICamera* dl::ICameraPtr |
Convenience typedef for ICamera pointers.
◆ IFWExtendedPtr
typedef IFWExtended* dl::IFWExtendedPtr |
◆ IFWPtr
typedef IFW* dl::IFWPtr |
Convenience typedef for IFW pointers.
◆ IGatewayPtr
typedef IGateway* dl::IGatewayPtr |
Convenience typedef for IGateway pointers.
◆ IImageExtPtr
typedef IImageExt* dl::IImageExtPtr |
◆ IImagePtr
typedef IImage* dl::IImagePtr |
Convenience typedef for IImage pointers.
◆ IPromisePtr
typedef IPromise* dl::IPromisePtr |
Convenience typedef for IPromise pointers.
◆ ISensorPtr
typedef ISensor* dl::ISensorPtr |
Convenience typedef for ISensor pointers.
◆ ITECPtr
typedef ITEC* dl::ITECPtr |
Convenience typedef for ITEC pointers.
Enumeration Type Documentation
◆ EEndpointType
enum dl::EEndpointType |
Camera's connection endpoint type (networked, USB, etc)
◆ EFrameType
enum dl::EFrameType |
Sensor's readout frame typeid.
◆ ENetworkMode
enum dl::ENetworkMode |
Network Connection type/security for WiFi operation.
Enumerator | |
---|---|
AdHoc | Use an ad-hoc network. More details coming. |
Open | Connect to an open network specified via ICamera::setNetworkSettings(), retrieved using ICamera::getNetworkSettings(). |
WEP | Connect to a WEP secured network specified via ICamera::setNetworkSettings(), retrieved using ICamera::getNetworkSettings(). |
WPA | Connect to a WPA 1 secured network specified via ICamera::setNetworkSettings(), retrieved using ICamera::getNetworkSettings(). |
WPA2 | Connect to a WPA 2 secured network specified via ICamera::setNetworkSettings(), retrieved using ICamera::getNetworkSettings(). |
InvalidNetworkMode | Network mode is either invalid, or uninitialized. |
◆ EPulseGuideDirection
◆ EShutterStatus
enum dl::EShutterStatus |
Status of sensor's shutter.
◆ EStatusCode
enum dl::EStatusCode |
Status codes returned by a camera with every message response.
◆ FilterType
enum dl::FilterType |
Function Documentation
◆ deleteGateway()
DL_API void MYCDECL dl::deleteGateway | ( | IGatewayPtr | ) |
Decrement the internal count of IGateway pointers supplied, and delete the active IGateway instance when it is no longer in use.
- Parameters
-
IGatewayPtr a pointer to an IGateway object to delete.
- See also
- IGateway, getGateway()
This function tracks usage counts of getGateway(), and deletes the singleton instance of IGateway when the last instance is released.
◆ getGateway()
DL_API IGatewayPtr MYCDECL dl::getGateway | ( | ) |
Returns a pointer to an instance of a Gateway object, or (if one exists) return the existing pointer to it.
- Returns
- IGatewayPtr pointer to the instance of the process' IGateway.
- See also
- IGateway, deleteGateway()
This function provides the user with the singleton instance of the DLAPI IGateway for the process. Use this function to gain access to all DLAPI devices. Minimize the number of calls to this function if at all possible. It is not necessary to keep an IGateway instance active throughout the lifetime of your application, but you should avoid creating gateways at call sites. Keep the gateway instances alive throughout the scope of all communications with the API. All calls to dl::getGateway() should be accompanied by a call to dl::deleteGateway().
An easy way to ensure this occurs is to create a smart pointer with a custom deleter that handles this cleanup.