]> jspc29.x-matter.uni-frankfurt.de Git - mvd_epics.git/commitdiff
DAQ_SETTINGS: use module autosave
authorPhilipp Klaus <klaus@physik.uni-frankfurt.de>
Tue, 30 Jun 2020 12:26:33 +0000 (14:26 +0200)
committerPhilipp Klaus <klaus@physik.uni-frankfurt.de>
Tue, 30 Jun 2020 12:26:33 +0000 (14:26 +0200)
DAQ_SETTINGS/DAQ_SETTINGSApp/src/Makefile
DAQ_SETTINGS/configure/RELEASE
DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_req/auto_settings.req [new file with mode: 0644]
DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_req/daq_settings.req [new file with mode: 0644]
DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_sav/.gitkeep [new file with mode: 0644]
DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/st.cmd

index fa51397edc81476ad2f1a29784cd12b19f8d3a5e..6b1d78e470365c53b285d1f22a15952ef33aec5d 100644 (file)
@@ -16,10 +16,10 @@ DBD += DAQ_SETTINGS.dbd
 DAQ_SETTINGS_DBD += base.dbd
 
 # Include dbd files from all support applications:
-#DAQ_SETTINGS_DBD += xxx.dbd
+DAQ_SETTINGS_DBD += asSupport.dbd
 
 # Add all the support libraries needed by this IOC
-#DAQ_SETTINGS_LIBS += xxx
+DAQ_SETTINGS_LIBS += autosave
 
 # DAQ_SETTINGS_registerRecordDeviceDriver.cpp derives from DAQ_SETTINGS.dbd
 DAQ_SETTINGS_SRCS += DAQ_SETTINGS_registerRecordDeviceDriver.cpp
index b11d1632dd2b7bcfc7b20ce99b95b217c4d44d68..4db66d044edb0c9a99b854c22c375e04ec8a7c8a 100644 (file)
@@ -28,6 +28,8 @@
 # If using the sequencer, point SNCSEQ at its top directory:
 #SNCSEQ = $(MODULES)/seq-ver
 
+AUTOSAVE = $(EPICS_ROOT)/modules/autosave
+
 EPICS_BASE = $(EPICS_ROOT)/base
 
 # EPICS_ROOT is an absolute path here. If you need a different one, you don't
diff --git a/DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_req/auto_settings.req b/DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_req/auto_settings.req
new file mode 100644 (file)
index 0000000..3a5dd7f
--- /dev/null
@@ -0,0 +1 @@
+file daq_settings.req P=$(P)
diff --git a/DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_req/daq_settings.req b/DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_req/daq_settings.req
new file mode 100644 (file)
index 0000000..0990747
--- /dev/null
@@ -0,0 +1,77 @@
+$(P)SENSOR:B2:IVDREF1A
+$(P)SENSOR:B2:IVDREF1B
+$(P)SENSOR:B2:IVDREF1C
+$(P)SENSOR:B2:IVDREF1D
+$(P)SENSOR:B2:IVDREF2
+$(P)SENSOR:C8:IVDREF1A
+$(P)SENSOR:C8:IVDREF1B
+$(P)SENSOR:C8:IVDREF1C
+$(P)SENSOR:C8:IVDREF1D
+$(P)SENSOR:C8:IVDREF2
+$(P)SENSOR:F8:IVDREF1A
+$(P)SENSOR:F8:IVDREF1B
+$(P)SENSOR:F8:IVDREF1C
+$(P)SENSOR:F8:IVDREF1D
+$(P)SENSOR:F8:IVDREF2
+$(P)SENSOR:F3:IVDREF1A
+$(P)SENSOR:F3:IVDREF1B
+$(P)SENSOR:F3:IVDREF1C
+$(P)SENSOR:F3:IVDREF1D
+$(P)SENSOR:F3:IVDREF2
+$(P)SENSOR:F4:IVDREF1A
+$(P)SENSOR:F4:IVDREF1B
+$(P)SENSOR:F4:IVDREF1C
+$(P)SENSOR:F4:IVDREF1D
+$(P)SENSOR:F4:IVDREF2
+$(P)SENSOR:F5:IVDREF1A
+$(P)SENSOR:F5:IVDREF1B
+$(P)SENSOR:F5:IVDREF1C
+$(P)SENSOR:F5:IVDREF1D
+$(P)SENSOR:F5:IVDREF2
+$(P)SENSOR:C12:IVDREF1A
+$(P)SENSOR:C12:IVDREF1B
+$(P)SENSOR:C12:IVDREF1C
+$(P)SENSOR:C12:IVDREF1D
+$(P)SENSOR:C12:IVDREF2
+$(P)SENSOR:D1:IVDREF1A
+$(P)SENSOR:D1:IVDREF1B
+$(P)SENSOR:D1:IVDREF1C
+$(P)SENSOR:D1:IVDREF1D
+$(P)SENSOR:D1:IVDREF2
+$(P)SENSOR:D2:IVDREF1A
+$(P)SENSOR:D2:IVDREF1B
+$(P)SENSOR:D2:IVDREF1C
+$(P)SENSOR:D2:IVDREF1D
+$(P)SENSOR:D2:IVDREF2
+$(P)SENSOR:C3:IVDREF1A
+$(P)SENSOR:C3:IVDREF1B
+$(P)SENSOR:C3:IVDREF1C
+$(P)SENSOR:C3:IVDREF1D
+$(P)SENSOR:C3:IVDREF2
+$(P)SENSOR:G8:IVDREF1A
+$(P)SENSOR:G8:IVDREF1B
+$(P)SENSOR:G8:IVDREF1C
+$(P)SENSOR:G8:IVDREF1D
+$(P)SENSOR:G8:IVDREF2
+$(P)SENSOR:G5:IVDREF1A
+$(P)SENSOR:G5:IVDREF1B
+$(P)SENSOR:G5:IVDREF1C
+$(P)SENSOR:G5:IVDREF1D
+$(P)SENSOR:G5:IVDREF2
+$(P)SENSOR:C10:IVDREF1A
+$(P)SENSOR:C10:IVDREF1B
+$(P)SENSOR:C10:IVDREF1C
+$(P)SENSOR:C10:IVDREF1D
+$(P)SENSOR:C10:IVDREF2
+$(P)SENSOR:C6:IVDREF1A
+$(P)SENSOR:C6:IVDREF1B
+$(P)SENSOR:C6:IVDREF1C
+$(P)SENSOR:C6:IVDREF1D
+$(P)SENSOR:C6:IVDREF2
+$(P)SENSOR:C4:IVDREF1A
+$(P)SENSOR:C4:IVDREF1B
+$(P)SENSOR:C4:IVDREF1C
+$(P)SENSOR:C4:IVDREF1D
+$(P)SENSOR:C4:IVDREF2
+$(P)LAST_RUN:UNIX
+$(P)LAST_RUN:ISO
diff --git a/DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_sav/.gitkeep b/DAQ_SETTINGS/iocBoot/iocDAQ_SETTINGS/autosave_sav/.gitkeep
new file mode 100644 (file)
index 0000000..e69de29
index 60dfcc4661c225715bc7d2f232b832b2a6ac07ec..eecfd312721584c65b7eeaf6f8fdf168144558cd 100755 (executable)
@@ -11,6 +11,16 @@ cd "${TOP}"
 dbLoadDatabase "dbd/DAQ_SETTINGS.dbd"
 DAQ_SETTINGS_registerRecordDeviceDriver pdbbase
 
+# autosave: configure request and save file search paths
+# .req (request) file: list the records to be saved
+# .sav save file: contains the previous saved state to be restored
+set_requestfile_path("$(TOP)/iocBoot/$(IOC)", "autosave_req")
+set_savefile_path("$(TOP)/iocBoot/$(IOC)", "./autosave_sav")
+
+# autosave: now restore the state from last time
+set_pass0_restoreFile("auto_settings.sav")
+set_pass1_restoreFile("auto_settings.sav")
+
 ## Load record instances
 dbLoadRecords("db/PRESTO_SENSORS.db","sys=CBM,sub=MVD,daqsys=PRESTO")
 dbLoadRecords("db/CONTEXT.db","sys=CBM,sub=MVD,daqsys=PRESTO")
@@ -18,5 +28,8 @@ dbLoadRecords("db/CONTEXT.db","sys=CBM,sub=MVD,daqsys=PRESTO")
 cd "${TOP}/iocBoot/${IOC}"
 iocInit
 
+# autosave: start monitoring (and saving) the records
+create_monitor_set("auto_settings.req", 15, "P=CBM:MVD:DAQ:PRESTO:")
+
 ## Start any sequence programs
 #seq sncxxx,"user=pklaus"