diff options
Diffstat (limited to 'indi-lxd650/lxd650.h')
-rw-r--r-- | indi-lxd650/lxd650.h | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/indi-lxd650/lxd650.h b/indi-lxd650/lxd650.h index 0e24976..65f1341 100644 --- a/indi-lxd650/lxd650.h +++ b/indi-lxd650/lxd650.h @@ -48,10 +48,10 @@ class LXD650 : public INDI::Telescope, virtual bool ISNewText(const char *dev, const char *name, char *texts[], char *names[], int n) override; virtual bool ISSnoopDevice(XMLEle *root) override; - static void GuideNorthProxy(void *context); - static void GuideSouthProxy(void *context); - static void GuideWestProxy(void *context); - static void GuideEastProxy(void *context); + static void GuideNorthProxy(void *context); + static void GuideSouthProxy(void *context); + static void GuideWestProxy(void *context); + static void GuideEastProxy(void *context); protected: @@ -76,6 +76,7 @@ class LXD650 : public INDI::Telescope, virtual bool updateLocation(double latitude, double longitude, double elevation) override; + protected: bool isSlewComplete(); void slewError(int slewCode); @@ -89,14 +90,23 @@ class LXD650 : public INDI::Telescope, uint32_t DBG_SCOPE = 0; private: + bool LXDSetTrackMode(uint8_t mode); + bool LXDSetTrackRate(double rate); + + INumber LXDTrackRateN; + INumberVectorProperty LXDTrackRateNP; + + INDI::PropertySwitch LXDTrackModeSP {4}; + enum { LXD_TRACK_SIDEREAL, LXD_TRACK_SOLAR, LXD_TRACK_LUNAR, LXD_TRACK_CUSTOM }; + INDI::PropertyNumber GuideRateNP {2}; bool guidePulse(INDI_EQ_AXIS axis, uint32_t ms, int8_t rate); void show_alignment(const char *wot, double ra1,double dec1, double ra2,double dec2); - int GuideNorth_TID {0}; - int GuideSouth_TID {0}; - int GuideWest_TID {0}; - int GuideEast_TID {0}; + int GuideNorth_TID {0}; + int GuideSouth_TID {0}; + int GuideWest_TID {0}; + int GuideEast_TID {0}; void GuideNorthCB(void); void GuideSouthCB(void); @@ -106,9 +116,9 @@ class LXD650 : public INDI::Telescope, virtual bool setLocalDate(uint8_t days, uint8_t months, uint16_t years); virtual bool setLocalTime24(uint8_t hour, uint8_t minute, uint8_t second); virtual bool setUTCOffset(double offset); - - void set_slew_rate_from_property(void); - void show_guide (const char *dir, int ms); + + void set_slew_rate_from_property(void); + void show_guide (const char *dir, int ms); }; |