WIP version with offset RBV (integration from hardware currently

missing)
This commit is contained in:
2025-03-06 09:14:30 +01:00
parent 747d08c52a
commit bb492e678b
8 changed files with 491 additions and 465 deletions

View File

@@ -9,6 +9,7 @@
#ifndef detectorTowerController_H
#define detectorTowerController_H
#include "detectorTowerAxis.h"
#include "offsetAxis.h"
#include "turboPmacController.h"
class detectorTowerController : public turboPmacController {
@@ -55,17 +56,6 @@ class detectorTowerController : public turboPmacController {
*/
asynStatus writeInt32(asynUser *pasynUser, epicsInt32 value);
/**
* @brief Overloaded function of turboPmacController
*
* The function is overloaded to immediate start of an offset movement
*
* @param pasynUser Specify the axis via the asynUser
* @param value New value
* @return asynStatus
*/
asynStatus writeFloat64(asynUser *pasynUser, epicsFloat64 value);
/**
* @brief Get the axis object
*
@@ -86,23 +76,14 @@ class detectorTowerController : public turboPmacController {
private:
// Indices of additional PVs
#define FIRST_detectorTower_PARAM liftOffset_
int liftOffset_;
int liftOffsetMove_;
int liftOffsetLowLimit_;
int liftOffsetHighLimit_;
int tiltOffset_;
int tiltOffsetMove_;
int tiltOffsetLowLimit_;
int tiltOffsetHighLimit_;
int beamAngle_;
#define FIRST_detectorTower_PARAM positionState_
int positionState_;
int start_;
int moveToWorkingPosition_;
int resetError_;
#define LAST_detectorTower_PARAM resetError_
friend class detectorTowerAxis;
friend class offsetAxis;
};
#define NUM_detectorTower_DRIVER_PARAMS \
(&LAST_detectorTower_PARAM - &FIRST_detectorTower_PARAM + 1)