Instrument Neutral Distributed Interface INDI  2.0.2
indiguiderinterface.h
Go to the documentation of this file.
1 /*
2  Guider Interface
3  Copyright (C) 2011 Jasem Mutlaq (mutlaqja@ikarustech.com)
4 
5  This library is free software; you can redistribute it and/or
6  modify it under the terms of the GNU Lesser General Public
7  License as published by the Free Software Foundation; either
8  version 2.1 of the License, or (at your option) any later version.
9 
10  This library is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public
16  License along with this library; if not, write to the Free Software
17  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 
19 */
20 
21 #pragma once
22 
23 #include "indibase.h"
24 #include "indidriver.h"
25 
46 #include <stdint.h>
47 
48 namespace INDI
49 {
50 
52 {
53  public:
59  virtual IPState GuideNorth(uint32_t ms) = 0;
60 
66  virtual IPState GuideSouth(uint32_t ms) = 0;
67 
73  virtual IPState GuideEast(uint32_t ms) = 0;
74 
80  virtual IPState GuideWest(uint32_t ms) = 0;
81 
86  virtual void GuideComplete(INDI_EQ_AXIS axis);
87 
88  protected:
91 
98  void initGuiderProperties(const char *deviceName, const char *groupName);
99 
109  void processGuiderProperties(const char *name, double values[], char *names[], int n);
110 
115 };
116 }
virtual void GuideComplete(INDI_EQ_AXIS axis)
Call GuideComplete once the guiding pulse is complete.
virtual IPState GuideEast(uint32_t ms)=0
Guide east for ms milliseconds. East is defined as RA+.
virtual IPState GuideWest(uint32_t ms)=0
Guide west for ms milliseconds. West is defined as RA-.
INumberVectorProperty GuideNSNP
void initGuiderProperties(const char *deviceName, const char *groupName)
Initilize guider properties. It is recommended to call this function within initProperties() of your ...
INumberVectorProperty GuideWENP
virtual IPState GuideNorth(uint32_t ms)=0
Guide north for ms milliseconds. North is defined as DEC+.
void processGuiderProperties(const char *name, double values[], char *names[], int n)
Call this function whenever client updates GuideNSNP or GuideWSP properties in the primary device....
virtual IPState GuideSouth(uint32_t ms)=0
Guide south for ms milliseconds. South is defined as DEC-.
IPState
Property state.
Definition: indiapi.h:160
INDI_EQ_AXIS
Definition: indibasetypes.h:34
Namespace to encapsulate INDI client, drivers, and mediator classes.
One number descriptor.
Number vector property descriptor.
Definition: indiapi.h:319