TwiceAsNice  2019-02-18
Macros | Functions | Variables
eqmod.cpp File Reference
#include "eqmod.h"
#include "mach_gettime.h"
#include <cmath>
#include <memory>
#include <cstring>
#include <unistd.h>
#include <indicom.h>
#include <libnova/sidereal_time.h>
#include <libnova/transform.h>
#include <libnova/utility.h>
Include dependency graph for eqmod.cpp:

Macros

#define DEVICE_NAME   "EQMod Mount"
 
#define GOTO_RATE   2 /* slew rate, degrees/s */
 
#define SLEW_RATE   0.5 /* slew rate, degrees/s */
 
#define FINE_SLEW_RATE   0.1 /* slew rate, degrees/s */
 
#define SID_RATE   0.004178 /* sidereal rate, degrees/s */
 
#define GOTO_LIMIT   5 /* Move at GOTO_RATE until distance from target is GOTO_LIMIT degrees */
 
#define SLEW_LIMIT   2 /* Move at SLEW_LIMIT until distance from target is SLEW_LIMIT degrees */
 
#define FINE_SLEW_LIMIT   0.5 /* Move at FINE_SLEW_RATE until distance from target is FINE_SLEW_LIMIT degrees */
 
#define GOTO_ITERATIVE_LIMIT   5 /* Max GOTO Iterations */
 
#define RAGOTORESOLUTION   5 /* GOTO Resolution in arcsecs */
 
#define DEGOTORESOLUTION   5 /* GOTO Resolution in arcsecs */
 
#define SLEWMODES   11
 
#define RA_AXIS   0
 
#define DEC_AXIS   1
 
#define GUIDE_NORTH   0
 
#define GUIDE_SOUTH   1
 
#define GUIDE_WEST   0
 
#define GUIDE_EAST   1
 

Functions

std::unique_ptr< EQModeqmod (new EQMod())
 
void ISGetProperties (const char *dev)
 Get Device Properties. More...
 
void ISNewSwitch (const char *dev, const char *name, ISState *states, char *names[], int num)
 Update the value of an existing switch vector property. More...
 
void ISNewText (const char *dev, const char *name, char *texts[], char *names[], int num)
 Update the value of an existing text vector property. More...
 
void ISNewNumber (const char *dev, const char *name, double values[], char *names[], int num)
 
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...
 

Variables

double slewspeeds [SLEWMODES - 1] = { 1.0, 2.0, 4.0, 8.0, 32.0, 64.0, 128.0, 600.0, 700.0, 800.0 }
 
double defaultspeed = 64.0
 
int DBG_SCOPE_STATUS
 
int DBG_COMM
 
int DBG_MOUNT
 

Macro Definition Documentation

◆ DEC_AXIS

#define DEC_AXIS   1

◆ DEGOTORESOLUTION

#define DEGOTORESOLUTION   5 /* GOTO Resolution in arcsecs */

◆ DEVICE_NAME

#define DEVICE_NAME   "EQMod Mount"

◆ FINE_SLEW_LIMIT

#define FINE_SLEW_LIMIT   0.5 /* Move at FINE_SLEW_RATE until distance from target is FINE_SLEW_LIMIT degrees */

◆ FINE_SLEW_RATE

#define FINE_SLEW_RATE   0.1 /* slew rate, degrees/s */

◆ GOTO_ITERATIVE_LIMIT

#define GOTO_ITERATIVE_LIMIT   5 /* Max GOTO Iterations */

◆ GOTO_LIMIT

#define GOTO_LIMIT   5 /* Move at GOTO_RATE until distance from target is GOTO_LIMIT degrees */

◆ GOTO_RATE

#define GOTO_RATE   2 /* slew rate, degrees/s */

◆ GUIDE_EAST

#define GUIDE_EAST   1

◆ GUIDE_NORTH

#define GUIDE_NORTH   0

◆ GUIDE_SOUTH

#define GUIDE_SOUTH   1

◆ GUIDE_WEST

#define GUIDE_WEST   0

◆ RA_AXIS

#define RA_AXIS   0

◆ RAGOTORESOLUTION

#define RAGOTORESOLUTION   5 /* GOTO Resolution in arcsecs */

◆ SID_RATE

#define SID_RATE   0.004178 /* sidereal rate, degrees/s */

◆ SLEW_LIMIT

#define SLEW_LIMIT   2 /* Move at SLEW_LIMIT until distance from target is SLEW_LIMIT degrees */

◆ SLEW_RATE

#define SLEW_RATE   0.5 /* slew rate, degrees/s */

◆ SLEWMODES

#define SLEWMODES   11

Function Documentation

◆ eqmod()

std::unique_ptr<EQMod> eqmod ( new   EQMod())

◆ ISNewNumber()

void ISNewNumber ( const char *  dev,
const char *  name,
double  values[],
char *  names[],
int  num 
)

Variable Documentation

◆ DBG_COMM

int DBG_COMM

◆ DBG_MOUNT

int DBG_MOUNT

◆ DBG_SCOPE_STATUS

int DBG_SCOPE_STATUS

◆ defaultspeed

double defaultspeed = 64.0

◆ slewspeeds

double slewspeeds[SLEWMODES - 1] = { 1.0, 2.0, 4.0, 8.0, 32.0, 64.0, 128.0, 600.0, 700.0, 800.0 }