From e7da538abeee3bd0ce7518ef4ddc9782f5876ff7 Mon Sep 17 00:00:00 2001 From: Hugo Jean Ponsin Date: Tue, 23 Jun 2026 07:44:55 +0200 Subject: [PATCH] first attempt to compile --- CMakeLists.txt | 39 ++++++-------------- src/frontend/itc_pressure_optimizer_scfe.cpp | 12 ++++++ src/frontend/itc_pressure_optimizer_scfe.h | 12 ++++++ 3 files changed, 36 insertions(+), 27 deletions(-) create mode 100644 src/frontend/itc_pressure_optimizer_scfe.cpp create mode 100644 src/frontend/itc_pressure_optimizer_scfe.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 4191a13..8716eb4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,8 +2,6 @@ cmake_minimum_required(VERSION 3.03) project(generic VERSION 1.0) -add_subdirectory(submodule/mepicsca) - add_compile_options( -Wall -Wformat=2 @@ -18,19 +16,9 @@ add_compile_options( if (NOT DEFINED ENV{MIDASSYS}) message(SEND_ERROR "MIDASSYS environment variable not defined.") endif() -if (NOT DEFINED ENV{EPICSSYS}) - message(SEND_ERROR "EPICSSYS environment variable not defined.") -endif() set(CMAKE_CXX_STANDARD 17) set(MIDASSYS $ENV{MIDASSYS}) -set(EPICSSYS $ENV{EPICSSYS}) - -# Select the correct EPICS library depending on the OS (currently Linus is available) -if (${CMAKE_SYSTEM_NAME} MATCHES Linux) - link_directories(${EPICSSYS}/lib/linux-x86_64) - set(LIBS ${LIBS} -lpthread -lutil -lrt -lbsd -ldl) -endif() find_package(Midas REQUIRED) @@ -39,28 +27,26 @@ find_package(Midas REQUIRED) ################################################################################ add_library( - epics_bridge - src/device/epics_bridge.cpp - src/utils/epics_pipe.cpp + itcPressureOptimizer + src/device/itc_pressure_optimizer.cpp ) set_property( TARGET - epics_bridge + itcPressureOptimizer PROPERTY CXX_STANDARD 17 ) target_link_libraries( - epics_bridge + itcPressureOptimizer PRIVATE midas::mfe - m_epics_ca ${LIBS} ) target_include_directories( - epics_bridge + itcPressureOptimizer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} PRIVATE @@ -74,19 +60,19 @@ target_include_directories( ## Frontend ################################################################################ -add_executable(epics_bridge_scfe - src/frontend/epics_bridge_scfe.cpp +add_executable(itcPressureOptimizerScfe + src/frontend/itc_pressure_optimizer_scfe.cpp ) set_property( TARGET - epics_bridge_scfe + itcPressureOptimizerScfe PROPERTY CXX_STANDARD 17 ) target_include_directories( - epics_bridge_scfe + itcPressureOptimizerScfe PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} PRIVATE @@ -97,16 +83,15 @@ target_include_directories( ) target_link_libraries( - epics_bridge_scfe + itcPressureOptimizerScfe PRIVATE - epics_bridge + itcPressureOptimizer midas::mfe - m_epics_ca ${LIBS} ) # Install the executable install( - TARGETS epics_bridge_scfe + TARGETS itcPressureOptimizerScfe RUNTIME DESTINATION bin ) \ No newline at end of file diff --git a/src/frontend/itc_pressure_optimizer_scfe.cpp b/src/frontend/itc_pressure_optimizer_scfe.cpp new file mode 100644 index 0000000..89e4b8e --- /dev/null +++ b/src/frontend/itc_pressure_optimizer_scfe.cpp @@ -0,0 +1,12 @@ +#include "itc_pressure_optimizer_scfe.h" +#include "../device/itc_pressure_optimizer.h" + +#include "tmfe.h" +#include + +itcPressureOptimizerScfe::itcPressureOptimizerScfe(std::string frontendName, + std::string equipmentName) + : TMFrontend() { + FeSetName(frontendName.c_str()); + FeAddEquipment(new itcPressureOptimizer(equipmentName, __FILE__)); +} \ No newline at end of file diff --git a/src/frontend/itc_pressure_optimizer_scfe.h b/src/frontend/itc_pressure_optimizer_scfe.h new file mode 100644 index 0000000..7188a5e --- /dev/null +++ b/src/frontend/itc_pressure_optimizer_scfe.h @@ -0,0 +1,12 @@ +#ifndef ITC_PRESSURE_OPTIMIZER_SCFE_H +#define ITC_PRESSURE_OPTIMIZER_SCFE_H + +#include "tmfe.h" + +class itcPressureOptimizerScfe : public TMFrontend { + public: + itcPressureOptimizerScfe(std::string frontendName, + std::string equipmentName); +} + +#endif \ No newline at end of file