Instrument Neutral Distributed Interface INDI  1.5.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
INDI::GuiderInterface Class Referenceabstract

Provides interface to implement guider (ST4) port functionality. More...

#include <indiguiderinterface.h>

Inheritance diagram for INDI::GuiderInterface:
CelestronGPS GPUSB IEQPro INDI::CCD LX200Generic Paramount ScopeSim STAR2000 TemmaMount

Public Member Functions

virtual IPState GuideNorth (float ms)=0
 Guide north for ms milliseconds. More...
 
virtual IPState GuideSouth (float ms)=0
 Guide south for ms milliseconds. More...
 
virtual IPState GuideEast (float ms)=0
 Guide east for ms milliseconds. More...
 
virtual IPState GuideWest (float ms)=0
 Guide west for ms milliseconds. More...
 
virtual void GuideComplete (INDI_EQ_AXIS axis)
 Call GuideComplete once the guiding pulse is complete. More...
 

Protected Member Functions

 GuiderInterface ()
 
 ~GuiderInterface ()
 
void initGuiderProperties (const char *deviceName, const char *groupName)
 Initilize guider properties. It is recommended to call this function within initProperties() of your primary device. More...
 
void processGuiderProperties (const char *name, double values[], char *names[], int n)
 Call this function whenever client updates GuideNSNP or GuideWSP properties in the primary device. This function then takes care of issuing the corresponding GuideXXXX function accordingly. More...
 

Protected Attributes

INumber GuideNSN [2]
 
INumberVectorProperty GuideNSNP
 
INumber GuideWEN [2]
 
INumberVectorProperty GuideWENP
 

Detailed Description

Provides interface to implement guider (ST4) port functionality.

The child class implements GuideXXXX() functions and returns: IPS_OK if the guide operation is completed in the function, which is usually appropiate for very short guiding pulses. IPS_BUSY if the guide operation is in progress and will take time to complete. In this case, the child class must call GuideComplete() once the guiding pulse is complete. IPS_ALERT if the guide operation failed.

IMPORTANT: initGuiderProperties() must be called before any other function to initilize the guider properties.

IMPORATNT: processGuiderProperties() must be called in your driver's ISNewNumber(..) function. processGuiderProperties() will call the guide functions GuideXXXX functions accordingly to the driver.

Author
Jasem Mutlaq

Definition at line 41 of file indiguiderinterface.h.

Constructor & Destructor Documentation

INDI::GuiderInterface::GuiderInterface ( )
protected

Definition at line 25 of file indiguiderinterface.cpp.

INDI::GuiderInterface::~GuiderInterface ( )
protected

Definition at line 29 of file indiguiderinterface.cpp.

Member Function Documentation

void INDI::GuiderInterface::GuideComplete ( INDI_EQ_AXIS  axis)
virtual

Call GuideComplete once the guiding pulse is complete.

Parameters
axisAxis of completed guiding operation.

Reimplemented in INDI::CCD.

Definition at line 83 of file indiguiderinterface.cpp.

virtual IPState INDI::GuiderInterface::GuideEast ( float  ms)
pure virtual

Guide east for ms milliseconds.

Returns
IPS_OK if operation is completed successfully, IPS_BUSY if operation will take take to complete, or IPS_ALERT if operation failed.

Implemented in INDI::CCD, IEQPro, LX200Generic, CelestronGPS, Paramount, TemmaMount, STAR2000, GPUSB, CCDSim, LX200Pulsar2, and ScopeSim.

virtual IPState INDI::GuiderInterface::GuideNorth ( float  ms)
pure virtual

Guide north for ms milliseconds.

Returns
IPS_OK if operation is completed successfully, IPS_BUSY if operation will take take to complete, or IPS_ALERT if operation failed.

Implemented in INDI::CCD, IEQPro, LX200Generic, CelestronGPS, Paramount, TemmaMount, STAR2000, GPUSB, CCDSim, LX200Pulsar2, and ScopeSim.

virtual IPState INDI::GuiderInterface::GuideSouth ( float  ms)
pure virtual

Guide south for ms milliseconds.

Returns
IPS_OK if operation is completed successfully, IPS_BUSY if operation will take take to complete, or IPS_ALERT if operation failed.

Implemented in INDI::CCD, IEQPro, LX200Generic, CelestronGPS, Paramount, TemmaMount, STAR2000, GPUSB, CCDSim, LX200Pulsar2, and ScopeSim.

virtual IPState INDI::GuiderInterface::GuideWest ( float  ms)
pure virtual

Guide west for ms milliseconds.

Returns
IPS_OK if operation is completed successfully, IPS_BUSY if operation will take take to complete, or IPS_ALERT if operation failed.

Implemented in INDI::CCD, IEQPro, LX200Generic, CelestronGPS, Paramount, TemmaMount, STAR2000, GPUSB, CCDSim, LX200Pulsar2, and ScopeSim.

void INDI::GuiderInterface::initGuiderProperties ( const char *  deviceName,
const char *  groupName 
)
protected

Initilize guider properties. It is recommended to call this function within initProperties() of your primary device.

Parameters
deviceNameName of the primary device
groupNameGroup or tab name to be used to define guider properties.

Definition at line 33 of file indiguiderinterface.cpp.

void INDI::GuiderInterface::processGuiderProperties ( const char *  name,
double  values[],
char *  names[],
int  n 
)
protected

Call this function whenever client updates GuideNSNP or GuideWSP properties in the primary device. This function then takes care of issuing the corresponding GuideXXXX function accordingly.

Parameters
namedevice name
valuesvalue as passed by the client
namesnames as passed by the client
nnumber of values and names pair to process.

Definition at line 46 of file indiguiderinterface.cpp.

Member Data Documentation

INumber INDI::GuiderInterface::GuideNSN[2]
protected

Definition at line 101 of file indiguiderinterface.h.

INumberVectorProperty INDI::GuiderInterface::GuideNSNP
protected

Definition at line 102 of file indiguiderinterface.h.

INumber INDI::GuiderInterface::GuideWEN[2]
protected

Definition at line 103 of file indiguiderinterface.h.

INumberVectorProperty INDI::GuiderInterface::GuideWENP
protected

Definition at line 104 of file indiguiderinterface.h.


The documentation for this class was generated from the following files: