Instrument Neutral Distributed Interface INDI 2.2.5
lx200fs2.h
Go to the documentation of this file.
1/*
2 Astro-Electronic FS-2
3 Copyright (C) 2015-2023 Jasem Mutlaq ([email protected])
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with this library; if not, write to the Free Software
17 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18*/
19
20#pragma once
21
22#include "lx200generic.h"
23
24class LX200FS2 : public LX200Generic
25{
26 public:
27 LX200FS2();
28
29 virtual bool initProperties() override;
30 virtual bool updateProperties() override;
31 virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override;
32 virtual bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override;
33
34 protected:
35 virtual const char *getDefaultName() override;
36 virtual bool isSlewComplete() override;
37 virtual bool checkConnection() override;
38
39 virtual bool saveConfigItems(FILE *fp) override;
40
41 // GOTO
42 virtual bool Goto(double r, double d) override;
43 virtual bool Sync(double r, double d) override;
44
45 // Parking
46 virtual bool Park() override;
47 virtual bool UnPark() override;
48 virtual bool SetCurrentPark() override;
49 virtual bool SetDefaultPark() override;
50
51 // StopAfterPark
52 virtual bool ReadScopeStatus() override;
53 void TrackingStart();
55 void TrackingStop();
56 void TrackingStop_Abort();
58
59 // Fake Location
60 virtual bool updateLocation(double latitude, double longitude, double elevation) override;
61
64
68 enum TelescopeSlewRate savedSlewRateIndex {SLEW_MAX};
77};
virtual bool SetCurrentPark() override
SetCurrentPark Set current coordinates/encoders value as the desired parking position.
Definition lx200fs2.cpp:344
void TrackingStart_RestoreSlewRate()
Definition lx200fs2.cpp:244
enum LX200FS2::TelescopeParkedStatus ParkedStatus
TelescopeParkedStatus
Definition lx200fs2.h:70
@ PARKED_STOPPED
Definition lx200fs2.h:74
@ UNPARKED_NEEDSLEW
Definition lx200fs2.h:75
@ PARKED_NEEDSTOP
Definition lx200fs2.h:73
@ PARKED_NOTPARKED
Definition lx200fs2.h:71
@ PARKED_NEEDABORT
Definition lx200fs2.h:72
INumberVectorProperty SlewAccuracyNP
Definition lx200fs2.h:63
void TrackingStart()
Definition lx200fs2.cpp:235
void TrackingStop_Abort()
Definition lx200fs2.cpp:219
virtual bool updateProperties() override
Called when connected state changes, to add/remove properties.
Definition lx200fs2.cpp:56
INumber SlewAccuracyN[2]
Definition lx200fs2.h:62
virtual bool SetDefaultPark() override
SetDefaultPark Set default coordinates/encoders value as the desired parking position.
Definition lx200fs2.cpp:360
virtual bool initProperties() override
Called to initialize basic properties required all the time.
Definition lx200fs2.cpp:38
virtual bool Park() override
Park the telescope to its home position.
Definition lx200fs2.cpp:178
virtual bool checkConnection() override
Definition lx200fs2.cpp:163
void TrackingStop()
Definition lx200fs2.cpp:208
bool MotorsParked
Definition lx200fs2.h:67
virtual bool ReadScopeStatus() override
Read telescope status.
Definition lx200fs2.cpp:253
ISwitchVectorProperty StopAfterParkSP
Definition lx200fs2.h:65
virtual bool updateLocation(double latitude, double longitude, double elevation) override
Update telescope location settings.
Definition lx200fs2.cpp:371
virtual bool UnPark() override
Unpark the telescope if already parked.
Definition lx200fs2.cpp:312
virtual bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override
Process the client newSwitch command.
Definition lx200fs2.cpp:120
virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
Process the client newNumber command.
Definition lx200fs2.cpp:98
virtual const char * getDefaultName() override
Definition lx200fs2.cpp:151
virtual bool isSlewComplete() override
Definition lx200fs2.cpp:156
virtual bool Goto(double r, double d) override
Move the scope to the supplied RA and DEC coordinates.
Definition lx200fs2.cpp:379
virtual bool saveConfigItems(FILE *fp) override
saveConfigItems Save specific properties in the provide config file handler. Child class usually over...
Definition lx200fs2.cpp:168
virtual bool Sync(double r, double d) override
Set the telescope current RA and DEC coordinates to the supplied RA and DEC coordinates.
Definition lx200fs2.cpp:416
void TrackingStop_AllStop()
Definition lx200fs2.cpp:227
ISwitch StopAfterParkS[2]
Definition lx200fs2.h:66
ISState
Switch state.
Definition indiapi.h:148
One number descriptor.
One switch descriptor.
Number vector property descriptor.
Definition indiapi.h:317
Switch vector property descriptor.
Definition indiapi.h:365