diff --git a/README.md b/README.md index 84a5d0a1beec1aa57a633436117219a40e297da8..3823c194087448300cbb492839fc5520dd10ab6f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,81 @@ +# e3-iocmetadata +ESS Site-specific EPICS module : iocmetadata (wrapper of the [iocMetadata](https://gitlab.esss.lu.se/icshwi/iocmetadata.git) module) -e3-iocmetadata -====== -ESS Site-specific EPICS module : iocmetadata +## Summary + +This module will scan the record names of its IOC searching for specific info tags. It will then create a NTTable PV that contains the name of these records in its value. It is a way to expose the info tags of an IOC using PVAccess. The detailed explanation is in the [README](https://gitlab.esss.lu.se/icshwi/iocmetadata/-/blob/master/README.md) file of the main EPICS repository. + +## Example of use case + +This module can be used, for instance, as a helper to create a list of the IOC PVs that should be archived or added the a Save & Restore list. + +Given that all the records that contains PVs that should be archived also contain an specific info tag, like the example below: + +``` +example.template + +record(ai, "$(PREFIX)SignalA") { + field(DESC, "Simple analog input") + info(ARCHIVE_THIS, "VAL EGU") +} + +record(ai, "$(PREFIX)SignalB") { + field(DESC, "Simple analog input") + info(SAVERESTORE_THIS, "") +} +``` +When the following IOC is executed: + +``` +require iocmetadata + +epicsEnvSet(PREFIX, "EXAMPLE") +dbLoadRecords("$(E3_CMD_TOP)/example.template", "PREFIX=$(PREFIX)-A:") +dbLoadRecords("$(E3_CMD_TOP)/example.template", "PREFIX=$(PREFIX)-B:") +dbLoadRecords("$(E3_CMD_TOP)/example.template", "PREFIX=$(PREFIX)-C:") +dbLoadRecords("$(E3_CMD_TOP)/example.template", "PREFIX=$(PREFIX)-D:") + +pvlistFromInfo("ARCHIVE_THIS", "$(PREFIX):ArchiverList") +pvlistFromInfo("SAVERESTORE_THIS", "$(PREFIX):SaveRestoreList") + +iocInit() +``` +Two special NTTable PVs will be created: +- `EXAMPLE:ArchiverList` +- `EXAMPLE:SaveRestoreList` + +Any PVA client can access the value of these PVs: +``` +$> pvget EXAMPLE:ArchiverList +EXAMPLE:ArchiverList epics:nt/NTTable:1.0 + string[] pvlist [EXAMPLE-A:SignalA.VAL, EXAMPLE-A:SignalA.EGU, EXAMPLE-B:SignalA.VAL, EXAMPLE-B:SignalA.EGU, EXAMPLE-C:SignalA.VAL, EXAMPLE-C:SignalA.EGU, EXAMPLE-D:SignalA.VAL, EXAMPLE-D:SignalA.EGU] + +$> pvget EXAMPLE:SaveRestoreList +EXAMPLE:SaveRestoreList epics:nt/NTTable:1.0 + string[] pvlist [EXAMPLE-A:SignalB, EXAMPLE-B:SignalB, EXAMPLE-C:SignalB, EXAMPLE-D:SignalB] +``` + +One can also use the `pvlistget.py` script to obtain a plain list of the values: (depends on [p4p](https://mdavidsaver.github.io/p4p/)) + +``` +$> python3 pvlistget.py EXAMPLE:ArchiverList +EXAMPLE-A:SignalA.VAL +EXAMPLE-A:SignalA.EGU +EXAMPLE-B:SignalA.VAL +EXAMPLE-B:SignalA.EGU +EXAMPLE-C:SignalA.VAL +EXAMPLE-C:SignalA.EGU +EXAMPLE-D:SignalA.VAL +EXAMPLE-D:SignalA.EGU + +$> python3 pvlistget.py EXAMPLE:SaveRestoreList +EXAMPLE-A:SignalB +EXAMPLE-B:SignalB +EXAMPLE-C:SignalB +EXAMPLE-D:SignalB +``` + +### References +- iocMetadata: https://gitlab.esss.lu.se/icshwi/iocmetadata.git +- p4p: https://mdavidsaver.github.io/p4p diff --git a/cmds/example/ioc1.cmd b/cmds/example/ioc1.cmd deleted file mode 100755 index 45f25fdc1349f26ba7c16b24d7e12e57d18279f6..0000000000000000000000000000000000000000 --- a/cmds/example/ioc1.cmd +++ /dev/null @@ -1,12 +0,0 @@ -#!../../bin/linux-x86_64/iocMetadataTest - -## Register all support components -dbLoadDatabase("../../dbd/iocMetadataTest.dbd",0,0) -iocMetadataTest_registerRecordDeviceDriver(pdbbase) - -dbLoadRecords("../../db/counters.template", "P=IOC1") -dbLoadRecords("../../db/infotags.template", "ITAG=BPMM, P=IOC1, N=0, M=0") -iocMetadataConfigure("BPMM", "IOC1") - -iocInit() - diff --git a/cmds/example/ioc2.cmd b/cmds/example/ioc2.cmd deleted file mode 100755 index f3b2a52e296ebfff1a62f6685bf22cd3e5981f59..0000000000000000000000000000000000000000 --- a/cmds/example/ioc2.cmd +++ /dev/null @@ -1,13 +0,0 @@ -#!../../bin/linux-x86_64/iocMetadataTest - -## Register all support components -dbLoadDatabase("../../dbd/iocMetadataTest.dbd",0,0) -iocMetadataTest_registerRecordDeviceDriver(pdbbase) - -dbLoadRecords("../../db/counters.template", "P=IOC2") -dbLoadRecords("../../db/infotags.template", "ITAG=BPMM, P=IOC2, N=1, M=1") -iocMetadataConfigure("BPMM", "IOC2") - -iocInit() - - diff --git a/cmds/example/ioc3.cmd b/cmds/example/ioc3.cmd deleted file mode 100755 index 55050a62933e9466689df27196eee847f193540c..0000000000000000000000000000000000000000 --- a/cmds/example/ioc3.cmd +++ /dev/null @@ -1,13 +0,0 @@ -#!../../bin/linux-x86_64/iocMetadataTest - -## Register all support components -dbLoadDatabase("../../dbd/iocMetadataTest.dbd",0,0) -iocMetadataTest_registerRecordDeviceDriver(pdbbase) - -dbLoadRecords("../../db/counters.template", "P=IOC3") -dbLoadRecords("../../db/infotags.template", "ITAG=BPMM, P=IOC3, N=2, M=2") -iocMetadataConfigure("BPMM", "IOC3") - -iocInit() - - diff --git a/cmds/pvlist/counters.template b/cmds/pvlist/counters.template deleted file mode 100644 index 4e22fe0edad358c62f7e69d07213e77057baa148..0000000000000000000000000000000000000000 --- a/cmds/pvlist/counters.template +++ /dev/null @@ -1,62 +0,0 @@ -record(calc, "$(P):COUNTER-A") { - field(DESC, "Simple seconds counter") - field(CALC, "a+1") - field(INPA, "$(P):COUNTER-A") - field(SCAN, "1 second") - info(pvlist1, "VAL") -} - -record(calc, "$(P):COUNTER-B") { - field(DESC, "Simple seconds counter") - field(CALC, "a+1") - field(INPA, "$(P):COUNTER-B") - field(SCAN, ".5 second") - info(pvlist2, "VAL") -} - -record(ai, "$(P):FOO-OUT-RB") { - field(DESC, "description") - field(DTYP, "Soft Channel") - field(SCAN, "Passive") - info(pvlist1, "VAL") -} - -record(ai, "$(P):BAR-OUT-RB") { - field(DESC, "description") - field(DTYP, "Soft Channel") - field(SCAN, "Passive") - info(pvlist2, "VAL") -} - -#----------------------------------------------- - -record(ao, "$(P):PV_A") { - field(DESC, "description") - field(VAL, "0") - field(OUT, "$(P):FOO-OUT-RB PP") -} - -record(ao, "$(P):PV_B") { - field(DESC, "description") - field(VAL, "0") - field(OUT, "$(P):BAR-OUT-RB PP") -} - -record(ao, "$(P):PV_C") { - field(DESC, "description") - field(VAL, "0") - field(OUT, "$(P):BAR-OUT-RB PP") -} - -record(ao, "$(P):PV_D") { - field(DESC, "description") - field(VAL, "0") - field(OUT, "$(P):BAR-OUT-RB PP") -} - -record(ao, "$(P):PV_E") { - field(DESC, "description") - field(VAL, "0") - field(OUT, "$(P):BAR-OUT-RB PP") -} - diff --git a/cmds/pvlist/example.cmd b/cmds/pvlist/example.cmd new file mode 100755 index 0000000000000000000000000000000000000000..1f32b4c3695558672b575ed03d9deca5dec40915 --- /dev/null +++ b/cmds/pvlist/example.cmd @@ -0,0 +1,12 @@ +require iocmetadata + +epicsEnvSet(PREFIX, "EXAMPLE") +dbLoadRecords("$(E3_CMD_TOP)/example.template", "PREFIX=$(PREFIX)-A:") +dbLoadRecords("$(E3_CMD_TOP)/example.template", "PREFIX=$(PREFIX)-B:") +dbLoadRecords("$(E3_CMD_TOP)/example.template", "PREFIX=$(PREFIX)-C:") +dbLoadRecords("$(E3_CMD_TOP)/example.template", "PREFIX=$(PREFIX)-D:") + +pvlistFromInfo("ARCHIVE_THIS", "$(PREFIX):PvList1") +pvlistFromInfo("SAVERESTORE_THIS", "$(PREFIX):PvList2") + +iocInit() diff --git a/cmds/pvlist/example.template b/cmds/pvlist/example.template new file mode 100644 index 0000000000000000000000000000000000000000..cab68a2e0b31f5e05801b216f641be345e29457c --- /dev/null +++ b/cmds/pvlist/example.template @@ -0,0 +1,9 @@ +record(ai, "$(PREFIX)SignalA") { + field(DESC, "Simple analog input") + info(ARCHIVE_THIS, "VAL EGU") +} + +record(ai, "$(PREFIX)SignalB") { + field(DESC, "Simple analog input") + info(SAVERESTORE_THIS, "") +} diff --git a/cmds/pvlist/st.cmd b/cmds/pvlist/st.cmd deleted file mode 100755 index da093ec2a02c187a8f5a9a19ef15f42add21200d..0000000000000000000000000000000000000000 --- a/cmds/pvlist/st.cmd +++ /dev/null @@ -1,9 +0,0 @@ -require iocmetadata,develop - -dbLoadRecords("$(E3_CMD_TOP)/counters.template", "P=IOC1") - -pvlistFromInfo("pvlist1", "mytest") -pvlistFromInfo("pvlist2", "mytest2") - - -iocInit() diff --git a/cmds/example/counters.template b/cmds/table_example/counters.template similarity index 100% rename from cmds/example/counters.template rename to cmds/table_example/counters.template diff --git a/cmds/example/infotags.template b/cmds/table_example/infotags.template similarity index 100% rename from cmds/example/infotags.template rename to cmds/table_example/infotags.template diff --git a/cmds/example/pvlist_tags.template b/cmds/table_example/pvlist_tags.template similarity index 100% rename from cmds/example/pvlist_tags.template rename to cmds/table_example/pvlist_tags.template diff --git a/cmds/example/st.cmd b/cmds/table_example/st.cmd similarity index 87% rename from cmds/example/st.cmd rename to cmds/table_example/st.cmd index 0eba007cdbe9a979150b84082a314d0cdffab0c8..f637bee2875e341c61bbf6d3b6a46a25ecd7a3d3 100755 --- a/cmds/example/st.cmd +++ b/cmds/table_example/st.cmd @@ -1,4 +1,4 @@ -require iocmetadata,develop +require iocmetadata dbLoadRecords("$(E3_CMD_TOP)/counters.template", "P=IOC1") dbLoadRecords("$(E3_CMD_TOP)/infotags.template", "ITAG=TEST1, P=IOC1, N=0, M=0") diff --git a/configure/CONFIG b/configure/CONFIG index 306011a4b33b5ba1b48b4bf4951222711decfc3e..5f8c0d02ce26b466257fc83505348309d540c1b1 100644 --- a/configure/CONFIG +++ b/configure/CONFIG @@ -1,24 +1,3 @@ -# # -# VARS_EXCLUDES := $(.VARIABLES) - -# ifneq (,$(findstring dev,$(MAKECMDGOALS))) -# include $(TOP)/configure/RELEASE_DEV -# else -# include $(TOP)/configure/RELEASE -# endif - -# ifneq (,$(findstring dev,$(MAKECMDGOALS))) -# include $(TOP)/configure/CONFIG_MODULE_DEV -# else -# include $(TOP)/configure/CONFIG_MODULE -# endif - -# E3_REQUIRE_LOCATION := $(EPICS_BASE)/$(E3_REQUIRE_NAME)/$(E3_REQUIRE_VERSION) -# REQUIRE_CONFIG := $(E3_REQUIRE_LOCATION)/configure - -# include $(REQUIRE_CONFIG)/CONFIG - -# VARS_EXCLUDES := $(.VARIABLES) include $(TOP)/configure/RELEASE diff --git a/configure/CONFIG_MODULE_DEV b/configure/CONFIG_MODULE_DEV deleted file mode 100644 index 8068ed26df96f7f953a1e82007fb3a3b1b14a07c..0000000000000000000000000000000000000000 --- a/configure/CONFIG_MODULE_DEV +++ /dev/null @@ -1,36 +0,0 @@ -# -EPICS_MODULE_NAME:=iocmetadata -EPICS_MODULE_TAG:=master -# -E3_MODULE_VERSION:=develop - -# DEPENDENT MODULE VERSION -# For Example, -#DEVLIB2_DEP_VERSION:=2.9.0 -#ASYN_DEP_VERSION:=4.36.0 -#PCRE_DEP_VERSION:=8.41.0 -#ADCORE_DEP_VERSION:=3.7.0 -#ADSUPPORT_DEP_VERSION:=1.9.0 -#LOKI_DEP_VERSION=1.0.0 -#NDS_DEP_VERSION=2.3.3 -#SIS8300DRV_DEP_VERSION=4.3.1 -#SEQUENCER_DEP_VERSION=2.2.7 -# -# -# -#E3_KMOD_SRC_PATH:=$(E3_MODULE_SRC_PATH) -# -# In most case, we don't need to touch the following variables. -# - -E3_MODULE_NAME:=$(EPICS_MODULE_NAME) -E3_MODULE_SRC_PATH:=iocmetadata-dev -E3_MODULE_MAKEFILE:=$(EPICS_MODULE_NAME).Makefile - -#E3_MODULE_DEV_GITURL:="https://where your git repo which you would like to clone" -E3_MODULE_DEV_GITURL:="https://gitlab.esss.lu.se/icshwi/iocmetadata.git" - --include $(TOP)/configure/CONFIG_OPTIONS -# The definitions shown below can also be placed in an untracked CONFIG_MODULE_DEV.local --include $(TOP)/configure/CONFIG_MODULE_DEV.local - diff --git a/configure/RELEASE_DEV b/configure/RELEASE_DEV deleted file mode 100644 index 7c72b5ece116d7971a26f29015115106a8e60ad9..0000000000000000000000000000000000000000 --- a/configure/RELEASE_DEV +++ /dev/null @@ -1,11 +0,0 @@ -# -EPICS_BASE:=/epics/base-7.0.5 - -E3_REQUIRE_NAME:=require -E3_REQUIRE_VERSION:=3.4.1 - -# The definitions shown below can also be placed in an untracked RELEASE_DEV.local --include $(TOP)/../../RELEASE_DEV.local --include $(TOP)/../RELEASE_DEV.local --include $(TOP)/configure/RELEASE_DEV.local - diff --git a/iocmetadata b/iocmetadata index 29bdf18c779a329642d41ecfe8e97b6246deced2..dcf3c526ef41f76a84787df0a86e66d5523518a2 160000 --- a/iocmetadata +++ b/iocmetadata @@ -1 +1 @@ -Subproject commit 29bdf18c779a329642d41ecfe8e97b6246deced2 +Subproject commit dcf3c526ef41f76a84787df0a86e66d5523518a2 diff --git a/tmp/e3-iocmetadata/.gitignore b/tmp/e3-iocmetadata/.gitignore deleted file mode 100644 index 57659cad049c40405062e4471292d5f4d180a43f..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/.gitignore +++ /dev/null @@ -1,20 +0,0 @@ -*~ -*-dev -modules.order -Module.symvers -Mkfile.old -core.* -#* -.#* -\#* -*.local -\#* -.cvsignore -*_old/ -*PVs.list -*-loc/*.Makefile -iocmetadata/*.Makefile -.vscode -cellMods/ -testMods*/ -.DS_Store diff --git a/tmp/e3-iocmetadata/Makefile b/tmp/e3-iocmetadata/Makefile deleted file mode 100644 index 8fc2b8b5e63687609393f1b828406ba4729662b9..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/Makefile +++ /dev/null @@ -1,27 +0,0 @@ -# -# Copyright (c) 2019 - 2021, European Spallation Source ERIC -# -# The program is free software: you can redistribute -# it and/or modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation, either version 2 of the -# License, or any newer version. -# -# This program is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. -# -# You should have received a copy of the GNU General Public License along with -# this program. If not, see https://www.gnu.org/licenses/gpl-2.0.txt -# -# -# Author : JoaoPaulo Martins -# email : joaopaulo.martins@ess.eu -# Date : 2021-08-04 -# version : 0.0.0 - -TOP:=$(CURDIR) - -include $(TOP)/configure/CONFIG - -include $(TOP)/configure/RULES diff --git a/tmp/e3-iocmetadata/README.md b/tmp/e3-iocmetadata/README.md deleted file mode 100644 index bb25bfcd35b71226124264175a54554b72a9f71f..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# e3-iocmetadata - -EPICS iocmetadata module - ---- - -## Wrapper template - -This README.md should be updated as part of creation and should add complementary information about the wrapped module in question (usage, etc.). Once the repository is set up, empty/unused directories should also be purged. diff --git a/tmp/e3-iocmetadata/cmds/README.md b/tmp/e3-iocmetadata/cmds/README.md deleted file mode 100644 index 6fc2278df805c314ad4385d2f49688da048def5f..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/cmds/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Startup script directory - -Store example and test startup scripts here. - -This `README.md` file should be deleted as part of the setup, as should the directory `cmds/` if unused. \ No newline at end of file diff --git a/tmp/e3-iocmetadata/cmds/st.cmd b/tmp/e3-iocmetadata/cmds/st.cmd deleted file mode 100644 index cdcb5fe9c0ce10be4411925bb65ac31f9f572d48..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/cmds/st.cmd +++ /dev/null @@ -1,6 +0,0 @@ -# This should be a test or example startup script -require iocmetadata - -iocshLoad("$(iocmetadata_DIR)/iocmetadata.iocsh") - -# always leave a blank line at EOF diff --git a/tmp/e3-iocmetadata/configure/CONFIG b/tmp/e3-iocmetadata/configure/CONFIG deleted file mode 100644 index 2286cf9fd475d052145b0cb801b54cdd61d49879..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/configure/CONFIG +++ /dev/null @@ -1,11 +0,0 @@ -# -VARS_EXCLUDES := $(.VARIABLES) - -include $(TOP)/configure/RELEASE -include $(TOP)/configure/CONFIG_MODULE - -E3_REQUIRE_LOCATION := $(EPICS_BASE)/$(E3_REQUIRE_NAME)/$(E3_REQUIRE_VERSION) -REQUIRE_CONFIG := $(E3_REQUIRE_LOCATION)/configure - -include $(REQUIRE_CONFIG)/CONFIG - diff --git a/tmp/e3-iocmetadata/configure/CONFIG_MODULE b/tmp/e3-iocmetadata/configure/CONFIG_MODULE deleted file mode 100644 index e36e913fe543b959b719c143a7a6169d764066f9..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/configure/CONFIG_MODULE +++ /dev/null @@ -1,20 +0,0 @@ -# -EPICS_MODULE_NAME:=iocmetadata - -# EPICS_MODULE_TAG:=master -# -E3_MODULE_VERSION:=master - -# Dependent module versions -# For example: -#ASYN_DEP_VERSION:=4.41.0 - -# In most cases, we don't need to touch the following variables. -E3_MODULE_NAME:=$(EPICS_MODULE_NAME) -E3_MODULE_SRC_PATH:=iocmetadata -E3_MODULE_MAKEFILE:=$(EPICS_MODULE_NAME).Makefile - - --include $(TOP)/configure/CONFIG_OPTIONS -# The definitions can also be overridden an untracked CONFIG_MODULE.local --include $(TOP)/configure/CONFIG_MODULE.local diff --git a/tmp/e3-iocmetadata/configure/CONFIG_OPTIONS b/tmp/e3-iocmetadata/configure/CONFIG_OPTIONS deleted file mode 100644 index 97542fa3df84a327bb591224273c0af0c6ae6be2..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/configure/CONFIG_OPTIONS +++ /dev/null @@ -1,5 +0,0 @@ -# -# WITH_PVA:=NO -# -# The definitions shown below can also be placed in an untracked CONFIG_OPTIONS.local --include $(TOP)/configure/CONFIG_OPTIONS.local diff --git a/tmp/e3-iocmetadata/configure/RELEASE b/tmp/e3-iocmetadata/configure/RELEASE deleted file mode 100644 index c38a2915c8822481e3a99239c5830ef0332db79b..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/configure/RELEASE +++ /dev/null @@ -1,10 +0,0 @@ -# -EPICS_BASE:=/epics/base-7.0.5 - -E3_REQUIRE_NAME:=require -E3_REQUIRE_VERSION:=3.4.1 - -# The definitions can also be overridden in an untracked RELEASE.local --include $(TOP)/../../RELEASE.local --include $(TOP)/../RELEASE.local --include $(TOP)/configure/RELEASE.local diff --git a/tmp/e3-iocmetadata/configure/RULES b/tmp/e3-iocmetadata/configure/RULES deleted file mode 100644 index e8c22c1cc3481b5f43b51dc104f8d1f44a34e9cb..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/configure/RULES +++ /dev/null @@ -1,5 +0,0 @@ - -include $(REQUIRE_CONFIG)/RULES_SITEMODS - -include $(TOP)/configure/module/RULES_MODULE --include $(TOP)/configure/module/RULES_DKMS_L diff --git a/tmp/e3-iocmetadata/configure/module/RULES_DKMS_L b/tmp/e3-iocmetadata/configure/module/RULES_DKMS_L deleted file mode 100644 index 5198fb9478bc73c2970d8f3f930c533683efa97b..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/configure/module/RULES_DKMS_L +++ /dev/null @@ -1,37 +0,0 @@ - -# KMOD_NAME := mrf - -# .PHONY: dkms_add - -# dkms_add: conf -# $(MSI) -M name="$(E3_MODULE_NAME)" -M version="$(E3_MODULE_VERSION)" -M kmod_name="$(KMOD_NAME)" $(TOP)/dkms/dkms_with_msi.conf.in > $(TOP)/dkms/dkms_with_msi.conf -# $(QUIET) cat $(TOP)/dkms/dkms_with_msi.conf $(TOP)/dkms/dkms_without_msi.conf > $(TOP)/dkms/dkms.conf -# $(QUIET) install -m 644 $(TOP)/dkms/dkms.conf $(E3_KMOD_SRC_PATH)/ -# $(SUDO) install -d /usr/src/$(E3_MODULE_NAME)-$(E3_MODULE_VERSION) -# $(SUDO) cp -r $(TOP)/$(E3_KMOD_SRC_PATH)/* /usr/src/$(E3_MODULE_NAME)-$(E3_MODULE_VERSION)/ -# $(SUDO) $(DKMS) add $(DKMS_ARGS) - - -# setup: -# $(QUIET) $(SUDO2) 'echo KERNEL==\"uio*\", ATTR{name}==\"mrf-pci\", MODE=\"0666\" | tee /etc/udev/rules.d/99-$(KMOD_NAME).rules' -# $(QUIET) $(SUDO) /bin/udevadm control --reload-rules -# $(QUIET) $(SUDO) /bin/udevadm trigger -# $(QUIET) $(SUDO2) 'echo $(KMOD_NAME) | tee /etc/modules-load.d/$(KMOD_NAME).conf' -# $(QUIET) $(SUDO) depmod --quick -# $(QUIET) $(SUDO) modprobe -rv $(KMOD_NAME) -# $(QUIET) $(SUDO) modprobe -v $(KMOD_NAME) -# $(QUIET) echo "" -# $(QUIET) echo "" -# $(QUIET) echo "It is OK to see \"E3/RULES_DKMS:37: recipe for target 'setup' failed\"" -# $(QUIET) echo "---------------------------------------------------------------------" -# $(QUIET) -ls -l /dev/uio* 2>/dev/null -# $(QUIET) echo "---------------------------------------------------------------------" - - -# setup_clean: -# $(QUIET) $(SUDO) modprobe -rv $(KMOD_NAME) -# $(SUDO) rm -f /etc/modules-load.d/$(KMOD_NAME).conf -# $(SUDO) rm -f /etc/udev/rules.d/99-$(KMOD_NAME).rules - - -# .PHONY: setup setup_clean diff --git a/tmp/e3-iocmetadata/configure/module/RULES_MODULE b/tmp/e3-iocmetadata/configure/module/RULES_MODULE deleted file mode 100644 index ca2d1e4ec1ecc1edb2780f2733b2dda7f54c653a..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/configure/module/RULES_MODULE +++ /dev/null @@ -1,19 +0,0 @@ -# -.PHONY: db hdrs - -db: conf - $(QUIET) $(E3_MODULE_MAKE_CMDS) db - -hdrs: -# $(SUDO) install -m 755 -d $(E3_MODULES_INSTALL_LOCATION_INC)/pv -# cd $(E3_MODULES_INSTALL_LOCATION_INC) && $(SUDO) mv *.h pv/ - -#.PHONY: epics -#epics: -# $(QUIET)echo "EPICS_BASE:=$(EPICS_BASE)" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE -# $(QUIET)echo "ASYN:=$(M_ASYN)" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE -# $(QUIET)echo "SSCAN:=$(M_SSCAN)" >> $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE -# $(QUIET)echo "SNCSEQ:=$(M_SNCSEQ)" >> $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE -# $(QUIET)echo "CHECK_RELEASE:=YES" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/CONFIG_SITE -# $(QUIET)echo "INSTALL_LOCATION:=$(M_DEVLIB2)" >> $(TOP)/$(E3_MODULE_SRC_PATH)/configure/CONFIG_SITE -# $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH)" diff --git a/tmp/e3-iocmetadata/iocmetadata.Makefile b/tmp/e3-iocmetadata/iocmetadata.Makefile deleted file mode 100644 index f79497992c5a352c80a91020a4b74a6f144fa0b7..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata.Makefile +++ /dev/null @@ -1,148 +0,0 @@ -# -# Copyright (c) 2019 - 2021, European Spallation Source ERIC -# -# The program is free software: you can redistribute it and/or modify it -# under the terms of the BSD 3-Clause license. -# -# This program is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. -# -# Author : JoaoPaulo Martins -# email : joaopaulo.martins@ess.eu -# Date : 2021-08-04 -# version : 0.0.0 -# -# This template file is based on one generated by e3TemplateGenerator.bash. -# Please look at many other Makefile.E3 in the https://gitlab.esss.lu.se/epics-modules/ -# repositories. -# - -## The following lines are mandatory, please don't change them. -where_am_I := $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) -include $(E3_REQUIRE_TOOLS)/driver.makefile -include $(E3_REQUIRE_CONFIG)/DECOUPLE_FLAGS - - -############################################################################ -# -# Add any required modules here that come from startup scripts, etc. -# -############################################################################ - -# REQUIRED += stream - - -############################################################################ -# -# If you want to exclude any architectures: -# -############################################################################ - -# EXCLUDE_ARCHS += linux-ppc64e6500 - - -############################################################################ -# -# If you want to allow specific architectures only: -# -############################################################################ - -# ARCH_FILTER += linux-x86_64 - - -############################################################################ -# -# Relevant directories to point to files -# -############################################################################ - -APP:=iocmetadataApp -#APPDB:=$(APP)/Db -APPSRC:=$(APP)/src -#APPCMDS:=$(APP)/cmds - - -############################################################################ -# -# Add any files that should be copied to $(module)/Db -# -############################################################################ - -# TEMPLATES += $(wildcard $(APPDB)/*.db) -# TEMPLATES += $(wildcard $(APPDB)/*.proto) -# TEMPLATES += $(wildcard $(APPDB)/*.template) - -# USR_INCLUDES += -I$(where_am_I)$(APPSRC) - - -############################################################################ -# -# Add any files that need to be compiled (e.g. .c, .cpp, .st, .stt) -# -############################################################################ - -SOURCES += $(APPSRC)/iocmetadataMain.cpp - - -############################################################################ -# -# Add any .dbd files that should be included (e.g. from user-defined functions, etc.) -# -############################################################################ - -#DBDS += - - -############################################################################ -# -# Add any header files that should be included in the install (e.g. -# StreamDevice or asyn header files that are used by other modules) -# -############################################################################ - -#HEADERS += - - -############################################################################ -# -# Add any startup scripts that should be installed in the base directory -# -############################################################################ - -SCRIPTS += $(wildcard iocsh/*.iocsh) - - -############################################################################ -# -# If you have any .substitution files, and template files, add them here. -# -############################################################################ - -# SUBS=$(wildcard $(APPDB)/*.substitutions) -# TMPS=$(wildcard $(APPDB)/*.template) - -USR_DBFLAGS += -I . -I .. -USR_DBFLAGS += -I $(EPICS_BASE)/db -USR_DBFLAGS += -I $(APPDB) - -db: $(SUBS) $(TMPS) - -$(SUBS): - @printf "Inflating database ... %44s >>> %40s \n" "$@" "$(basename $(@)).db" - @rm -f $(basename $(@)).db.d $(basename $(@)).db - @$(MSI) -D $(USR_DBFLAGS) -o $(basename $(@)).db -S $@ > $(basename $(@)).db.d - @$(MSI) $(USR_DBFLAGS) -o $(basename $(@)).db -S $@ - -$(TMPS): - @printf "Inflating database ... %44s >>> %40s \n" "$@" "$(basename $(@)).db" - @rm -f $(basename $(@)).db.d $(basename $(@)).db - @$(MSI) -D $(USR_DBFLAGS) -o $(basename $(@)).db $@ > $(basename $(@)).db.d - @$(MSI) $(USR_DBFLAGS) -o $(basename $(@)).db $@ - -.PHONY: db $(SUBS) $(TMPS) - - -vlibs: - -.PHONY: vlibs diff --git a/tmp/e3-iocmetadata/iocmetadata/Makefile b/tmp/e3-iocmetadata/iocmetadata/Makefile deleted file mode 100644 index 19c9068d194270e6e05a7c5983db6467b05e3d03..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -# Makefile at top of application tree -TOP = . -include $(TOP)/configure/CONFIG - -# Directories to build, any order -DIRS += configure -DIRS += $(wildcard *Sup) -DIRS += $(wildcard *App) -DIRS += $(wildcard *Top) -DIRS += $(wildcard iocBoot) - -# The build order is controlled by these dependency rules: - -# All dirs except configure depend on configure -$(foreach dir, $(filter-out configure, $(DIRS)), \ - $(eval $(dir)_DEPEND_DIRS += configure)) - -# Any *App dirs depend on all *Sup dirs -$(foreach dir, $(filter %App, $(DIRS)), \ - $(eval $(dir)_DEPEND_DIRS += $(filter %Sup, $(DIRS)))) - -# Any *Top dirs depend on all *Sup and *App dirs -$(foreach dir, $(filter %Top, $(DIRS)), \ - $(eval $(dir)_DEPEND_DIRS += $(filter %Sup %App, $(DIRS)))) - -# iocBoot depends on all *App dirs -iocBoot_DEPEND_DIRS += $(filter %App,$(DIRS)) - -# Add any additional dependency rules here: - -include $(TOP)/configure/RULES_TOP diff --git a/tmp/e3-iocmetadata/iocmetadata/configure/CONFIG b/tmp/e3-iocmetadata/iocmetadata/configure/CONFIG deleted file mode 100644 index c1a470322c5c4689bfa82b26e602fefe27aca397..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/configure/CONFIG +++ /dev/null @@ -1,29 +0,0 @@ -# CONFIG - Load build configuration data -# -# Do not make changes to this file! - -# Allow user to override where the build rules come from -RULES = $(EPICS_BASE) - -# RELEASE files point to other application tops -include $(TOP)/configure/RELEASE --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).Common -ifdef T_A --include $(TOP)/configure/RELEASE.Common.$(T_A) --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).$(T_A) -endif - -CONFIG = $(RULES)/configure -include $(CONFIG)/CONFIG - -# Override the Base definition: -INSTALL_LOCATION = $(TOP) - -# CONFIG_SITE files contain other build configuration settings -include $(TOP)/configure/CONFIG_SITE --include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).Common -ifdef T_A - -include $(TOP)/configure/CONFIG_SITE.Common.$(T_A) - -include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) -endif - diff --git a/tmp/e3-iocmetadata/iocmetadata/configure/CONFIG_SITE b/tmp/e3-iocmetadata/iocmetadata/configure/CONFIG_SITE deleted file mode 100644 index 212485ebe7741ac1f4f6bad0c487134bbfeaefa7..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/configure/CONFIG_SITE +++ /dev/null @@ -1,43 +0,0 @@ -# CONFIG_SITE - -# Make any application-specific changes to the EPICS build -# configuration variables in this file. -# -# Host/target specific settings can be specified in files named -# CONFIG_SITE.$(EPICS_HOST_ARCH).Common -# CONFIG_SITE.Common.$(T_A) -# CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) - -# CHECK_RELEASE controls the consistency checking of the support -# applications pointed to by the RELEASE* files. -# Normally CHECK_RELEASE should be set to YES. -# Set CHECK_RELEASE to NO to disable checking completely. -# Set CHECK_RELEASE to WARN to perform consistency checking but -# continue building even if conflicts are found. -CHECK_RELEASE = YES - -# Set this when you only want to compile this application -# for a subset of the cross-compiled target architectures -# that Base is built for. -#CROSS_COMPILER_TARGET_ARCHS = vxWorks-ppc32 - -# To install files into a location other than $(TOP) define -# INSTALL_LOCATION here. -#INSTALL_LOCATION=</absolute/path/to/install/top> - -# Set this when the IOC and build host use different paths -# to the install location. This may be needed to boot from -# a Microsoft FTP server say, or on some NFS configurations. -#IOCS_APPL_TOP = </IOC's/absolute/path/to/install/top> - -# For application debugging purposes, override the HOST_OPT and/ -# or CROSS_OPT settings from base/configure/CONFIG_SITE -#HOST_OPT = NO -#CROSS_OPT = NO - -# These allow developers to override the CONFIG_SITE variable -# settings without having to modify the configure/CONFIG_SITE -# file itself. --include $(TOP)/../CONFIG_SITE.local --include $(TOP)/configure/CONFIG_SITE.local - diff --git a/tmp/e3-iocmetadata/iocmetadata/configure/Makefile b/tmp/e3-iocmetadata/iocmetadata/configure/Makefile deleted file mode 100644 index 925430940872f6f9a78d16c0c7cd3fb18f5dd3f8..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/configure/Makefile +++ /dev/null @@ -1,8 +0,0 @@ -TOP=.. - -include $(TOP)/configure/CONFIG - -TARGETS = $(CONFIG_TARGETS) -CONFIGS += $(subst ../,,$(wildcard $(CONFIG_INSTALLS))) - -include $(TOP)/configure/RULES diff --git a/tmp/e3-iocmetadata/iocmetadata/configure/RELEASE b/tmp/e3-iocmetadata/iocmetadata/configure/RELEASE deleted file mode 100644 index 4f339ec315efe25930fa727c3126d356b782275e..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/configure/RELEASE +++ /dev/null @@ -1,42 +0,0 @@ -# RELEASE - Location of external support modules -# -# IF YOU CHANGE ANY PATHS in this file or make API changes to -# any modules it refers to, you should do a "make rebuild" in -# this application's top level directory. -# -# The EPICS build process does not check dependencies against -# any files from outside the application, so it is safest to -# rebuild it completely if any modules it depends on change. -# -# Host- or target-specific settings can be given in files named -# RELEASE.$(EPICS_HOST_ARCH).Common -# RELEASE.Common.$(T_A) -# RELEASE.$(EPICS_HOST_ARCH).$(T_A) -# -# This file is parsed by both GNUmake and an EPICS Perl script, -# so it may ONLY contain definititions of paths to other support -# modules, variable definitions that are used in module paths, -# and include statements that pull in other RELEASE files. -# Variables may be used before their values have been set. -# Build variables that are NOT used in paths should be set in -# the CONFIG_SITE file. - -# Variables and paths to dependent modules: -#MODULES = /path/to/modules -#MYMODULE = $(MODULES)/my-module - -# If using the sequencer, point SNCSEQ at its top directory: -#SNCSEQ = $(MODULES)/seq-ver - -# EPICS_BASE should appear last so earlier modules can override stuff: -EPICS_BASE = /Users/simonrose/epics/base-7.0.3.1 - -# Set RULES here if you want to use build rules from somewhere -# other than EPICS_BASE: -#RULES = $(MODULES)/build-rules - -# These lines allow developers to override these RELEASE settings -# without having to modify this file directly. --include $(TOP)/../RELEASE.local --include $(TOP)/../RELEASE.$(EPICS_HOST_ARCH).local --include $(TOP)/configure/RELEASE.local diff --git a/tmp/e3-iocmetadata/iocmetadata/configure/RULES b/tmp/e3-iocmetadata/iocmetadata/configure/RULES deleted file mode 100644 index 6d56e14e8b53dc7fd6d9c57e426b4c14f8345591..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/configure/RULES +++ /dev/null @@ -1,6 +0,0 @@ -# RULES - -include $(CONFIG)/RULES - -# Library should be rebuilt because LIBOBJS may have changed. -$(LIBNAME): ../Makefile diff --git a/tmp/e3-iocmetadata/iocmetadata/configure/RULES.ioc b/tmp/e3-iocmetadata/iocmetadata/configure/RULES.ioc deleted file mode 100644 index 901987c6cacb1d91a364439314476c259291a34e..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/configure/RULES.ioc +++ /dev/null @@ -1,2 +0,0 @@ -#RULES.ioc -include $(CONFIG)/RULES.ioc diff --git a/tmp/e3-iocmetadata/iocmetadata/configure/RULES_DIRS b/tmp/e3-iocmetadata/iocmetadata/configure/RULES_DIRS deleted file mode 100644 index 3ba269dccfd9b18085c35992719103c50e091dce..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/configure/RULES_DIRS +++ /dev/null @@ -1,2 +0,0 @@ -#RULES_DIRS -include $(CONFIG)/RULES_DIRS diff --git a/tmp/e3-iocmetadata/iocmetadata/configure/RULES_TOP b/tmp/e3-iocmetadata/iocmetadata/configure/RULES_TOP deleted file mode 100644 index d09d668d537526fb41c1e08b1ecb53c1260c60b3..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/configure/RULES_TOP +++ /dev/null @@ -1,3 +0,0 @@ -#RULES_TOP -include $(CONFIG)/RULES_TOP - diff --git a/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/Db/Makefile b/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/Db/Makefile deleted file mode 100644 index 8eb97279d19c56456f20368843fa70bf92ec9048..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/Db/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -TOP=../.. -include $(TOP)/configure/CONFIG -#---------------------------------------- -# ADD MACRO DEFINITIONS AFTER THIS LINE - -#---------------------------------------------------- -# Create and install (or just install) into <top>/db -# databases, templates, substitutions like this -#DB += xxx.db - -#---------------------------------------------------- -# If <anyname>.db template is not named <anyname>*.template add -# <anyname>_template = <templatename> - -include $(TOP)/configure/RULES -#---------------------------------------- -# ADD RULES AFTER THIS LINE - diff --git a/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/Makefile b/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/Makefile deleted file mode 100644 index 10e0126aabf1452a21384b5ad2ebc00fd9431072..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/Makefile +++ /dev/null @@ -1,8 +0,0 @@ -TOP = .. -include $(TOP)/configure/CONFIG -DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard *src*)) -DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard *Src*)) -DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard *db*)) -DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard *Db*)) -include $(TOP)/configure/RULES_DIRS - diff --git a/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/src/Makefile b/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/src/Makefile deleted file mode 100644 index 1f92ede0af53faeda5ee5a1eb0e1e94337511350..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/src/Makefile +++ /dev/null @@ -1,42 +0,0 @@ -TOP=../.. - -include $(TOP)/configure/CONFIG -#---------------------------------------- -# ADD MACRO DEFINITIONS AFTER THIS LINE -#============================= - -#============================= -# Build the IOC application - -PROD_IOC = iocmetadata -# iocmetadata.dbd will be created and installed -DBD += iocmetadata.dbd - -# iocmetadata.dbd will be made up from these files: -iocmetadata_DBD += base.dbd - -# Include dbd files from all support applications: -#iocmetadata_DBD += xxx.dbd - -# Add all the support libraries needed by this IOC -#iocmetadata_LIBS += xxx - -# iocmetadata_registerRecordDeviceDriver.cpp derives from iocmetadata.dbd -iocmetadata_SRCS += iocmetadata_registerRecordDeviceDriver.cpp - -# Build the main IOC entry point on workstation OSs. -iocmetadata_SRCS_DEFAULT += iocmetadataMain.cpp -iocmetadata_SRCS_vxWorks += -nil- - -# Add support from base/src/vxWorks if needed -#iocmetadata_OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary - -# Finally link to the EPICS Base libraries -iocmetadata_LIBS += $(EPICS_BASE_IOC_LIBS) - -#=========================== - -include $(TOP)/configure/RULES -#---------------------------------------- -# ADD RULES AFTER THIS LINE - diff --git a/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/src/iocmetadataMain.cpp b/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/src/iocmetadataMain.cpp deleted file mode 100644 index d75b4d87c3f0771d684ac4b76783727008f6034c..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocmetadata/iocmetadataApp/src/iocmetadataMain.cpp +++ /dev/null @@ -1,24 +0,0 @@ -/* iocmetadataMain.cpp */ -/* Author: JoaoPaulo Martins */ -/* Date: 2021-08-04 */ - -#include <stddef.h> -#include <stdlib.h> -#include <stddef.h> -#include <string.h> -#include <stdio.h> - -#include "epicsExit.h" -#include "epicsThread.h" -#include "iocsh.h" - -int main(int argc,char *argv[]) -{ - if(argc>=2) { - iocsh(argv[1]); - epicsThreadSleep(.2); - } - iocsh(NULL); - epicsExit(0); - return(0); -} diff --git a/tmp/e3-iocmetadata/iocsh/README.md b/tmp/e3-iocmetadata/iocsh/README.md deleted file mode 100644 index 6c6019a776e8771af61a6ec12fea31faeebc12f2..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocsh/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Snippet directory - -Store IOC shell script snippets in this folder. - -This `README.md` file should be deleted as part of the setup, as should the directory `iocsh/` if unused. \ No newline at end of file diff --git a/tmp/e3-iocmetadata/iocsh/iocmetadata.iocsh b/tmp/e3-iocmetadata/iocsh/iocmetadata.iocsh deleted file mode 100644 index d1c5879a26ba5b5122f25bf38e893d0741a6dc05..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/iocsh/iocmetadata.iocsh +++ /dev/null @@ -1,3 +0,0 @@ -# This should be the included snippet to configure and run the deployed IOC. It should be loaded with -# -# iocshLoad("$(iocmetadata_DIR)/iocmetadata.iocsh") diff --git a/tmp/e3-iocmetadata/opi/README.md b/tmp/e3-iocmetadata/opi/README.md deleted file mode 100644 index 1ed958b4a802eee7ead0124b08ac7f59daab6732..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/opi/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# GUI directory - -Store GUIs associated with this module here. - -This `README.md` file should be deleted as part of the setup, as should the directory `opi/` if unused. \ No newline at end of file diff --git a/tmp/e3-iocmetadata/patch/Site/HISTORY.md b/tmp/e3-iocmetadata/patch/Site/HISTORY.md deleted file mode 100644 index 3516ac75cd72b0486e1ea5dcef691ac975fb2df5..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/patch/Site/HISTORY.md +++ /dev/null @@ -1,7 +0,0 @@ -# E3_MODULE_VERSION-what_ever_filename.p0.patch - -Generic Description..... - -* created by Jeong Han Lee, han.lee@esss.se -* related URL or reference https://github.com/icshwi -* Tuesday, February 13 13:24:57 CET 2018 diff --git a/tmp/e3-iocmetadata/patch/Site/README.md b/tmp/e3-iocmetadata/patch/Site/README.md deleted file mode 100644 index fbed8e6a53e73b180bf45ccf4bcd5c65327d0266..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/patch/Site/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# Site Specific EPICS Module Patch Files - -## Changes -The changes were tested in local environemnt, and commits to the forked repository and do pull request to the epics community module repository. - -* Check the original HASH, and your own master -* feb8856 : The original HASH -* master : Changed - - -## How to create a p0 patch file between commits - - -* Show what the difference between commits - - -* Create p0 patch - -``` -$git diff feb8856 master --no-prefix > ../patch/Site/E3_MODULE_VERSION-what_ever_filename.p0.patch -``` - diff --git a/tmp/e3-iocmetadata/template/README.md b/tmp/e3-iocmetadata/template/README.md deleted file mode 100644 index 7a29cf52000218611a1739053aa4aaf6a9ea5ec7..0000000000000000000000000000000000000000 --- a/tmp/e3-iocmetadata/template/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Database directory - -Store ESS-specific database files, templates, and substitution files here. - -This `README.md` file should be deleted as part of the setup, as should the directory `template/` if unused. \ No newline at end of file diff --git a/tools/pvlistget.py b/tools/pvlistget.py new file mode 100755 index 0000000000000000000000000000000000000000..4f78e36ff6feba12df386f46fb53e8026cfca9c7 --- /dev/null +++ b/tools/pvlistget.py @@ -0,0 +1,36 @@ +#!/usr/bin/python3 + +import queue +import sys + +# Import p4p client context +from p4p.client.thread import Context + +def main(): + + # Check for at least one PV as input argument + if (len(sys.argv)) < 2: + print('[ERROR] No PV name specified.') + return + + # Create PVA context + ctxt = Context('pva', nt=False) + + try: + # Take only the first PV name and try to get from the network + pvlist_ = ctxt.get(str(sys.argv[1]), timeout=3, throw=True) + + if (pvlist_.has('pvlist')): + # Print a simple list of the content + for i in pvlist_.pvlist: + print(i) + else: + print('[ERROR] PV', sys.argv[1],'does not have pvlist field') + except (queue.Empty, TimeoutError): + print('[ERROR] Unable to connect to PV', sys.argv[1]) + + ctxt.close() + return + +if __name__ == "__main__": + main() \ No newline at end of file