39 virtual bool ISNewNumber(
const char *dev,
const char *name,
double values[],
char *names[],
int n)
override;
40 virtual bool ISNewSwitch(
const char *dev,
const char *name,
ISState *states,
char *names[],
int n)
override;
57 virtual bool Abort()
override;
94 bool rotatorGotoAz(
double az);
96 bool rotatorSyncAZ(
double az);
97 bool rotatorSetHome(
double az);
98 bool rotatorSetPark(
double az);
99 bool rotatorGotoPark();
100 bool rotatorGotoHome();
101 bool rotatorMeasureHome();
102 bool rotatorFindHome();
103 bool rotatorFullMeasure();
104 bool rotatorIsHome();
105 bool rotatorIsParked();
106 bool rotatorUnPark();
107 bool rotatorSetPark();
111 bool rotatorGetSettings();
112 bool rotatorSetSettings(
double maxSpeed,
double minSpeed,
double acceleration,
double timeout);
118 bool shutterSetSettings(
double maxSpeed,
double minSpeed,
double acceleration,
double voltage);
120 bool shutterGetSettings();
121 bool shutterFindHome();
123 bool shutterOnLine();
128 bool sendCommand(
const char *
cmd,
double &res);
129 bool sendRawCommand(
const char *
cmd,
char *resString);
130 bool getDomeStatus(uint16_t &domeStatus);
131 void hexDump(
char * buf,
const char * data,
int size);
132 std::vector<std::string> split(
const std::string &input,
const std::string ®ex);
162 ROTATOR_HOME_MEASURE,
181 SHUTTER_ACCELERATION,
192 ROTATOR_ACCELERATION,
199 double m_TargetRotatorAz {-1};
204 static constexpr const char * ROTATOR_TAB =
"Rotator";
205 static constexpr const char * SHUTTER_TAB =
"Shutter";
207 static const char DRIVER_STOP_CHAR { 0x23 };
209 static constexpr const uint8_t DRIVER_TIMEOUT {3};
211 static constexpr const uint8_t DRIVER_LEN {128};
213 double lastAzDiff = 1;
@ DOME_STATUS_SHUTTER_CLOSING
@ DOME_STATUS_SHUTTER_COMM
@ DOME_STATUS_SHUTTER_OPENED
@ DOME_STATUS_ROTATOR_PARKED
@ DOME_STATUS_SHUTTER_CLOSED
@ DOME_STATUS_ROTATOR_MOVING
@ DOME_STATUS_SHUTTER_MOVING
@ DOME_STATUS_SHUTTER_OPENING
@ DOME_STATUS_SHUTTER_ERROR
@ DOME_STATUS_ROTATOR_HOME
@ DOME_STATUS_ROTATOR_ERROR
virtual IPState UnPark() override
Rotator unpark.
virtual IPState ControlShutter(ShutterOperation operation) override
open or close the shutter (will not show if shutter is not present)
virtual IPState Move(DomeDirection dir, DomeMotionCommand operation) override
Rotator move (calc's offset and calles abs move)
virtual IPState MoveRel(double azDiff) override
Rotator relative move (calc's offset and calles abs move)
virtual bool updateProperties() override
updateProperties is called whenever there is a change in the CONNECTION status of the driver....
virtual ~Beaver() override=default
virtual IPState Park() override
Rotator park.
virtual bool SetCurrentPark() override
Rotator set park position to current.
virtual void TimerHit() override
Timer hit - update appropriate fields.
virtual bool SetDefaultPark() override
Rotator set park position to default (0 az)
virtual bool Abort() override
abort everything
const char * getDefaultName() override
Set default name.
bool Handshake() override
Handshake.
virtual bool initProperties() override
Initialize properties initial state and value. The child class must implement this function.
virtual IPState MoveAbs(double az) override
Rotator absolute move.
virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
Number field updated.
virtual bool saveConfigItems(FILE *fp) override
INDI save config.
virtual bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override
Switch field updated.
Class to provide general functionality of a Dome device.
ShutterOperation
Shutter operation command.