X2 Standard  Version 1.28
Loading...
Searching...
No Matches
focuserdriverinterface.h
1#ifndef _FocuserDriverInterface_H
2#define _FocuserDriverInterface_H
3
4#ifdef THESKYX_FOLDER_TREE
5#include "imagingsystem/hardware/interfaces/licensed/driverrootinterface.h"
6#include "imagingsystem/hardware/interfaces/licensed/deviceinfointerface.h"
7#include "imagingsystem/hardware/interfaces/licensed/driverinfointerface.h"
8#include "imagingsystem/hardware/interfaces/licensed/linkinterface.h"
9#include "imagingsystem/hardware/interfaces/licensed/focuser/focusergotointerface2.h"
10#include "sberror.h"
11#else
12#include "../../licensedinterfaces/driverrootinterface.h"
13#include "../../licensedinterfaces/deviceinfointerface.h"
14#include "../../licensedinterfaces/driverinfointerface.h"
15#include "../../licensedinterfaces/linkinterface.h"
16#include "../../licensedinterfaces/focuser/focusergotointerface2.h"
17#endif
18
27{
28public:
29 virtual ~FocuserDriverInterface(){}
30
35 virtual int queryAbstraction(const char* pszName, void** ppVal) = 0;
37
41 virtual void driverInfoDetailedInfo(BasicStringInterface& str) const {};
42 virtual double driverInfoVersion(void) const {return 0.0;}
44
48 virtual void deviceInfoNameShort(BasicStringInterface& str) const {};
49 virtual void deviceInfoNameLong(BasicStringInterface& str) const {};
54
58 virtual int establishLink(void) = 0;
59 virtual int terminateLink(void) = 0;
60 virtual bool isLinked(void) const = 0;
62
65 virtual int focPosition(int& nPosition) =0;
66 virtual int focMinimumLimit(int& nMinLimit) =0;
67 virtual int focMaximumLimit(int& nMaxLimit) =0;
68 virtual int focAbort() =0;
69
70 virtual int startFocGoto(const int& nRelativeOffset) = 0;
71 virtual int isCompleteFocGoto(bool& bComplete) const = 0;
72 virtual int endFocGoto(void) = 0;
73
74 virtual int amountCountFocGoto(void) const = 0;
75 virtual int amountNameFromIndexFocGoto(const int& nZeroBasedIndex, BasicStringInterface& strDisplayName, int& nAmount)=0;
76 virtual int amountIndexFocGoto(void)=0;
78
79
80};
81
82#endif
The BasicStringInterface allows a string as an output.
Definition basicstringinterface.h:17
The DriverInfoInterface provides X2 implementors a standardized way to provide driver specific inform...
Definition driverinfointerface.h:15
The DriverRootInterface is the foundation for all X2 device drivers.
Definition driverrootinterface.h:21
DeviceType
Definition driverrootinterface.h:26
@ DT_FOCUSER
Definition driverrootinterface.h:29
The FocuserDriverInterface allows an X2 implementor to a write X2 focuser driver.
Definition focuserdriverinterface.h:27
virtual int amountCountFocGoto(void) const =0
virtual int amountIndexFocGoto(void)=0
virtual int terminateLink(void)=0
virtual void driverInfoDetailedInfo(BasicStringInterface &str) const
Definition focuserdriverinterface.h:41
virtual double driverInfoVersion(void) const
Definition focuserdriverinterface.h:42
virtual int amountNameFromIndexFocGoto(const int &nZeroBasedIndex, BasicStringInterface &strDisplayName, int &nAmount)=0
virtual int focPosition(int &nPosition)=0
virtual int endFocGoto(void)=0
virtual int startFocGoto(const int &nRelativeOffset)=0
virtual void deviceInfoNameLong(BasicStringInterface &str) const
Definition focuserdriverinterface.h:49
virtual void deviceInfoModel(BasicStringInterface &str)
Definition focuserdriverinterface.h:52
virtual int queryAbstraction(const char *pszName, void **ppVal)=0
virtual void deviceInfoNameShort(BasicStringInterface &str) const
Definition focuserdriverinterface.h:48
virtual void deviceInfoFirmwareVersion(BasicStringInterface &str)
Definition focuserdriverinterface.h:51
virtual int isCompleteFocGoto(bool &bComplete) const =0
virtual void deviceInfoDetailedDescription(BasicStringInterface &str) const
Definition focuserdriverinterface.h:50
virtual int focMaximumLimit(int &nMaxLimit)=0
virtual bool isLinked(void) const =0
virtual int focMinimumLimit(int &nMinLimit)=0
virtual int establishLink(void)=0
virtual DeviceType deviceType(void)
Definition focuserdriverinterface.h:34
virtual int focAbort()=0
The FocuserGotoInterface2 allows a focuser to perform a goto operation.
Definition focusergotointerface2.h:28
The HardwareInfoInterface provides X2 implementors a standardized way to provide hardware specific in...
Definition deviceinfointerface.h:15
X2 Examples
(C) 2026 Software Bisque, Inc. All rights reserved.