Fixed CI pipeline issues.

This commit is contained in:
2024-11-15 16:20:57 +01:00
parent 2a95f82c47
commit 89bbbedaee
4 changed files with 17 additions and 10 deletions

View File

@ -95,7 +95,6 @@ asynStatus sinqAxis::doPoll(bool *moving) { return asynSuccess; }
asynStatus sinqAxis::move(double position, int relative, double minVelocity, asynStatus sinqAxis::move(double position, int relative, double minVelocity,
double maxVelocity, double acceleration) { double maxVelocity, double acceleration) {
double motorRecResolution = 0.0;
double target_position = 0.0; double target_position = 0.0;
// Status of parameter library operations // Status of parameter library operations
@ -148,7 +147,6 @@ asynStatus sinqAxis::movementTimeoutWatchdog(bool moving) {
// These parameters are only needed in this branch // These parameters are only needed in this branch
double motorPosition = 0.0; double motorPosition = 0.0;
double motorTargetPosition = 0.0; double motorTargetPosition = 0.0;
double motorRecResolution = 0.0;
double motorVelBase = 0.0; double motorVelBase = 0.0;
double motorAccel = 0.0; double motorAccel = 0.0;
time_t timeContSpeed = 0; time_t timeContSpeed = 0;

View File

@ -81,11 +81,13 @@ class epicsShareClass sinqAxis : public asynMotorAxis {
// Setter for offsetMovTimeout // Setter for offsetMovTimeout
asynStatus setOffsetMovTimeout(time_t offsetMovTimeout) { asynStatus setOffsetMovTimeout(time_t offsetMovTimeout) {
offsetMovTimeout_ = offsetMovTimeout; offsetMovTimeout_ = offsetMovTimeout;
return asynSuccess;
} }
// Setter for scaleMovTimeout // Setter for scaleMovTimeout
asynStatus setScaleMovTimeout(time_t scaleMovTimeout) { asynStatus setScaleMovTimeout(time_t scaleMovTimeout) {
scaleMovTimeout_ = scaleMovTimeout; scaleMovTimeout_ = scaleMovTimeout;
return asynSuccess;
} }
friend class sinqController; friend class sinqController;

View File

@ -124,6 +124,9 @@ const char *sinqController::stringifyAsynStatus(asynStatus status) {
// and // and
// https://github.com/epics-modules/asyn/blob/master/asyn/asynPortDriver/paramErrors.h // https://github.com/epics-modules/asyn/blob/master/asyn/asynPortDriver/paramErrors.h
// for the definition of the error codes // for the definition of the error codes
// The pragma is necessary since the param lib error codes are "tacked on"
// the enum, which results in compiler warnings otherwise.
#pragma GCC diagnostic ignored "-Wswitch"
switch (status) { switch (status) {
case asynSuccess: case asynSuccess:
return asynSuccessStringified; return asynSuccessStringified;
@ -151,9 +154,12 @@ const char *sinqController::stringifyAsynStatus(asynStatus status) {
return asynParamInvalidListStringified; return asynParamInvalidListStringified;
} }
errlogPrintf("%s => line %d:\nReached unreachable code.", asynPrint(
__PRETTY_FUNCTION__, __LINE__); pasynUserSelf, ASYN_TRACE_ERROR,
return "unreachable code reached"; "%s => line %d:\nInput did not match any variant of asynStatus.\n",
__PRETTY_FUNCTION__, __LINE__);
return "Input did not match any variant of asynStatus";
} }
// ============================================================================= // =============================================================================
@ -174,9 +180,9 @@ asynStatus setOffsetMovTimeout(const char *portName, int axisNo,
asynMotorAxis *asynAxis = pC->getAxis(axisNo); asynMotorAxis *asynAxis = pC->getAxis(axisNo);
sinqAxis *axis = dynamic_cast<sinqAxis *>(asynAxis); sinqAxis *axis = dynamic_cast<sinqAxis *>(asynAxis);
if (axis == nullptr) { if (axis == nullptr) {
errlogPrintf("%s => line %d:\nPAxis %d does not exist or is not an " errlogPrintf("%s => line %d:\nAxis %d does not exist or is not an "
"instance of sinqAxis.", "instance of sinqAxis.",
__PRETTY_FUNCTION__, __LINE__, portName, axisNo); __PRETTY_FUNCTION__, __LINE__, axisNo);
} }
return axis->setOffsetMovTimeout(offsetMovTimeout); return axis->setOffsetMovTimeout(offsetMovTimeout);
@ -213,9 +219,9 @@ asynStatus setScaleMovTimeout(const char *portName, int axisNo,
asynMotorAxis *asynAxis = pC->getAxis(axisNo); asynMotorAxis *asynAxis = pC->getAxis(axisNo);
sinqAxis *axis = dynamic_cast<sinqAxis *>(asynAxis); sinqAxis *axis = dynamic_cast<sinqAxis *>(asynAxis);
if (axis == nullptr) { if (axis == nullptr) {
errlogPrintf("%s => line %d:\nPAxis %d does not exist or is not an " errlogPrintf("%s => line %d:\nAxis %d does not exist or is not an "
"instance of sinqAxis.", "instance of sinqAxis.",
__PRETTY_FUNCTION__, __LINE__, portName, axisNo); __PRETTY_FUNCTION__, __LINE__, axisNo);
} }
return axis->setScaleMovTimeout(scaleMovTimeout); return axis->setScaleMovTimeout(scaleMovTimeout);
@ -237,7 +243,7 @@ static void setScaleMovTimeoutCallFunc(const iocshArgBuf *args) {
static void sinqControllerRegister(void) { static void sinqControllerRegister(void) {
iocshRegister(&setOffsetMovTimeoutDef, setOffsetMovTimeoutCallFunc); iocshRegister(&setOffsetMovTimeoutDef, setOffsetMovTimeoutCallFunc);
iocshRegister(&setOffsetMovTimeoutDef, setOffsetMovTimeoutCallFunc); iocshRegister(&setScaleMovTimeoutDef, setScaleMovTimeoutCallFunc);
} }
epicsExportRegistrar(sinqControllerRegister); epicsExportRegistrar(sinqControllerRegister);

View File

@ -18,6 +18,7 @@ class epicsShareClass sinqController : public asynMotorController {
public: public:
sinqController(const char *portName, const char *SINQPortName, int numAxes, sinqController(const char *portName, const char *SINQPortName, int numAxes,
const int &extraParams = 2); const int &extraParams = 2);
~sinqController(void);
friend class sinqAxis; friend class sinqAxis;