|
enum | DomeMeasurements {
DM_DOME_RADIUS,
DM_SHUTTER_WIDTH,
DM_NORTH_DISPLACEMENT,
DM_EAST_DISPLACEMENT,
DM_UP_DISPLACEMENT,
DM_OTA_OFFSET,
DM_DOME_RADIUS,
DM_SHUTTER_WIDTH,
DM_NORTH_DISPLACEMENT,
DM_EAST_DISPLACEMENT,
DM_UP_DISPLACEMENT,
DM_OTA_OFFSET
} |
| Measurements necessary for dome-slit synchronization. More...
|
|
enum | DomeDirection { DOME_CW,
DOME_CCW,
DOME_CW,
DOME_CCW
} |
|
enum | DomeMotionCommand { MOTION_START,
MOTION_STOP,
MOTION_START,
MOTION_STOP
} |
|
enum | DomeParkData {
PARK_NONE,
PARK_AZ,
PARK_AZ_ENCODER,
PARK_NONE,
PARK_AZ,
PARK_AZ_ENCODER
} |
|
enum | ShutterOperation { SHUTTER_OPEN,
SHUTTER_CLOSE,
SHUTTER_OPEN,
SHUTTER_CLOSE
} |
| Shutter operation command. More...
|
|
enum | DomeState {
DOME_IDLE,
DOME_MOVING,
DOME_SYNCED,
DOME_PARKING,
DOME_UNPARKING,
DOME_PARKED,
DOME_UNPARKED,
DOME_IDLE,
DOME_MOVING,
DOME_SYNCED,
DOME_PARKING,
DOME_UNPARKING,
DOME_PARKED,
DOME_UNPARKED
} |
| Dome status. More...
|
|
enum | ShutterStatus {
SHUTTER_OPENED,
SHUTTER_CLOSED,
SHUTTER_MOVING,
SHUTTER_UNKNOWN,
SHUTTER_OPENED,
SHUTTER_CLOSED,
SHUTTER_MOVING,
SHUTTER_UNKNOWN
} |
| Shutter Status. More...
|
|
enum | {
DOME_CAN_ABORT = 1 << 0,
DOME_CAN_ABS_MOVE = 1 << 1,
DOME_CAN_REL_MOVE,
DOME_CAN_PARK = 1 << 3,
DOME_HAS_SHUTTER = 1 << 4,
DOME_HAS_VARIABLE_SPEED = 1 << 5
} |
|
enum | { CONNECTION_NONE = 1 << 0,
CONNECTION_SERIAL = 1 << 1,
CONNECTION_TCP = 1 << 2
} |
|
enum | DomeMeasurements {
DM_DOME_RADIUS,
DM_SHUTTER_WIDTH,
DM_NORTH_DISPLACEMENT,
DM_EAST_DISPLACEMENT,
DM_UP_DISPLACEMENT,
DM_OTA_OFFSET,
DM_DOME_RADIUS,
DM_SHUTTER_WIDTH,
DM_NORTH_DISPLACEMENT,
DM_EAST_DISPLACEMENT,
DM_UP_DISPLACEMENT,
DM_OTA_OFFSET
} |
|
enum | DomeDirection { DOME_CW,
DOME_CCW,
DOME_CW,
DOME_CCW
} |
|
enum | DomeMotionCommand { MOTION_START,
MOTION_STOP,
MOTION_START,
MOTION_STOP
} |
|
enum | DomeParkData {
PARK_NONE,
PARK_AZ,
PARK_AZ_ENCODER,
PARK_NONE,
PARK_AZ,
PARK_AZ_ENCODER
} |
|
enum | ShutterOperation { SHUTTER_OPEN,
SHUTTER_CLOSE,
SHUTTER_OPEN,
SHUTTER_CLOSE
} |
|
enum | DomeState {
DOME_IDLE,
DOME_MOVING,
DOME_SYNCED,
DOME_PARKING,
DOME_UNPARKING,
DOME_PARKED,
DOME_UNPARKED,
DOME_IDLE,
DOME_MOVING,
DOME_SYNCED,
DOME_PARKING,
DOME_UNPARKING,
DOME_PARKED,
DOME_UNPARKED
} |
|
enum | ShutterStatus {
SHUTTER_OPENED,
SHUTTER_CLOSED,
SHUTTER_MOVING,
SHUTTER_UNKNOWN,
SHUTTER_OPENED,
SHUTTER_CLOSED,
SHUTTER_MOVING,
SHUTTER_UNKNOWN
} |
|
enum | {
DOME_CAN_ABORT = 1 << 0,
DOME_CAN_ABS_MOVE = 1 << 1,
DOME_CAN_REL_MOVE,
DOME_CAN_PARK = 1 << 3,
DOME_HAS_SHUTTER = 1 << 4,
DOME_HAS_VARIABLE_SPEED = 1 << 5
} |
|
enum | { CONNECTION_NONE = 1 << 0,
CONNECTION_SERIAL = 1 << 1,
CONNECTION_TCP = 1 << 2
} |
|
enum | INDI_ERROR {
INDI_DEVICE_NOT_FOUND = -1,
INDI_PROPERTY_INVALID = -2,
INDI_PROPERTY_DUPLICATED = -3,
INDI_DISPATCH_ERROR = -4,
INDI_DEVICE_NOT_FOUND = -1,
INDI_PROPERTY_INVALID = -2,
INDI_PROPERTY_DUPLICATED = -3,
INDI_DISPATCH_ERROR = -4
} |
|
enum | DRIVER_INTERFACE {
GENERAL_INTERFACE = 0,
TELESCOPE_INTERFACE = (1 << 0),
CCD_INTERFACE = (1 << 1),
GUIDER_INTERFACE = (1 << 2),
FOCUSER_INTERFACE = (1 << 3),
FILTER_INTERFACE = (1 << 4),
DOME_INTERFACE = (1 << 5),
GPS_INTERFACE = (1 << 6),
WEATHER_INTERFACE = (1 << 7),
AO_INTERFACE = (1 << 8),
DUSTCAP_INTERFACE = (1 << 9),
LIGHTBOX_INTERFACE = (1 << 10),
DETECTOR_INTERFACE = (1 << 11),
ROTATOR_INTERFACE = (1 << 12),
SPECTROGRAPH_INTERFACE = (1 << 13),
AUX_INTERFACE = (1 << 15),
GENERAL_INTERFACE = 0,
TELESCOPE_INTERFACE = (1 << 0),
CCD_INTERFACE = (1 << 1),
GUIDER_INTERFACE = (1 << 2),
FOCUSER_INTERFACE = (1 << 3),
FILTER_INTERFACE = (1 << 4),
DOME_INTERFACE = (1 << 5),
GPS_INTERFACE = (1 << 6),
WEATHER_INTERFACE = (1 << 7),
AO_INTERFACE = (1 << 8),
DUSTCAP_INTERFACE = (1 << 9),
LIGHTBOX_INTERFACE = (1 << 10),
DETECTOR_INTERFACE = (1 << 11),
ROTATOR_INTERFACE = (1 << 12),
SPECTROGRAPH_INTERFACE = (1 << 13),
AUX_INTERFACE = (1 << 15)
} |
| The DRIVER_INTERFACE enum defines the class of devices the driver implements. More...
|
|
enum | INDI_ERROR {
INDI_DEVICE_NOT_FOUND = -1,
INDI_PROPERTY_INVALID = -2,
INDI_PROPERTY_DUPLICATED = -3,
INDI_DISPATCH_ERROR = -4,
INDI_DEVICE_NOT_FOUND = -1,
INDI_PROPERTY_INVALID = -2,
INDI_PROPERTY_DUPLICATED = -3,
INDI_DISPATCH_ERROR = -4
} |
|
enum | DRIVER_INTERFACE {
GENERAL_INTERFACE = 0,
TELESCOPE_INTERFACE = (1 << 0),
CCD_INTERFACE = (1 << 1),
GUIDER_INTERFACE = (1 << 2),
FOCUSER_INTERFACE = (1 << 3),
FILTER_INTERFACE = (1 << 4),
DOME_INTERFACE = (1 << 5),
GPS_INTERFACE = (1 << 6),
WEATHER_INTERFACE = (1 << 7),
AO_INTERFACE = (1 << 8),
DUSTCAP_INTERFACE = (1 << 9),
LIGHTBOX_INTERFACE = (1 << 10),
DETECTOR_INTERFACE = (1 << 11),
ROTATOR_INTERFACE = (1 << 12),
SPECTROGRAPH_INTERFACE = (1 << 13),
AUX_INTERFACE = (1 << 15),
GENERAL_INTERFACE = 0,
TELESCOPE_INTERFACE = (1 << 0),
CCD_INTERFACE = (1 << 1),
GUIDER_INTERFACE = (1 << 2),
FOCUSER_INTERFACE = (1 << 3),
FILTER_INTERFACE = (1 << 4),
DOME_INTERFACE = (1 << 5),
GPS_INTERFACE = (1 << 6),
WEATHER_INTERFACE = (1 << 7),
AO_INTERFACE = (1 << 8),
DUSTCAP_INTERFACE = (1 << 9),
LIGHTBOX_INTERFACE = (1 << 10),
DETECTOR_INTERFACE = (1 << 11),
ROTATOR_INTERFACE = (1 << 12),
SPECTROGRAPH_INTERFACE = (1 << 13),
AUX_INTERFACE = (1 << 15)
} |
| The DRIVER_INTERFACE enum defines the class of devices the driver implements. More...
|
|
|
| Dome () |
|
virtual | ~Dome () |
|
virtual bool | initProperties () |
| Initilize properties initial state and value. More...
|
|
virtual void | ISGetProperties (const char *dev) |
| define the driver's properties to the client. More...
|
|
virtual bool | updateProperties () |
| updateProperties is called whenever there is a change in the CONNECTION status of the driver. More...
|
|
virtual bool | ISNewNumber (const char *dev, const char *name, double values[], char *names[], int n) |
| Process the client newNumber command. More...
|
|
virtual bool | ISNewSwitch (const char *dev, const char *name, ISState *states, char *names[], int n) |
| Process the client newSwitch command. More...
|
|
virtual bool | ISNewText (const char *dev, const char *name, char *texts[], char *names[], int n) |
| Process the client newSwitch command. More...
|
|
virtual bool | ISSnoopDevice (XMLEle *root) |
| Process a snoop event from INDI server. More...
|
|
void | setDomeConnection (const uint8_t &value) |
| setDomeConnection Set Dome connection mode. More...
|
|
uint8_t | getDomeConnection () const |
|
uint32_t | GetDomeCapability () const |
| GetDomeCapability returns the capability of the dome. More...
|
|
void | SetDomeCapability (uint32_t cap) |
| SetDomeCapability set the dome capabilities. More...
|
|
bool | CanAbort () |
|
bool | CanAbsMove () |
|
bool | CanRelMove () |
|
bool | CanPark () |
|
bool | HasShutter () |
|
bool | HasVariableSpeed () |
|
bool | isLocked () |
| isLocked, is the dome currently locked? More...
|
|
DomeState | getDomeState () const |
|
void | setDomeState (const DomeState &value) |
|
IPState | getWeatherState () const |
|
IPState | getMountState () const |
|
| Dome () |
|
virtual | ~Dome () |
|
virtual bool | initProperties () |
| Initilize properties initial state and value. More...
|
|
virtual void | ISGetProperties (const char *dev) |
| define the driver's properties to the client. More...
|
|
virtual bool | updateProperties () |
| updateProperties is called whenever there is a change in the CONNECTION status of the driver. More...
|
|
virtual bool | ISNewNumber (const char *dev, const char *name, double values[], char *names[], int n) |
| Process the client newNumber command. More...
|
|
virtual bool | ISNewSwitch (const char *dev, const char *name, ISState *states, char *names[], int n) |
| Process the client newSwitch command. More...
|
|
virtual bool | ISNewText (const char *dev, const char *name, char *texts[], char *names[], int n) |
| Process the client newSwitch command. More...
|
|
virtual bool | ISSnoopDevice (XMLEle *root) |
| Process a snoop event from INDI server. More...
|
|
void | setDomeConnection (const uint8_t &value) |
| setDomeConnection Set Dome connection mode. More...
|
|
uint8_t | getDomeConnection () const |
|
uint32_t | GetDomeCapability () const |
| GetDomeCapability returns the capability of the dome. More...
|
|
void | SetDomeCapability (uint32_t cap) |
| SetDomeCapability set the dome capabilities. More...
|
|
bool | CanAbort () |
|
bool | CanAbsMove () |
|
bool | CanRelMove () |
|
bool | CanPark () |
|
bool | HasShutter () |
|
bool | HasVariableSpeed () |
|
bool | isLocked () |
| isLocked, is the dome currently locked? More...
|
|
DomeState | getDomeState () const |
|
void | setDomeState (const DomeState &value) |
|
IPState | getWeatherState () const |
|
IPState | getMountState () const |
|
| DefaultDevice () |
|
virtual | ~DefaultDevice () |
|
void | addAuxControls () |
| Add Debug, Simulation, and Configuration options to the driver. More...
|
|
void | addDebugControl () |
| Add Debug control to the driver. More...
|
|
void | addSimulationControl () |
| Add Simulation control to the driver. More...
|
|
void | addConfigurationControl () |
| Add Configuration control to the driver. More...
|
|
void | addPollPeriodControl () |
| Add Polling period control to the driver. More...
|
|
void | resetProperties () |
| Set all properties to IDLE state. More...
|
|
void | defineNumber (INumberVectorProperty *nvp) |
| Define number vector to client & register it. More...
|
|
void | defineText (ITextVectorProperty *tvp) |
| Define text vector to client & register it. More...
|
|
void | defineSwitch (ISwitchVectorProperty *svp) |
| Define switch vector to client & register it. More...
|
|
void | defineLight (ILightVectorProperty *lvp) |
| Define light vector to client & register it. More...
|
|
void | defineBLOB (IBLOBVectorProperty *bvp) |
| Define BLOB vector to client & register it. More...
|
|
virtual bool | deleteProperty (const char *propertyName) |
| Delete a property and unregister it. More...
|
|
virtual void | setConnected (bool status, IPState state=IPS_OK, const char *msg=nullptr) |
| Set connection switch status in the client. More...
|
|
int | SetTimer (uint32_t ms) |
| Set a timer to call the function TimerHit after ms milliseconds. More...
|
|
void | RemoveTimer (int id) |
| Remove timer added with SetTimer. More...
|
|
virtual void | TimerHit () |
| Callback function to be called once SetTimer duration elapses. More...
|
|
virtual const char * | getDriverExec () |
|
virtual const char * | getDriverName () |
|
void | setVersion (uint16_t vMajor, uint16_t vMinor) |
| Set driver version information to be defined in DRIVER_INFO property as vMajor.vMinor. More...
|
|
uint16_t | getMajorVersion () |
|
uint16_t | getMinorVersion () |
|
virtual bool | ISNewBLOB (const char *dev, const char *name, int sizes[], int blobsizes[], char *blobs[], char *formats[], char *names[], int n) |
| Process the client newBLOB command. More...
|
|
virtual uint16_t | getDriverInterface () |
|
void | setDriverInterface (uint16_t value) |
| setInterface Set driver interface. More...
|
|
| DefaultDevice () |
|
virtual | ~DefaultDevice () |
|
void | addAuxControls () |
| Add Debug, Simulation, and Configuration options to the driver. More...
|
|
void | addDebugControl () |
| Add Debug control to the driver. More...
|
|
void | addSimulationControl () |
| Add Simulation control to the driver. More...
|
|
void | addConfigurationControl () |
| Add Configuration control to the driver. More...
|
|
void | addPollPeriodControl () |
| Add Polling period control to the driver. More...
|
|
void | resetProperties () |
| Set all properties to IDLE state. More...
|
|
void | defineNumber (INumberVectorProperty *nvp) |
| Define number vector to client & register it. More...
|
|
void | defineText (ITextVectorProperty *tvp) |
| Define text vector to client & register it. More...
|
|
void | defineSwitch (ISwitchVectorProperty *svp) |
| Define switch vector to client & register it. More...
|
|
void | defineLight (ILightVectorProperty *lvp) |
| Define light vector to client & register it. More...
|
|
void | defineBLOB (IBLOBVectorProperty *bvp) |
| Define BLOB vector to client & register it. More...
|
|
virtual bool | deleteProperty (const char *propertyName) |
| Delete a property and unregister it. More...
|
|
virtual void | setConnected (bool status, IPState state=IPS_OK, const char *msg=nullptr) |
| Set connection switch status in the client. More...
|
|
int | SetTimer (uint32_t ms) |
| Set a timer to call the function TimerHit after ms milliseconds. More...
|
|
void | RemoveTimer (int id) |
| Remove timer added with SetTimer. More...
|
|
virtual void | TimerHit () |
| Callback function to be called once SetTimer duration elapses. More...
|
|
virtual const char * | getDriverExec () |
|
virtual const char * | getDriverName () |
|
void | setVersion (uint16_t vMajor, uint16_t vMinor) |
| Set driver version information to be defined in DRIVER_INFO property as vMajor.vMinor. More...
|
|
uint16_t | getMajorVersion () |
|
uint16_t | getMinorVersion () |
|
virtual bool | ISNewBLOB (const char *dev, const char *name, int sizes[], int blobsizes[], char *blobs[], char *formats[], char *names[], int n) |
| Process the client newBLOB command. More...
|
|
virtual uint16_t | getDriverInterface () |
|
void | setDriverInterface (uint16_t value) |
| setInterface Set driver interface. More...
|
|
| BaseDevice () |
|
virtual | ~BaseDevice () |
|
INumberVectorProperty * | getNumber (const char *name) |
|
ITextVectorProperty * | getText (const char *name) |
|
ISwitchVectorProperty * | getSwitch (const char *name) |
|
ILightVectorProperty * | getLight (const char *name) |
|
IBLOBVectorProperty * | getBLOB (const char *name) |
|
IPState | getPropertyState (const char *name) |
|
IPerm | getPropertyPermission (const char *name) |
|
void | registerProperty (void *p, INDI_PROPERTY_TYPE type) |
|
int | removeProperty (const char *name, char *errmsg) |
| Remove a property. More...
|
|
void * | getRawProperty (const char *name, INDI_PROPERTY_TYPE type=INDI_UNKNOWN) |
| Return a property and its type given its name. More...
|
|
INDI::Property * | getProperty (const char *name, INDI_PROPERTY_TYPE type=INDI_UNKNOWN) |
| Return a property and its type given its name. More...
|
|
std::vector< INDI::Property * > * | getProperties () |
| Return a list of all properties in the device. More...
|
|
bool | buildSkeleton (const char *filename) |
| Build driver properties from a skeleton file. More...
|
|
bool | isConnected () |
|
void | setDeviceName (const char *dev) |
| Set the device name. More...
|
|
const char * | getDeviceName () |
|
void | addMessage (const std::string &msg) |
| Add message to the driver's message queue. More...
|
|
void | checkMessage (XMLEle *root) |
|
void | doMessage (XMLEle *msg) |
|
std::string | messageQueue (int index) const |
|
std::string | lastMessage () |
|
void | setMediator (INDI::BaseMediator *med) |
| Set the driver's mediator to receive notification of news devices and updated property values. More...
|
|
INDI::BaseMediator * | getMediator () |
|
const char * | getDriverName () |
|
const char * | getDriverExec () |
|
const char * | getDriverVersion () |
|
| BaseDevice () |
|
virtual | ~BaseDevice () |
|
INumberVectorProperty * | getNumber (const char *name) |
|
ITextVectorProperty * | getText (const char *name) |
|
ISwitchVectorProperty * | getSwitch (const char *name) |
|
ILightVectorProperty * | getLight (const char *name) |
|
IBLOBVectorProperty * | getBLOB (const char *name) |
|
IPState | getPropertyState (const char *name) |
|
IPerm | getPropertyPermission (const char *name) |
|
void | registerProperty (void *p, INDI_PROPERTY_TYPE type) |
|
int | removeProperty (const char *name, char *errmsg) |
| Remove a property. More...
|
|
void * | getRawProperty (const char *name, INDI_PROPERTY_TYPE type=INDI_UNKNOWN) |
| Return a property and its type given its name. More...
|
|
INDI::Property * | getProperty (const char *name, INDI_PROPERTY_TYPE type=INDI_UNKNOWN) |
| Return a property and its type given its name. More...
|
|
std::vector< INDI::Property * > * | getProperties () |
| Return a list of all properties in the device. More...
|
|
bool | buildSkeleton (const char *filename) |
| Build driver properties from a skeleton file. More...
|
|
bool | isConnected () |
|
void | setDeviceName (const char *dev) |
| Set the device name. More...
|
|
const char * | getDeviceName () |
|
void | addMessage (const std::string &msg) |
| Add message to the driver's message queue. More...
|
|
void | checkMessage (XMLEle *root) |
|
void | doMessage (XMLEle *msg) |
|
std::string | messageQueue (int index) const |
|
std::string | lastMessage () |
|
void | setMediator (INDI::BaseMediator *med) |
| Set the driver's mediator to receive notification of news devices and updated property values. More...
|
|
INDI::BaseMediator * | getMediator () |
|
const char * | getDriverName () |
|
const char * | getDriverExec () |
|
const char * | getDriverVersion () |
|
|
virtual bool | SetSpeed (double rpm) |
| SetSpeed Set Dome speed. More...
|
|
virtual IPState | Move (DomeDirection dir, DomeMotionCommand operation) |
| Move the Dome in a particular direction. More...
|
|
virtual IPState | MoveAbs (double az) |
| Move the Dome to an absolute azimuth. More...
|
|
virtual IPState | MoveRel (double azDiff) |
| Move the Dome to an relative position. More...
|
|
virtual bool | Abort () |
| Abort all dome motion. More...
|
|
virtual IPState | Park () |
| Goto Park Position. More...
|
|
virtual IPState | UnPark () |
| UnPark dome. More...
|
|
virtual IPState | ControlShutter (ShutterOperation operation) |
| Open or Close shutter. More...
|
|
const char * | GetShutterStatusString (ShutterStatus status) |
| getShutterStatusString More...
|
|
void | SetParkDataType (DomeParkData type) |
| setParkDataType Sets the type of parking data stored in the park data file and presented to the user. More...
|
|
bool | InitPark () |
| InitPark Loads parking data (stored in ~/.indi/ParkData.xml) that contains parking status and parking position. More...
|
|
bool | isParked () |
| isParked is dome currently parked? More...
|
|
void | SetParked (bool isparked) |
| SetParked Change the mount parking status. More...
|
|
double | GetAxis1Park () |
|
double | GetAxis1ParkDefault () |
|
void | SetAxis1Park (double value) |
| SetRAPark Set current AZ parking position. More...
|
|
void | SetAxis1ParkDefault (double steps) |
| SetAxis1Park Set default AZ parking position. More...
|
|
virtual bool | SetCurrentPark () |
| SetCurrentPark Set current coordinates/encoders value as the desired parking position. More...
|
|
virtual bool | SetDefaultPark () |
| SetDefaultPark Set default coordinates/encoders value as the desired parking position. More...
|
|
char * | LoadParkData () |
|
bool | WriteParkData () |
|
bool | GetTargetAz (double &Az, double &Alt, double &minAz, double &maxAz) |
| GetTargetAz. More...
|
|
bool | Intersection (point3D p1, point3D p2, double r, double &mu1, double &mu2) |
| Intersection Calculate the intersection of a ray and a sphere. More...
|
|
bool | OpticalCenter (point3D MountCenter, double dOpticalAxis, double Lat, double Ah, point3D &OP) |
| OpticalCenter This function calculates the distance from the optical axis to the Dome center. More...
|
|
bool | OpticalVector (double Az, double Alt, point3D &OV) |
| OpticalVector This function calculates a second point for determining the optical axis. More...
|
|
bool | CheckHorizon (double HA, double dec, double lat) |
| CheckHorizon Returns true if telescope points above horizon. More...
|
|
virtual bool | saveConfigItems (FILE *fp) |
| saveConfigItems Saves the Device Port and Dome Presets in the configuration file More...
|
|
void | UpdateMountCoords () |
| updateCoords updates the horizontal coordinates (Az & Alt) of the mount from the snooped RA, DEC and observer's location. More...
|
|
virtual void | UpdateAutoSync () |
| UpdateAutoSync This function calculates the target dome azimuth from the mount's target coordinates given the dome parameters. More...
|
|
virtual bool | Handshake () |
| perform handshake with device to check communication More...
|
|
double | Csc (double x) |
|
double | Sec (double x) |
|
virtual bool | SetSpeed (double rpm) |
| SetSpeed Set Dome speed. More...
|
|
virtual IPState | Move (DomeDirection dir, DomeMotionCommand operation) |
| Move the Dome in a particular direction. More...
|
|
virtual IPState | MoveAbs (double az) |
| Move the Dome to an absolute azimuth. More...
|
|
virtual IPState | MoveRel (double azDiff) |
| Move the Dome to an relative position. More...
|
|
virtual bool | Abort () |
| Abort all dome motion. More...
|
|
virtual IPState | Park () |
| Goto Park Position. More...
|
|
virtual IPState | UnPark () |
| UnPark dome. More...
|
|
virtual IPState | ControlShutter (ShutterOperation operation) |
| Open or Close shutter. More...
|
|
const char * | GetShutterStatusString (ShutterStatus status) |
| getShutterStatusString More...
|
|
void | SetParkDataType (DomeParkData type) |
| setParkDataType Sets the type of parking data stored in the park data file and presented to the user. More...
|
|
bool | InitPark () |
| InitPark Loads parking data (stored in ~/.indi/ParkData.xml) that contains parking status and parking position. More...
|
|
bool | isParked () |
| isParked is dome currently parked? More...
|
|
void | SetParked (bool isparked) |
| SetParked Change the mount parking status. More...
|
|
double | GetAxis1Park () |
|
double | GetAxis1ParkDefault () |
|
void | SetAxis1Park (double value) |
| SetRAPark Set current AZ parking position. More...
|
|
void | SetAxis1ParkDefault (double steps) |
| SetAxis1Park Set default AZ parking position. More...
|
|
virtual bool | SetCurrentPark () |
| SetCurrentPark Set current coordinates/encoders value as the desired parking position. More...
|
|
virtual bool | SetDefaultPark () |
| SetDefaultPark Set default coordinates/encoders value as the desired parking position. More...
|
|
char * | LoadParkData () |
|
bool | WriteParkData () |
|
bool | GetTargetAz (double &Az, double &Alt, double &minAz, double &maxAz) |
| GetTargetAz. More...
|
|
bool | Intersection (point3D p1, point3D p2, double r, double &mu1, double &mu2) |
| Intersection Calculate the intersection of a ray and a sphere. More...
|
|
bool | OpticalCenter (point3D MountCenter, double dOpticalAxis, double Lat, double Ah, point3D &OP) |
| OpticalCenter This function calculates the distance from the optical axis to the Dome center. More...
|
|
bool | OpticalVector (double Az, double Alt, point3D &OV) |
| OpticalVector This function calculates a second point for determining the optical axis. More...
|
|
bool | CheckHorizon (double HA, double dec, double lat) |
| CheckHorizon Returns true if telescope points above horizon. More...
|
|
virtual bool | saveConfigItems (FILE *fp) |
| saveConfigItems Saves the Device Port and Dome Presets in the configuration file More...
|
|
void | UpdateMountCoords () |
| updateCoords updates the horizontal coordinates (Az & Alt) of the mount from the snooped RA, DEC and observer's location. More...
|
|
virtual void | UpdateAutoSync () |
| UpdateAutoSync This function calculates the target dome azimuth from the mount's target coordinates given the dome parameters. More...
|
|
virtual bool | Handshake () |
| perform handshake with device to check communication More...
|
|
double | Csc (double x) |
|
double | Sec (double x) |
|
void | setDynamicPropertiesBehavior (bool defineEnabled, bool deleteEnabled) |
| setDynamicPropertiesBehavior controls handling of dynamic properties. More...
|
|
virtual bool | loadConfig (bool silent=false, const char *property=nullptr) |
| Load the last saved configuration file. More...
|
|
virtual bool | saveConfig (bool silent=false, const char *property=nullptr) |
| Save the current properties in a configuration file. More...
|
|
virtual bool | saveAllConfigItems (FILE *fp) |
| saveAllConfigItems Save all the drivers' properties in the configuration file More...
|
|
virtual bool | loadDefaultConfig () |
| Load the default configuration file. More...
|
|
void | setDebug (bool enable) |
| Toggle driver debug status A driver can be more verbose if Debug option is enabled by the client. More...
|
|
void | setSimulation (bool enable) |
| Toggle driver simulation status A driver can run in simulation mode if Simulation option is enabled by the client. More...
|
|
virtual void | debugTriggered (bool enable) |
| Inform driver that the debug option was triggered. More...
|
|
virtual void | simulationTriggered (bool enable) |
| Inform driver that the simulation option was triggered. More...
|
|
bool | isDebug () |
|
bool | isSimulation () |
|
virtual bool | Connect () |
| Connect to the device. More...
|
|
virtual bool | Disconnect () |
| Disconnect from device. More...
|
|
void | registerConnection (Connection::Interface *newConnection) |
| registerConnection Add new connection plugin to the existing connection pool. More...
|
|
bool | unRegisterConnection (Connection::Interface *existingConnection) |
| unRegisterConnection Remove connection from existing pool More...
|
|
Connection::Interface * | getActiveConnection () |
|
void | setDefaultPollingPeriod (uint32_t period) |
|
uint32_t | getPollingPeriod () |
|
virtual const char * | getDefaultName ()=0 |
|
void | setDynamicPropertiesBehavior (bool defineEnabled, bool deleteEnabled) |
| setDynamicPropertiesBehavior controls handling of dynamic properties. More...
|
|
virtual bool | loadConfig (bool silent=false, const char *property=nullptr) |
| Load the last saved configuration file. More...
|
|
virtual bool | saveConfig (bool silent=false, const char *property=nullptr) |
| Save the current properties in a configuration file. More...
|
|
virtual bool | saveAllConfigItems (FILE *fp) |
| saveAllConfigItems Save all the drivers' properties in the configuration file More...
|
|
virtual bool | loadDefaultConfig () |
| Load the default configuration file. More...
|
|
void | setDebug (bool enable) |
| Toggle driver debug status A driver can be more verbose if Debug option is enabled by the client. More...
|
|
void | setSimulation (bool enable) |
| Toggle driver simulation status A driver can run in simulation mode if Simulation option is enabled by the client. More...
|
|
virtual void | debugTriggered (bool enable) |
| Inform driver that the debug option was triggered. More...
|
|
virtual void | simulationTriggered (bool enable) |
| Inform driver that the simulation option was triggered. More...
|
|
bool | isDebug () |
|
bool | isSimulation () |
|
virtual bool | Connect () |
| Connect to the device. More...
|
|
virtual bool | Disconnect () |
| Disconnect from device. More...
|
|
void | registerConnection (Connection::Interface *newConnection) |
| registerConnection Add new connection plugin to the existing connection pool. More...
|
|
bool | unRegisterConnection (Connection::Interface *existingConnection) |
| unRegisterConnection Remove connection from existing pool More...
|
|
Connection::Interface * | getActiveConnection () |
|
void | setDefaultPollingPeriod (uint32_t period) |
|
uint32_t | getPollingPeriod () |
|
virtual const char * | getDefaultName ()=0 |
|
int | buildProp (XMLEle *root, char *errmsg) |
| Build a property given the supplied XML element (defXXX) More...
|
|
int | setValue (XMLEle *root, char *errmsg) |
| handle SetXXX commands from client More...
|
|
int | setBLOB (IBLOBVectorProperty *pp, XMLEle *root, char *errmsg) |
| Parse and store BLOB in the respective vector. More...
|
|
int | buildProp (XMLEle *root, char *errmsg) |
| Build a property given the supplied XML element (defXXX) More...
|
|
int | setValue (XMLEle *root, char *errmsg) |
| handle SetXXX commands from client More...
|
|
int | setBLOB (IBLOBVectorProperty *pp, XMLEle *root, char *errmsg) |
| Parse and store BLOB in the respective vector. More...
|
|
Class to provide general functionality of a Dome device.
Both relative and absolute position domes are supported. Furthermore, if no position feedback is available from the dome, an open-loop control is possible with simple direction commands (Clockwise and counter clockwise).
Before using any of the dome functions, you must define the capabilities of the dome by calling SetDomeCapability() function. All positions are represented as degrees of azimuth.
Relative motion is specified in degrees as either positive (clock wise direction), or negative (counter clock-wise direction).
Slaving is used to synchronizes the dome's azimuth position with that of the mount. The mount's coordinates are snooped from the active mount that has its name specified in ACTIVE_TELESCOPE property in the ACTIVE_DEVICES vector. Dome motion begins when it receives TARGET_EOD_COORD property from the mount driver when the mount starts slewing to the desired target coordinates /em OR when the mount's current tracking position exceeds the AutoSync threshold. Therefore, slaving is performed while slewing and tracking. The user is required to fill in all required parameters before slaving can be used. The AutoSync threshold is the difference in degrees between the dome's azimuth angle and the mount's azimuth angle that should trigger a dome motion. By default, it is set to 0.5 degrees which would trigger dome motion due to any difference between the dome and mount azimuth angles that exceeds 0.5 degrees. For example, if the threshold is set to 5 degrees, the dome will only start moving to sync with the mount's azimuth angle once the difference in azimuth angles is equal or exceeds 5 degrees.
Custom parking position is available for absolute/relative position domes.
For roll-off observatories, parking state reflects whether the roof is closed or open.
Developers need to subclass INDI::Dome to implement any driver for Domes within INDI.
- Note
- The code used calculate dome target AZ and ZD is written by Ferran Casarramona, and adapted from code from Markus Wildi. The transformations are based on the paper Matrix Method for Coodinates Transformation written by Toshimi Taki (http://www.asahi-net.or.jp/~zs3t-tk).
- Author
- Jasem Mutlaq