Instrument Neutral Distributed Interface INDI
1.9.5
|
Go to the documentation of this file.
84 "Reverse Motion", groupName,
IP_RW,
91 "Backlash", groupName,
IP_RW,
218 uint32_t maxTravel = rint(values[0]);
283 uint32_t steps =
static_cast<uint32_t
>(values[0]);
300 int newPos = rint(values[0]);
346 int newPos = rint(values[0]);
367 "Requested position out of bound. Focus minimum position is %g",
FocusAbsPosN[0].
min);
378 "Requested position out of bound. Focus maximum position is %g",
FocusAbsPosN[0].
max);
436 if (prevDirection != targetDirection && prevState ==
IPS_BUSY)
INumberVectorProperty FocusAbsPosNP
INumberVectorProperty FocusMaxPosNP
void IUUpdateMinMax(const INumberVectorProperty *nvp)
Function to update the min and max elements of a number in the client.
INumber FocusBacklashN[1]
INumberVectorProperty FocusSyncNP
void IUFillNumber(INumber *np, const char *name, const char *label, const char *format, double min, double max, double step, double value)
Assign attributes for a number property. The number's auxiliary elements will be set to NULL.
DefaultDevice * m_defaultDevice
void defineProperty(INumberVectorProperty *property)
ISwitchVectorProperty FocusAbortSP
virtual bool SetFocuserBacklash(int32_t steps)
SetFocuserBacklash Set the focuser backlash compensation value.
const char * getDeviceName() const
virtual bool SetFocuserMaxPosition(uint32_t ticks)
SetFocuserMaxPosition Set Focuser Maximum position limit in the hardware.
void IUSaveConfigNumber(FILE *fp, const INumberVectorProperty *nvp)
Add a number vector property value to the configuration file.
ISwitchVectorProperty FocusReverseSP
#define DEBUGDEVICE(device, priority, msg)
void IUResetSwitch(ISwitchVectorProperty *svp)
Reset all switches in a switch vector property to OFF.
virtual bool SetFocuserSpeed(int speed)
SetFocuserSpeed Set Focuser speed.
ISwitchVectorProperty FocusBacklashSP
bool saveConfigItems(FILE *fp)
saveConfigItems save focuser properties defined in the interface in config file
INumberVectorProperty FocusTimerNP
virtual bool AbortFocuser()
AbortFocuser all focus motion.
FocuserInterface(DefaultDevice *defaultDevice)
void IUFillSwitchVector(ISwitchVectorProperty *svp, ISwitch *sp, int nsp, const char *dev, const char *name, const char *label, const char *group, IPerm p, ISRule r, double timeout, IPState s)
Assign attributes for a switch vector property. The vector's auxiliary elements will be set to NULL.
void IUFillNumberVector(INumberVectorProperty *nvp, INumber *np, int nnp, const char *dev, const char *name, const char *label, const char *group, IPerm p, double timeout, IPState s)
Assign attributes for a number vector property. The vector's auxiliary elements will be set to NULL.
ISwitchVectorProperty FocusMotionSP
virtual bool SyncFocuser(uint32_t ticks)
SyncFocuser Set current position to ticks without moving the focuser.
bool processNumber(const char *dev, const char *name, double values[], char *names[], int n)
Process focus number properties.
virtual IPState MoveRelFocuser(FocusDirection dir, uint32_t ticks)
MoveFocuser the focuser to an relative position.
int IUUpdateSwitch(ISwitchVectorProperty *svp, ISState *states, char *names[], int n)
Update all switches in a switch vector property.
INumberVectorProperty FocusRelPosNP
virtual bool SetFocuserBacklashEnabled(bool enabled)
SetFocuserBacklashEnabled Enables or disables the focuser backlash compensation.
virtual bool ReverseFocuser(bool enabled)
ReverseFocuser Reverse focuser motion direction.
ISwitch FocusBacklashS[2]
virtual IPState MoveAbsFocuser(uint32_t targetTicks)
MoveFocuser the focuser to an absolute position.
bool updateProperties()
updateProperties Define or Delete Rotator properties based on the connection status of the base devic...
void initProperties(const char *groupName)
Initilize focuser properties. It is recommended to call this function within initProperties() of your...
#define DEBUGFDEVICE(device, priority, msg,...)
virtual bool saveConfig(bool silent=false, const char *property=nullptr)
Save the current properties in a configuration file.
Namespace to encapsulate INDI client, drivers, and mediator classes.
int IUUpdateNumber(INumberVectorProperty *nvp, double values[], char *names[], int n)
Update all numbers in a number vector property.
bool processSwitch(const char *dev, const char *name, ISState *states, char *names[], int n)
Process focus switch properties.
INumberVectorProperty FocusSpeedNP
int IUFindOnSwitchIndex(const ISwitchVectorProperty *sp)
Returns the index of first ON switch it finds in the vector switch property.
void IUSaveConfigSwitch(FILE *fp, const ISwitchVectorProperty *svp)
Add a switch vector property value to the configuration file.
Class to provide extended functionality for devices in addition to the functionality provided by INDI...
INumberVectorProperty FocusBacklashNP
virtual bool deleteProperty(const char *propertyName)
Delete a property and unregister it. It will also be deleted from all clients.
void void void IDSetNumber(const INumberVectorProperty *n, const char *msg,...) ATTRIBUTE_FORMAT_PRINTF(2
Tell client to update an existing number vector property.
void void void void void IDSetSwitch(const ISwitchVectorProperty *s, const char *msg,...) ATTRIBUTE_FORMAT_PRINTF(2
Tell client to update an existing switch vector property.
void IUFillSwitch(ISwitch *sp, const char *name, const char *label, ISState s)
Assign attributes for a switch property. The switch's auxiliary elements will be set to NULL.
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.