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

Macros

#define GOTO_RATE   5 /* slew rate, degrees/s */
 
#define SLEW_RATE   0.5 /* slew rate, degrees/s */
 
#define FINE_SLEW_RATE   0.1 /* slew rate, degrees/s */
 
#define GOTO_LIMIT   5.5 /* Move at GOTO_RATE until distance from target is GOTO_LIMIT degrees */
 
#define SLEW_LIMIT   1 /* Move at SLEW_LIMIT until distance from target is SLEW_LIMIT degrees */
 
#define PARAMOUNT_TIMEOUT   3 /* Timeout in seconds */
 
#define PARAMOUNT_NORTH   0
 
#define PARAMOUNT_SOUTH   1
 
#define PARAMOUNT_EAST   2
 
#define PARAMOUNT_WEST   3
 
#define RA_AXIS   0
 
#define DEC_AXIS   1
 
#define STELLAR_DAY   86164.098903691
 
#define TRACKRATE_SIDEREAL   ((360.0 * 3600.0) / STELLAR_DAY)
 
#define SOLAR_DAY   86400
 
#define TRACKRATE_SOLAR   ((360.0 * 3600.0) / SOLAR_DAY)
 
#define TRACKRATE_LUNAR   14.511415
 
#define SLEWMODES   9
 

Functions

std::unique_ptr< Paramountparamount_mount (new Paramount())
 
void ISPoll (void *p)
 Used to read periodically the data from the device. More...
 
void ISGetProperties (const char *dev)
 Get Device Properties. 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)
 
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

const double slewspeeds [SLEWMODES] = { 1.0, 2.0, 4.0, 8.0, 32.0, 64.0, 128.0, 256.0, 512.0 }
 

Macro Definition Documentation

◆ DEC_AXIS

#define DEC_AXIS   1

◆ FINE_SLEW_RATE

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

◆ GOTO_LIMIT

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

◆ GOTO_RATE

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

◆ PARAMOUNT_EAST

#define PARAMOUNT_EAST   2

◆ PARAMOUNT_NORTH

#define PARAMOUNT_NORTH   0

◆ PARAMOUNT_SOUTH

#define PARAMOUNT_SOUTH   1

◆ PARAMOUNT_TIMEOUT

#define PARAMOUNT_TIMEOUT   3 /* Timeout in seconds */

◆ PARAMOUNT_WEST

#define PARAMOUNT_WEST   3

◆ RA_AXIS

#define RA_AXIS   0

◆ SLEW_LIMIT

#define SLEW_LIMIT   1 /* 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   9

◆ SOLAR_DAY

#define SOLAR_DAY   86400

◆ STELLAR_DAY

#define STELLAR_DAY   86164.098903691

◆ TRACKRATE_LUNAR

#define TRACKRATE_LUNAR   14.511415

◆ TRACKRATE_SIDEREAL

#define TRACKRATE_SIDEREAL   ((360.0 * 3600.0) / STELLAR_DAY)

◆ TRACKRATE_SOLAR

#define TRACKRATE_SOLAR   ((360.0 * 3600.0) / SOLAR_DAY)

Function Documentation

◆ ISNewNumber()

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

◆ ISPoll()

void ISPoll ( void *  p)

Used to read periodically the data from the device.

Parameters
pthe AAGCloudWatcher object

◆ paramount_mount()

std::unique_ptr<Paramount> paramount_mount ( new   Paramount())

Variable Documentation

◆ slewspeeds

const double slewspeeds[SLEWMODES] = { 1.0, 2.0, 4.0, 8.0, 32.0, 64.0, 128.0, 256.0, 512.0 }