X2 Standard  Version 1.24
domedriverinterface.h
1 #ifndef _DomeDriverInterface_H
2 #define _DomeDriverInterface_H
3 
4 #ifdef THESKYX_FOLDER_TREE
5 #include "imagingsystem/hardware/interfaces/licensed/driverrootinterface.h"
6 #include "imagingsystem/hardware/interfaces/licensed/linkinterface.h"
7 #include "imagingsystem/hardware/interfaces/licensed/deviceinfointerface.h"
8 #include "imagingsystem/hardware/interfaces/licensed/driverinfointerface.h"
9 #else
10 #include "../../licensedinterfaces/driverrootinterface.h"
11 #include "../../licensedinterfaces/linkinterface.h"
12 #include "../../licensedinterfaces/deviceinfointerface.h"
13 #include "../../licensedinterfaces/driverinfointerface.h"
14 #endif
15 
16 
24 {
25 public:
26  virtual ~DomeDriverInterface(){}
27 
32  virtual int queryAbstraction(const char* pszName, void** ppVal) = 0;
34 
38  virtual int establishLink(void) = 0;
39  virtual int terminateLink(void) = 0;
40  virtual bool isLinked(void) const = 0;
42 
46  virtual void deviceInfoNameShort(BasicStringInterface& str) const {};
47  virtual void deviceInfoNameLong(BasicStringInterface& str) const {};
50  virtual void deviceInfoModel(BasicStringInterface& str) {};
52 
56  virtual void driverInfoDetailedInfo(BasicStringInterface& str) const = 0;
57  virtual double driverInfoVersion(void) const = 0;
59 
61  virtual int dapiGetAzEl(double* pdAz, double* pdEl)=0;
63  virtual int dapiGotoAzEl(double dAz, double dEl)=0;
65  virtual int dapiAbort(void)=0;
67  virtual int dapiOpen(void)=0;
69  virtual int dapiClose(void)=0;
71  virtual int dapiPark(void)=0;
73  virtual int dapiUnpark(void)=0;
75  virtual int dapiFindHome(void)=0;
76 
80  virtual int dapiIsGotoComplete(bool* pbComplete)=0;
82  virtual int dapiIsOpenComplete(bool* pbComplete)=0;
84  virtual int dapiIsCloseComplete(bool* pbComplete)=0;
86  virtual int dapiIsParkComplete(bool* pbComplete)=0;
88  virtual int dapiIsUnparkComplete(bool* pbComplete)=0;
90  virtual int dapiIsFindHomeComplete(bool* pbComplete)=0;
92 
94  virtual int dapiSync(double dAz, double dEl)=0;
95 
96 };
97 
98 
99 
100 #endif
DomeDriverInterface::establishLink
virtual int establishLink(void)=0
DomeDriverInterface::dapiIsParkComplete
virtual int dapiIsParkComplete(bool *pbComplete)=0
DomeDriverInterface::driverInfoVersion
virtual double driverInfoVersion(void) const =0
DomeDriverInterface::dapiOpen
virtual int dapiOpen(void)=0
DomeDriverInterface::dapiIsUnparkComplete
virtual int dapiIsUnparkComplete(bool *pbComplete)=0
DomeDriverInterface::dapiUnpark
virtual int dapiUnpark(void)=0
DriverRootInterface
The DriverRootInterface is the foundation for all X2 device drivers.
Definition: driverrootinterface.h:21
DomeDriverInterface::deviceType
virtual DeviceType deviceType(void)
Definition: domedriverinterface.h:31
DomeDriverInterface::dapiIsFindHomeComplete
virtual int dapiIsFindHomeComplete(bool *pbComplete)=0
DomeDriverInterface::terminateLink
virtual int terminateLink(void)=0
DomeDriverInterface::deviceInfoNameLong
virtual void deviceInfoNameLong(BasicStringInterface &str) const
Definition: domedriverinterface.h:47
DomeDriverInterface::dapiPark
virtual int dapiPark(void)=0
DomeDriverInterface::queryAbstraction
virtual int queryAbstraction(const char *pszName, void **ppVal)=0
DomeDriverInterface::deviceInfoNameShort
virtual void deviceInfoNameShort(BasicStringInterface &str) const
Definition: domedriverinterface.h:46
DomeDriverInterface::deviceInfoFirmwareVersion
virtual void deviceInfoFirmwareVersion(BasicStringInterface &str)
Definition: domedriverinterface.h:49
DriverInfoInterface
The DriverInfoInterface provides X2 implementors a standarized way to provide driver specific informa...
Definition: driverinfointerface.h:15
DomeDriverInterface::dapiGotoAzEl
virtual int dapiGotoAzEl(double dAz, double dEl)=0
DomeDriverInterface::deviceInfoDetailedDescription
virtual void deviceInfoDetailedDescription(BasicStringInterface &str) const
Definition: domedriverinterface.h:48
DomeDriverInterface::dapiGetAzEl
virtual int dapiGetAzEl(double *pdAz, double *pdEl)=0
DomeDriverInterface
The DomeDriverInterface allows an X2 implementor to a write X2 dome driver.
Definition: domedriverinterface.h:24
HardwareInfoInterface
The HardwareInfoInterface provides X2 implementors a standarized way to provide hardware specific inf...
Definition: deviceinfointerface.h:15
DriverRootInterface::DeviceType
DeviceType
Definition: driverrootinterface.h:26
DomeDriverInterface::isLinked
virtual bool isLinked(void) const =0
DomeDriverInterface::driverInfoDetailedInfo
virtual void driverInfoDetailedInfo(BasicStringInterface &str) const =0
DriverRootInterface::DT_DOME
@ DT_DOME
Definition: driverrootinterface.h:32
DomeDriverInterface::dapiAbort
virtual int dapiAbort(void)=0
DomeDriverInterface::dapiClose
virtual int dapiClose(void)=0
DomeDriverInterface::deviceInfoModel
virtual void deviceInfoModel(BasicStringInterface &str)
Definition: domedriverinterface.h:50
DomeDriverInterface::dapiIsCloseComplete
virtual int dapiIsCloseComplete(bool *pbComplete)=0
DomeDriverInterface::dapiFindHome
virtual int dapiFindHome(void)=0
BasicStringInterface
The BasicStringInterface allows a string as an output.
Definition: basicstringinterface.h:17
DomeDriverInterface::dapiSync
virtual int dapiSync(double dAz, double dEl)=0
DomeDriverInterface::dapiIsGotoComplete
virtual int dapiIsGotoComplete(bool *pbComplete)=0
DomeDriverInterface::dapiIsOpenComplete
virtual int dapiIsOpenComplete(bool *pbComplete)=0
X2 Examples
(C) Software Bisque, Inc. All rights reserved.