#include <stdio.h>
#include <stdlib.h>
#include <cstring>
#include <stdarg.h>
#include <cmath>
#include <unistd.h>
#include <ctime>
#include <fcntl.h>
#include <cerrno>
#include <sys/stat.h>
#include <sys/time.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include "libfli.h"
#include "indidevapi.h"
#include "eventloop.h"
#include "indicom.h"
Go to the source code of this file.
|
void | ISInit (void) |
|
void | getBasicData (void) |
|
void | ISPoll (void *) |
|
void | handleExposure (void *) |
|
void | connectFilter (void) |
|
int | findwheel (flidomain_t domain) |
|
int | manageDefaults (char errmsg[]) |
|
int | checkPowerS (ISwitchVectorProperty *sp) |
|
int | checkPowerN (INumberVectorProperty *np) |
|
int | checkPowerT (ITextVectorProperty *tp) |
|
int | getOnSwitch (ISwitchVectorProperty *sp) |
|
int | isFilterConnected (void) |
|
double | min (void) |
|
double | max (void) |
|
void | ISGetProperties (const char *dev) |
| Get Device Properties. More...
|
|
void | ISNewBLOB (const char *dev, const char *name, int sizes[], int blobsizes[], char *blobs[], char *formats[], char *names[], int n) |
| Update data of an existing blob vector property. More...
|
|
void | ISSnoopDevice (XMLEle *root) |
| Function defined by Drivers that is called when another Driver it is snooping (by having previously called IDSnoopDevice()) sent any INDI message. More...
|
|
void | ISNewSwitch (const char *dev, const char *name, ISState *states, char *names[], int n) |
| Update the value of an existing switch vector property. More...
|
|
void | ISNewText (const char *dev, const char *name, char *texts[], char *names[], int n) |
| Update the value of an existing text vector property. More...
|
|
void | ISNewNumber (const char *dev, const char *name, double values[], char *names[], int n) |
|
|
char * | me |
|
int | errno |
|
long int | Domains [] = { FLIDOMAIN_USB, FLIDOMAIN_SERIAL, FLIDOMAIN_PARALLEL_PORT, FLIDOMAIN_INET } |
|
◆ currentFilter
#define currentFilter FilterN[0].value |
◆ FIRST_FILTER
#define FIRST_FILTER 0 /* Min slot index */ |
◆ FRAME_ILEN
◆ LAST_FILTER
#define LAST_FILTER 14 /* Max slot index */ |
◆ LIBVERSIZ
◆ MAIN_GROUP
#define MAIN_GROUP "Main Control" |
◆ mydev
#define mydev "FLI Wheel" |
◆ PIPEBUFSIZ
◆ POLLMS_OVERRIDE
#define POLLMS_OVERRIDE 1000 |
◆ PREFIXSIZ
◆ checkPowerN()
◆ checkPowerS()
◆ checkPowerT()
◆ connectFilter()
void connectFilter |
( |
void |
| ) |
|
◆ findwheel()
int findwheel |
( |
flidomain_t |
domain | ) |
|
◆ getBasicData()
void getBasicData |
( |
void |
| ) |
|
◆ getOnSwitch()
◆ handleExposure()
void handleExposure |
( |
void * |
| ) |
|
◆ isFilterConnected()
int isFilterConnected |
( |
void |
| ) |
|
◆ ISGetProperties()
void ISGetProperties |
( |
const char * |
dev | ) |
|
Get Device Properties.
- Parameters
-
dev | the name of the device. |
This function is called by the framework whenever the driver has received a getProperties message from an INDI client. The argument
- Parameters
-
dev | is either a string containing the name of the device specified within the message, or NULL if no device was specified. If the driver does not recognize the device, it should ignore the message and do nothing. If dev matches the device the driver is implementing, or dev is NULL, the driver must respond by sending one defXXX message to describe each property defined by this device, including its current (or initial) value. The recommended way to send these messages is to call the appropriate IDDef functions. |
Definition at line 145 of file fli_wheel.c.
◆ ISInit()
◆ ISNewBLOB()
void ISNewBLOB |
( |
const char * |
dev, |
|
|
const char * |
name, |
|
|
int |
sizes[], |
|
|
int |
blobsizes[], |
|
|
char * |
blobs[], |
|
|
char * |
formats[], |
|
|
char * |
names[], |
|
|
int |
n |
|
) |
| |
Update data of an existing blob vector property.
- Parameters
-
dev | the name of the device. |
name | the name of the blob vector property to update. |
sizes | an array of base64 blob sizes in bytes before decoding. |
blobsizes | an array of the sizes of blobs after decoding from base64. |
blobs | an array of decoded data. Each blob size is found in blobsizes array. |
formats | Blob data format (e.g. fits.z). |
names | names of blob members to update. |
n | the number of blobs to update. |
- Note
- You do not need to call this function, it is called by INDI when new blob values arrive from the client. e.g. BLOB element with name names[0] has data located in blobs[0] with size sizes[0] and format formats[0].
Definition at line 158 of file fli_wheel.c.
◆ ISNewNumber()
void ISNewNumber |
( |
const char * |
dev, |
|
|
const char * |
name, |
|
|
double |
values[], |
|
|
char * |
names[], |
|
|
int |
n |
|
) |
| |
◆ ISNewSwitch()
void ISNewSwitch |
( |
const char * |
dev, |
|
|
const char * |
name, |
|
|
ISState * |
states, |
|
|
char * |
names[], |
|
|
int |
n |
|
) |
| |
Update the value of an existing switch vector property.
- Parameters
-
dev | the name of the device. |
name | the name of the switch vector property to update. |
states | an array of switch states. |
names | parallel names to the array of switch states. |
n | the dimension of states[]. |
- Note
- You do not need to call this function, it is called by INDI when new switch values arrive from the client.
Definition at line 175 of file fli_wheel.c.
◆ ISNewText()
void ISNewText |
( |
const char * |
dev, |
|
|
const char * |
name, |
|
|
char * |
texts[], |
|
|
char * |
names[], |
|
|
int |
n |
|
) |
| |
Update the value of an existing text vector property.
- Parameters
-
dev | the name of the device. |
name | the name of the text vector property to update. |
texts | an array of text values. |
names | parallel names to the array of text values. |
n | the dimension of texts[]. |
- Note
- You do not need to call this function, it is called by INDI when new text values arrive from the client.
Definition at line 206 of file fli_wheel.c.
◆ ISPoll()
◆ ISSnoopDevice()
void ISSnoopDevice |
( |
XMLEle * |
root | ) |
|
Function defined by Drivers that is called when another Driver it is snooping (by having previously called IDSnoopDevice()) sent any INDI message.
- Parameters
-
root | The argument contains the full message exactly as it was sent by the driver. Hint: use the IUSnoopXXX utility functions to help crack the message if it was one of setXXX or defXXX. |
Definition at line 170 of file fli_wheel.c.
◆ manageDefaults()
int manageDefaults |
( |
char |
errmsg[] | ) |
|
◆ max()
◆ min()
◆ Domains
long int Domains[] = { FLIDOMAIN_USB, FLIDOMAIN_SERIAL, FLIDOMAIN_PARALLEL_PORT, FLIDOMAIN_INET } |
◆ errno
◆ me