X2 Standard
Version 1.25
|
#include <x2mount.h>
Public Member Functions | |
X2Mount (const char *pszDriverSelection, const int &nInstanceIndex, SerXInterface *pSerX, TheSkyXFacadeForDriversInterface *pTheSkyX, SleeperInterface *pSleeper, BasicIniUtilInterface *pIniUtil, LoggerInterface *pLogger, MutexInterface *pIOMutex, TickCountInterface *pTickCount) | |
DriverRootInterface Implementation | |
See DriverRootInterface. | |
virtual DeviceType | deviceType (void) |
virtual int | queryAbstraction (const char *pszName, void **ppVal) |
LinkInterface Implementation | |
See LinkInterface. | |
virtual int | establishLink (void) |
virtual int | terminateLink (void) |
virtual bool | isLinked (void) const |
virtual bool | isEstablishLinkAbortable (void) const |
DriverInfoInterface Implementation | |
See DriverInfoInterface. | |
virtual void | driverInfoDetailedInfo (BasicStringInterface &str) const |
virtual double | driverInfoVersion (void) const |
![]() | |
virtual bool | needsRefactionAdjustments (void) |
![]() | |
virtual bool | isEstablishLinkAbortable (void) |
HardwareInfoInterface Implementation | |
virtual void | deviceInfoNameShort (BasicStringInterface &str) const |
virtual void | deviceInfoNameLong (BasicStringInterface &str) const |
virtual void | deviceInfoDetailedDescription (BasicStringInterface &str) const |
virtual void | deviceInfoFirmwareVersion (BasicStringInterface &str) |
virtual void | deviceInfoModel (BasicStringInterface &str) |
virtual int | raDec (double &ra, double &dec, const bool &bCached=false) |
virtual int | abort (void) |
virtual int | startOpenLoopMove (const MountDriverInterface::MoveDir &Dir, const int &nRateIndex) |
virtual int | endOpenLoopMove (void) |
virtual bool | allowDiagonalMoves () |
virtual int | rateCountOpenLoopMove (void) const |
virtual int | rateNameFromIndexOpenLoopMove (const int &nZeroBasedIndex, char *pszOut, const int &nOutMaxSize) |
virtual int | rateIndexOpenLoopMove (void) |
virtual int | useOpenLoopMoveInterface (int &nGuideRateIndex, OpenLoopMoveInterface **pOLSI) |
Additional Inherited Members | |
![]() | |
enum | MotorState { MKS_MOTOR_HOMING =(0x0100), MKS_MOTOR_SERVO =(0x0200), MKS_MOTOR_INDEXING =(0x0400), MKS_MOTOR_SLEWING =(0x0800), MKS_MOTOR_HOMED =(0x1000), MKS_MOTOR_JOYSTICKING =(0x2000), MKS_MOTOR_OFF =(0x4000), MKS_MOTOR_MOVING = (MKS_MOTOR_HOMING | MKS_MOTOR_SLEWING | MKS_MOTOR_JOYSTICKING) } |
enum | Axis { AXIS_RA = 0, AXIS_DEC = 1 } |
enum | MoveDir { MD_NORTH = 0, MD_SOUTH = 1, MD_EAST = 2, MD_WEST = 3 } |
enum | MoveRate { MR_FLASH = -2, MR_BASE = -1, MR_0R5X = 0, MR_1X = 1, MR_2X = 2, MR_4X = 3, MR_8X = 4, MR_16X = 5, MR_32X = 6, MR_64X = 7, MR_128X = 8, MR_256X = 9, MR_SLEW = 10 } |
![]() | |
enum | DeviceType { DT_UNKNOWN = 0, DT_MOUNT = 1, DT_FOCUSER = 2, DT_CAMERA = 3, DT_FILTERWHEEL = 4, DT_DOME = 5, DT_ROTATOR = 6, DT_WEATHER = 7, DT_GPSTFP = 8, DT_VIDEO = 9, DT_OTA =10, DT_AO =11, DT_POWERCONTROL =12, DT_PRIVATE_A =13 } |
![]() | |
bool | m_bPrivatePGAbort |
X2Mount::X2Mount | ( | const char * | pszDriverSelection, |
const int & | nInstanceIndex, | ||
SerXInterface * | pSerX, | ||
TheSkyXFacadeForDriversInterface * | pTheSkyX, | ||
SleeperInterface * | pSleeper, | ||
BasicIniUtilInterface * | pIniUtil, | ||
LoggerInterface * | pLogger, | ||
MutexInterface * | pIOMutex, | ||
TickCountInterface * | pTickCount | ||
) |
Standard X2 constructor
|
virtual |
Abort any operation currently in progress.
Implements MountDriverInterface.
|
virtual |
Return true if the mount can be commanded to move in more than one perpendicular axis at the same time, otherwise return false.
Reimplemented from OpenLoopMoveInterface.
|
virtual |
Return a detailed device description.
Implements MountDriverInterface.
|
virtual |
Return the firmware version, if available.
Implements MountDriverInterface.
|
virtual |
Return the device model name.
Implements MountDriverInterface.
|
virtual |
Return a detailed device name.
Implements MountDriverInterface.
|
virtual |
Return a short device name.
Implements MountDriverInterface.
|
inlinevirtual |
Returns the type of device.
Reimplemented from MountDriverInterface.
|
virtual |
Return detailed information about the driver.
Implements MountDriverInterface.
|
virtual |
Return a version number.
Implements MountDriverInterface.
|
virtual |
End the open-loop move. This function is always called for every corresponding startOpenLoopMove(), allowing software implementations of the move.
Implements OpenLoopMoveInterface.
|
virtual |
Connect (link) to the device.
Implements MountDriverInterface.
|
virtual |
Return true if there is a connection, otherwise return false.
Implements MountDriverInterface.
|
virtual |
Return a pointer to well defined interface.
Implements MountDriverInterface.
|
virtual |
Return the mechanical or raw right ascension and declination coordinates of the mount.
dRawRA | is the right ascension coordinate of the mount from 0 to 24. |
dRawDec | is the declination coordinate of the mount from -90 to +90. |
bCached | may be ignored. |
Implements MountDriverInterface.
|
virtual |
Return the number (count) of avaiable moves.
Implements OpenLoopMoveInterface.
|
virtual |
Return the current index of move selection.
Implements OpenLoopMoveInterface.
|
virtual |
Return a string along with the amount or size of the corresponding move.
Implements OpenLoopMoveInterface.
|
virtual |
Start the open-loop move.
Implements OpenLoopMoveInterface.
|
virtual |
Disconnect from the device.
Implements MountDriverInterface.
|
inlinevirtual |
This is the function that needs implemented when a mount relies on the OpenLoopMoveInterface to "PulseGuide". Simply return the desired rate index (defined by OpenLoopMoveInterface) that you want TheSky to use while autoguiding in addtion to the mount's OpenLoopMoveInterface.
The source file provides sample implementation. Note, there is no default implementation so that technical support is not overwhelmed with poor autoguiding by third party mounts that hasn't been verified/tested. As the author supporting this interface you take responsibility to test and ensure autoguiding with the corresponding mount through this interface works well and by enabling this implementation you agree to this.
nGuideRateIndex | Sets the speed, as defined by the OpenLoopMoveInterface, by index, TheSky uses while autoguiding. |
OpenLoopMoveInterface | A pointer to the mount's OpenLoopMoveInterface. |
return | An error code, zero means no error. |
Implements PulseGuideInterface2.