Compare commits
2 Commits
87980e403c
...
1.1.0
| Author | SHA1 | Date | |
|---|---|---|---|
| bdefc6090d | |||
| c2eca33ce8 |
@@ -216,10 +216,11 @@ sinqAxis::sinqAxis(class sinqController *pC, int axisNo)
|
||||
.wasMoving = false,
|
||||
.lastPollTime = lastPollTime});
|
||||
|
||||
// This check is also done in asynMotorAxis, but there the IOC continues
|
||||
// running even though the configuration is incorrect. When failing this
|
||||
// check, the IOC is stopped, since this is definitely a configuration
|
||||
// problem.
|
||||
/*
|
||||
This check is also done in asynMotorAxis, but there the IOC continues
|
||||
running even though the configuration is incorrect. When failing this check,
|
||||
the IOC is stopped, since this is definitely a configuration problem.
|
||||
*/
|
||||
if ((axisNo < 0) || (axisNo >= pC->numAxes())) {
|
||||
asynPrint(pC_->pasynUser(), ASYN_TRACE_ERROR,
|
||||
"Controller \"%s\", axis %d => %s, line %d:\nFATAL ERROR "
|
||||
@@ -820,6 +821,16 @@ asynStatus sinqAxis::setScaleMovTimeout(time_t scaleMovTimeout) {
|
||||
return asynSuccess;
|
||||
}
|
||||
|
||||
bool sinqAxis::wasMoving() { return pSinqA_->wasMoving; }
|
||||
|
||||
void sinqAxis::setWasMoving(bool wasMoving) { pSinqA_->wasMoving = wasMoving; }
|
||||
|
||||
double sinqAxis::targetPosition() { return pSinqA_->targetPosition; }
|
||||
|
||||
void sinqAxis::setTargetPosition(double targetPosition) {
|
||||
pSinqA_->targetPosition = targetPosition;
|
||||
}
|
||||
|
||||
// =============================================================================
|
||||
// IOC shell functions
|
||||
extern "C" {
|
||||
|
||||
@@ -369,6 +369,36 @@ class epicsShareClass sinqAxis : public asynMotorAxis {
|
||||
*/
|
||||
sinqController *pController() { return pC_; };
|
||||
|
||||
/**
|
||||
* @brief Returns true, if the axis was moving in the last poll cycle, and
|
||||
* false otherwise.
|
||||
*
|
||||
* @return true
|
||||
* @return false
|
||||
*/
|
||||
bool wasMoving();
|
||||
|
||||
/**
|
||||
* @brief Override the wasMoving flag (normally, it is automatically updated
|
||||
* during each poll).
|
||||
*
|
||||
*/
|
||||
void setWasMoving(bool wasMoving);
|
||||
|
||||
/**
|
||||
* @brief Read out the last received target position in engineering units.
|
||||
*
|
||||
* @return double
|
||||
*/
|
||||
double targetPosition();
|
||||
|
||||
/**
|
||||
* @brief Override the targetPosition value (normally, it is automatically
|
||||
* updated at every call of the move() method).
|
||||
*
|
||||
*/
|
||||
void setTargetPosition(double targetPosition);
|
||||
|
||||
private:
|
||||
std::unique_ptr<sinqAxisImpl> pSinqA_;
|
||||
sinqController *pC_;
|
||||
|
||||
Reference in New Issue
Block a user