33 virtual bool ISNewNumber(
const char *dev,
const char *name,
double values[],
char *names[],
int n)
override;
34 virtual bool ISNewSwitch(
const char *dev,
const char *name,
ISState *states,
char *names[],
int n)
override;
59 bool sendCommand(
const uint8_t *command,
char *response =
nullptr);
61 bool setPosition(uint32_t ticks);
62 bool getPosition(uint32_t *ticks);
64 bool sync(uint32_t ticks);
70 struct timeval focusMoveStart
74 float focusMoveRequest { 0 };
75 float CalcTimeLeft(timeval,
float);
const char * getDefaultName()
virtual ~FocusMaster()=default
virtual bool initProperties() override
Initilize properties initial state and value. The child class must implement this function.
bool Connect()
Connect to the device. INDI::DefaultDevice implementation connects to appropriate connection interfac...
bool Disconnect()
Disconnect from device.
virtual IPState MoveRelFocuser(FocusDirection dir, uint32_t ticks)
MoveFocuser the focuser to an relative position.
virtual IPState MoveFocuser(FocusDirection dir, int speed, uint16_t duration)
MoveFocuser the focuser in a particular direction with a specific speed for a finite duration.
virtual bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override
Process the client newSwitch command.
void TimerHit()
Callback function to be called once SetTimer duration elapses.
virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
Process the client newNumber command.
virtual bool AbortFocuser()
AbortFocuser all focus motion.
virtual bool updateProperties() override
updateProperties is called whenever there is a change in the CONNECTION status of the driver....
virtual IPState MoveAbsFocuser(uint32_t targetTicks)
MoveFocuser the focuser to an absolute position.
Number vector property descriptor.
Switch vector property descriptor.