From 185c6b4ecb9c1666fe2e5397af8a93d2597289c1 Mon Sep 17 00:00:00 2001 From: "Henrique F. Simoes" Date: Mon, 11 Sep 2023 11:07:35 -0300 Subject: [PATCH] base: add NDSSCPimega areaDetector plugin. This plugin computes the geometric restoration for PiMega detectors based on the LNLS ssc-pimega library, and allows Pimega IOC to provide coherent data to users. Even though ADPimega is not yet supported, this plugin can still be used with ADSimDetector for debugging purposes. Furthermore, it makes it possible to build ADPimega (and its IOC) out of epics-in-docker, but still using NDSSCPimega from base. ssc-pimega repository does not have tag for version 0.8.13. Thus, commit hash is used instead. --- base/.env | 3 +++ base/Dockerfile | 3 +++ base/docker-compose.yml | 2 ++ base/install_area_detector.sh | 15 +++++++++++++++ 4 files changed, 23 insertions(+) diff --git a/base/.env b/base/.env index 8577c8c..adf5fec 100644 --- a/base/.env +++ b/base/.env @@ -14,6 +14,9 @@ IPAC_VERSION=2.16 CAPUTLOG_VERSION=R4.0 AREA_DETECTOR_VERSION=R3-12-1 +NDSSCPIMEGA_VERSION=1.0.0 MOTOR_VERSION=R7-3-1 PMAC_VERSION=2-6-1 + +LIBSSCPIMEGA_VERSION=fb8acf533a7c01b5266bf32d60d1a5f923e19523 diff --git a/base/Dockerfile b/base/Dockerfile index 295e0ba..9f49ebd 100644 --- a/base/Dockerfile +++ b/base/Dockerfile @@ -46,9 +46,12 @@ ARG IPAC_VERSION ARG CAPUTLOG_VERSION ARG AREA_DETECTOR_VERSION +ARG NDSSCPIMEGA_VERSION ARG MOTOR_VERSION ARG PMAC_VERSION +ARG LIBSSCPIMEGA_VERSION + WORKDIR ${EPICS_MODULES_PATH} COPY install_modules.sh . RUN ./install_modules.sh diff --git a/base/docker-compose.yml b/base/docker-compose.yml index dffa96c..66debf9 100644 --- a/base/docker-compose.yml +++ b/base/docker-compose.yml @@ -23,5 +23,7 @@ services: IPAC_VERSION: ${IPAC_VERSION} CAPUTLOG_VERSION: ${CAPUTLOG_VERSION} AREA_DETECTOR_VERSION: ${AREA_DETECTOR_VERSION} + NDSSCPIMEGA_VERSION: ${NDSSCPIMEGA_VERSION} MOTOR_VERSION: ${MOTOR_VERSION} PMAC_VERSION: ${PMAC_VERSION} + LIBSSCPIMEGA_VERSION: ${LIBSSCPIMEGA_VERSION} diff --git a/base/install_area_detector.sh b/base/install_area_detector.sh index 83f5eca..5812ae0 100755 --- a/base/install_area_detector.sh +++ b/base/install_area_detector.sh @@ -2,6 +2,8 @@ set -ex +. /opt/epics/install-functions.sh + git clone --depth 1 --branch ${AREA_DETECTOR_VERSION} \ https://github.com/areaDetector/areaDetector @@ -96,3 +98,16 @@ git apply --directory ADSupport ${EPICS_MODULES_PATH}/nanohttp_stream.patch make -j${JOBS} make clean + +cd .. + +download_github_module cnpem ssc-pimega $LIBSSCPIMEGA_VERSION +make -C ssc-pimega/c install + +install_github_module cnpem NDSSCPimega NDSSCPIMEGA $NDSSCPIMEGA_VERSION " +EPICS_BASE = ${EPICS_BASE_PATH} + +ASYN=${EPICS_MODULES_PATH}/asyn +AREA_DETECTOR=${EPICS_MODULES_PATH}/areaDetector +ADCORE=${EPICS_MODULES_PATH}/areaDetector/ADCore +"