diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index be63d94..bb17c2a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -18,6 +18,7 @@ jobs: - name: Run schema/ioc instance generation tests run: | + pip install -r requirements.txt bash tests/test_generate.sh check-docker-build: diff --git a/pmac/pmac.ibek.support.yaml b/pmac/pmac.ibek.support.yaml index 8dc799a..d1693e3 100644 --- a/pmac/pmac.ibek.support.yaml +++ b/pmac/pmac.ibek.support.yaml @@ -482,7 +482,7 @@ defs: PORT: "{{PmacController}}" PREC: PMAC: "{{PmacController.P}}" - NAxes: "{{PmacController.NAxes}}" + NAxes: "{{PmacController.NAXES}}" # pvi: # yaml_path: pmacTrajectory.pvi.device.yaml diff --git a/tests/ioc_repos/bl45p b/tests/ioc_repos/bl45p index 02d9b61..bdecb63 160000 --- a/tests/ioc_repos/bl45p +++ b/tests/ioc_repos/bl45p @@ -1 +1 @@ -Subproject commit 02d9b61eb452e74bdbbc06aefa4ea549500905fb +Subproject commit bdecb6367f2ee49d714fd078ba226d5948423d5d diff --git a/tests/outputs/bl45p-ea-dcam-01/ADDriver.pvi.template b/tests/outputs/bl45p-ea-dcam-01/ADDriver.pvi.template new file mode 100644 index 0000000..d748743 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-01/ADDriver.pvi.template @@ -0,0 +1,1093 @@ + +### PV Interface for ADDriver ### + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Gain") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Gain.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Gain_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Gain.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterStatus_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControl") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControl.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControl_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControl.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterOpenDelay") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterOpenDelay.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterOpenDelay_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterOpenDelay.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterCloseDelay") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterCloseDelay.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterCloseDelay_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterCloseDelay.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquirePeriod") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquirePeriod.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquirePeriod_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquirePeriod.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImagesCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImagesCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImages") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImages.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImages_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImages.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposures") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposures.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposures_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposures.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ImageMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ImageMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ImageMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ImageMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TriggerMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TriggerMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TriggerMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TriggerMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DetectorState_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DetectorState.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StatusMessage_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StatusMessage.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeRemaining_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeRemaining.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadStatus.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposuresCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposuresCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StringToServer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StringToServer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StringFromServer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StringFromServer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControlEPICS") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControlEPICS.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TemperatureActual") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TemperatureActual.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FrameType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FrameType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FrameType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FrameType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Temperature") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Temperature.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Temperature_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Temperature.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for ADDriver ### diff --git a/tests/outputs/bl45p-ea-dcam-01/NDFileHDF5.pvi.template b/tests/outputs/bl45p-ea-dcam-01/NDFileHDF5.pvi.template new file mode 100644 index 0000000..4f662be --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-01/NDFileHDF5.pvi.template @@ -0,0 +1,3051 @@ + +### PV Interface for NDFileHDF5 ### + +record("*", "$(P)$(R)AutoSave") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSave.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSave_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSave.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileName") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileName.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Capture") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Capture.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Capture_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Capture.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Compression") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Compression.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Compression_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Compression.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)JPEGQuality") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.JPEGQuality.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)JPEGQuality_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.JPEGQuality.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscCompressor") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscCompressor.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscCompressor_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscCompressor.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscShuffle") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscShuffle.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscShuffle_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscShuffle.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileFormat") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileFormat.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileFormat_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileFormat.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePathExists_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePathExists.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePath") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePath.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePath_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePath.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CreateDirectory") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CreateDirectory.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CreateDirectory_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CreateDirectory.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileNumber") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileNumber.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TempSuffix") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TempSuffix.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TempSuffix_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TempSuffix.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LazyOpen") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LazyOpen.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LazyOpen_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LazyOpen.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoIncrement") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoIncrement.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoIncrement_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoIncrement.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileTemplate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileTemplate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileTemplate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileTemplate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FullFileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FullFileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCaptured_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCaptured.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileWriteMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileWriteMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileWriteMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileWriteMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCapture") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCapture.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCapture_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCapture.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DeleteDriverFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DeleteDriverFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DeleteDriverFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DeleteDriverFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteMessage") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteMessage.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRSupported_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRSupported.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumDataBits") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumDataBits.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumDataBits_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumDataBits.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataBitsOffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataBitsOffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataBitsOffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataBitsOffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRActive_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRActive.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SZipNumPixels") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SZipNumPixels.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SZipNumPixels_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SZipNumPixels.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRCbCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRCbCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ZLevel") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ZLevel.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ZLevel_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ZLevel.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FlushNow") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FlushNow.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSizeAuto") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSizeAuto.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSizeAuto_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSizeAuto.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StorePerform") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StorePerform.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StorePerform_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StorePerform.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumColChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumColChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumColChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumColChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StoreAttr") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StoreAttr.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StoreAttr_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StoreAttr.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumRowChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumRowChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumRowChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumRowChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RunTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RunTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)IOSpeed") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.IOSpeed.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscLevel") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscLevel.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscLevel_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscLevel.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryAlign") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryAlign.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryAlign_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryAlign.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLErrorMsg_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLErrorMsg.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLValid_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLValid.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryThreshold") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryThreshold.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryThreshold_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryThreshold.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesFlush") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesFlush.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesFlush_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesFlush.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLFileName") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLFileName.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLFileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLFileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FillValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FillValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FillValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FillValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExtraDims") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExtraDims.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExtraDims_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExtraDims.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DimAttDatasets") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DimAttDatasets.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DimAttDatasets_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DimAttDatasets.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PositionMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PositionMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PositionMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PositionMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributeChunk") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributeChunk.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributeChunk_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributeChunk.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDFileHDF5 ### diff --git a/tests/outputs/bl45p-ea-dcam-01/NDPluginProcess.pvi.template b/tests/outputs/bl45p-ea-dcam-01/NDPluginProcess.pvi.template new file mode 100644 index 0000000..75c81c2 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-01/NDPluginProcess.pvi.template @@ -0,0 +1,1632 @@ + +### PV Interface for NDPluginProcess ### + +record("*", "$(P)$(R)Offset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Offset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Offset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Offset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ValidBackground_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ValidBackground.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SaveBackground") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SaveBackground.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SaveBackground_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SaveBackground.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableFilter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableFilter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableFilter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableFilter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableBackground") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableBackground.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableBackground_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableBackground.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ValidFlatField_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ValidFlatField.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SaveFlatField") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SaveFlatField.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SaveFlatField_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SaveFlatField.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ResetFilter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ResetFilter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ResetFilter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ResetFilter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoResetFilter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoResetFilter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoResetFilter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoResetFilter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableFlatField") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableFlatField.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableFlatField_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableFlatField.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilterCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilterCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilterCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilterCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ScaleFlatField") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ScaleFlatField.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ScaleFlatField_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ScaleFlatField.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OOffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OOffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OOffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OOffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC1") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC1.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC1_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC1.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableOffsetScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableOffsetScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableOffsetScale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableOffsetScale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FOffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FOffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FOffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FOffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoOffsetScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoOffsetScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Scale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Scale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Scale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Scale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC1") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC1.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC1_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC1.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ROffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ROffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ROffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ROffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RC1") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RC1.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RC1_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RC1.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RC2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RC2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RC2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RC2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableLowClip") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableLowClip.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableLowClip_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableLowClip.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OScale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OScale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LowClip") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LowClip.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LowClip_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LowClip.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FScale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FScale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableHighClip") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableHighClip.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableHighClip_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableHighClip.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HighClip") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HighClip.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HighClip_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HighClip.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataTypeOut") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataTypeOut.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataTypeOut_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataTypeOut.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFiltered_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFiltered.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFilter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFilter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFilter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFilter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginProcess ### diff --git a/tests/outputs/bl45p-ea-dcam-01/NDPluginPva.pvi.template b/tests/outputs/bl45p-ea-dcam-01/NDPluginPva.pvi.template new file mode 100644 index 0000000..f9d8b5e --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-01/NDPluginPva.pvi.template @@ -0,0 +1,873 @@ + +### PV Interface for NDPluginPva ### + +record("*", "$(P)$(R)PvName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PvName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginPva ### diff --git a/tests/outputs/bl45p-ea-dcam-01/NDPluginROI.pvi.template b/tests/outputs/bl45p-ea-dcam-01/NDPluginROI.pvi.template new file mode 100644 index 0000000..886e237 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-01/NDPluginROI.pvi.template @@ -0,0 +1,1434 @@ + +### PV Interface for NDPluginROI ### + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Name") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Name.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Name_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Name.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Scale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Scale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Scale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Scale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataTypeOut") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataTypeOut.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataTypeOut_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataTypeOut.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableScale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableScale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CollapseDims") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CollapseDims.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CollapseDims_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CollapseDims.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginROI ### diff --git a/tests/outputs/bl45p-ea-dcam-01/NDPluginStats.pvi.template b/tests/outputs/bl45p-ea-dcam-01/NDPluginStats.pvi.template new file mode 100644 index 0000000..df04667 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-01/NDPluginStats.pvi.template @@ -0,0 +1,2050 @@ + +### PV Interface for NDPluginStats ### + +record("*", "$(P)$(R)Net") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Net.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Net_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Net.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMinValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMinValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMaxValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMaxValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMeanValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMeanValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSTotal") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSTotal.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSNet") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSNet.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MeanValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MeanValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MeanValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MeanValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Total") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Total.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Total_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Total.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BgdWidth") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BgdWidth.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BgdWidth_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BgdWidth.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeStatistics") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeStatistics.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeStatistics_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeStatistics.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeProfiles") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeProfiles.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeProfiles_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeProfiles.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileAverageX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileAverageX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileAverageY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileAverageY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileThresholdX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileThresholdX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileThresholdY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileThresholdY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileCentroidX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileCentroidX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileCentroidY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileCentroidY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileCursorX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileCursorX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileCursorY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileCursorY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMaxX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMaxX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMaxY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMaxY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSTimestamp") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSTimestamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeHistogram") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeHistogram.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeHistogram_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeHistogram.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeCentroid") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeCentroid.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeCentroid_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeCentroid.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistMin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistMin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistMin_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistMin.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidThreshold") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidThreshold.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidThreshold_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidThreshold.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistMax") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistMax.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistMax_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistMax.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistBelow") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistBelow.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistBelow_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistBelow.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistAbove") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistAbove.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistAbove_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistAbove.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistEntropy") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistEntropy.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistEntropy_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistEntropy.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Histogram_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Histogram.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistogramX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistogramX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Eccentricity") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Eccentricity.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Eccentricity_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Eccentricity.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Orientation") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Orientation.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Orientation_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Orientation.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSigma") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSigma.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSCentroidTotal") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSCentroidTotal.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSCentroidX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSCentroidX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSCentroidY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSCentroidY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSigmaX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSigmaX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSigmaY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSigmaY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSigmaXY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSigmaXY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSkewX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSkewX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSkewY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSkewY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSKurtosisX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSKurtosisX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSKurtosisY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSKurtosisY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSEccentricity") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSEccentricity.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSOrientation") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSOrientation.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidTotal") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidTotal.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidTotal_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidTotal.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaXY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaXY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaXY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaXY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SkewX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SkewX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SkewX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SkewX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SkewY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SkewY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SkewY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SkewY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)KurtosisX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.KurtosisX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)KurtosisX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.KurtosisX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)KurtosisY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.KurtosisY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)KurtosisY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.KurtosisY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorVal") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorVal.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Sigma_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginStats ### diff --git a/tests/outputs/bl45p-ea-dcam-01/ioc.subst b/tests/outputs/bl45p-ea-dcam-01/ioc.subst new file mode 100644 index 0000000..6a8d43b --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-01/ioc.subst @@ -0,0 +1,117 @@ +############################################################################# +# DB substitution file generated by http://github.com/epics-containers/ibek # +############################################################################# + +file "$(IOCSTATS)/db/iocAdminSoft.db" { +pattern + { "IOC" } + { "" } +} + +file "$(IOCSTATS)/db/iocAdminScanMon.db" { +pattern + { "IOC" } + { "" } +} + +file "$(ADARAVIS)/db/aravisCamera.template" { +pattern + { "P", "R", "PORT", "TIMEOUT", "ADDR" } + { "BL45P-EA-MAP-01", ":DET:", "DET.DET", "1", "0" } +} + +file "$(ADGENICAM)/db/AVT_Manta_G235B.template" { +pattern + { "P", "R", "PORT", "TIMEOUT", "ADDR" } + { "BL45P-EA-MAP-01", ":DET:", "DET.DET", "1", "0" } +} + +file "$(ADCORE)/db/NDROI.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DET.DET", "0", "I/O Intr", "0", "0", "BL45P-EA-MAP-01", ":ROI:", "1", "DET.roi" } +} + +file "$(ADCORE)/db/NDStats.template" { +pattern + { "NDARRAY_PORT", "XSIZE", "NCHANS", "NDARRAY_ADDR", "YSIZE", "ENABLED", "HIST_SIZE", "PORT", "P", "R", "TIMEOUT", "TS_PORT", "SCANRATE", "ADDR" } + { "DET.DET", "1936", "20000", "0", "1216", "0", "256", "DET.stat", "BL45P-EA-MAP-01", ":STAT:", "1", "$(PORT)_TS", "I/O Intr", "0" } +} + +file "$(ADCORE)/db/NDStdArrays.template" { +pattern + { "NDARRAY_PORT", "FTVL", "ADDR", "SCANRATE", "NELEMENTS", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "TYPE", "PORT" } + { "DET.roi", "UCHAR", "0", "I/O Intr", "2354176", "0", "0", "BL45P-EA-MAP-01", ":ARR:", "1", "Int8", "DET.arr" } +} + +file "$(ADCORE)/db/NDProcess.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DET.DET", "0", "I/O Intr", "0", "0", "BL45P-EA-MAP-01", ":PROC:", "1", "DET.proc" } +} + +file "$(ADCORE)/db/NDFileTIFF.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DET.DET", "0", "I/O Intr", "0", "0", "BL45P-EA-MAP-01", ":TIFF:", "1", "DET.tiff" } +} + +file "$(ADCORE)/db/NDFileHDF5.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "XMLSIZE", "P", "R", "TIMEOUT", "PORT" } + { "DET.DET", "0", "I/O Intr", "0", "0", "2048", "BL45P-EA-MAP-01", ":HDF5:", "1", "DET.hdf" } +} + +file "$(ADCORE)/db/NDCircularBuff.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "PRECOUNT", "NDARRAY_ADDR", "ENABLED", "P", "POSTCOUNT", "R", "TIMEOUT", "PORT" } + { "DET.DET", "0", "I/O Intr", "100", "0", "1", "BL45P-EA-MAP-01", "100", ":BUFF:", "1", "DET.BUFF" } +} + +file "$(ADCORE)/db/NDPosPlugin.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DET.DET", "0", "I/O Intr", "0", "1", "BL45P-EA-MAP-01", ":POS:", "1", "DET.POS" } +} + +file "$(ADCORE)/db/NDPva.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DET.DET", "0", "I/O Intr", "0", "1", "BL45P-EA-MAP-01", ":PVA:", "1", "DIFF.PVA" } +} + +file "ADDriver.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-MAP-01", ":DET:" } +} + +file "NDPluginROI.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-MAP-01", ":ROI:" } +} + +file "NDPluginStats.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-MAP-01", ":STAT:" } +} + +file "NDPluginProcess.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-MAP-01", ":PROC:" } +} + +file "NDFileHDF5.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-MAP-01", ":HDF5:" } +} + +file "NDPluginPva.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-MAP-01", ":PVA:" } +} diff --git a/tests/outputs/bl45p-ea-dcam-01/st.cmd b/tests/outputs/bl45p-ea-dcam-01/st.cmd new file mode 100644 index 0000000..74eacc4 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-01/st.cmd @@ -0,0 +1,41 @@ +# EPICS IOC Startup Script generated by https://github.com/epics-containers/ibek + +cd "/epics/ioc" + +epicsEnvSet EPICS_CA_MAX_ARRAY_BYTES 6000000 + +dbLoadDatabase dbd/ioc.dbd +ioc_registerRecordDeviceDriver pdbbase + +callbackSetQueueSize(10000) +# aravisConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize) +aravisConfig("DET.DET", "bl45p-ea-detector-01", -1, 0, 1) +# NDROIConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize, maxThreads) +NDROIConfigure("DET.roi", 250, 0, "DET.DET", 0, 0, 0, 0, 0, 1) +# ADCore path for manual NDTimeSeries.template to find base plugin template +epicsEnvSet "EPICS_DB_INCLUDE_PATH", "$(ADCORE)/db" +# NDStatsConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize, maxThreads) +NDStatsConfigure("DET.stat", 250, 0, "DET.DET", 0, 0, 0, 0, 0, 1) +# NDTimeSeriesConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxSignals) +NDTimeSeriesConfigure("DET.stat_TS", 250, 0, "DET.stat", 1, 23) +# Load time series records +dbLoadRecords("$(ADCORE)/db/NDTimeSeries.template", "P=BL45P-EA-MAP-01,R=:STAT:, PORT=DET.stat ,ADDR=0,TIMEOUT=1,NDARRAY_PORT=DET.DET,NDARRAY_ADDR=0,NCHANS=20000,ENABLED=0") +# NDStdArraysConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize, maxThreads) +NDStdArraysConfigure("DET.arr", 2, 0, "DET.roi", 0, 0, 0, 0, 0, 1) +# NDProcessConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr) +NDProcessConfigure("DET.proc", 250, 0, "DET.DET", 0) +# NDFileTIFFConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr) +NDFileTIFFConfigure("DET.tiff", 250, 0, "DET.DET", 0) +# NDFileHDF5Configure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr) +NDFileHDF5Configure("DET.hdf", 250, 0, "DET.DET", 0) +# NDCircularBuffConfigure(portName, queueSize, blockingCallbacks, +NDCircularBuffConfigure( +# NDPosPluginConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize) +NDPosPluginConfigure("DET.POS", 1000, 0, "DET.DET", 0, 0, 0, 0, 0) +# NDPvaConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, pvName, maxBuffers, maxMemory, priority, stackSize) +NDPvaConfigure("DIFF.PVA", 2, 0, "DET.DET", 0, BL45P-EA-MAP-01:TX:PVA, 0, 0, 0, 0) +startPVAServer + +dbLoadRecords /ioc.db +iocInit + diff --git a/tests/outputs/bl45p-ea-dcam-02/ADDriver.pvi.template b/tests/outputs/bl45p-ea-dcam-02/ADDriver.pvi.template new file mode 100644 index 0000000..d748743 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-02/ADDriver.pvi.template @@ -0,0 +1,1093 @@ + +### PV Interface for ADDriver ### + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Gain") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Gain.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Gain_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Gain.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterStatus_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControl") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControl.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControl_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControl.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterOpenDelay") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterOpenDelay.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterOpenDelay_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterOpenDelay.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterCloseDelay") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterCloseDelay.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterCloseDelay_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterCloseDelay.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquirePeriod") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquirePeriod.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquirePeriod_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquirePeriod.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImagesCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImagesCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImages") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImages.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImages_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImages.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposures") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposures.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposures_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposures.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ImageMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ImageMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ImageMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ImageMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TriggerMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TriggerMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TriggerMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TriggerMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DetectorState_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DetectorState.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StatusMessage_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StatusMessage.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeRemaining_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeRemaining.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadStatus.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposuresCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposuresCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StringToServer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StringToServer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StringFromServer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StringFromServer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControlEPICS") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControlEPICS.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TemperatureActual") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TemperatureActual.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FrameType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FrameType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FrameType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FrameType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Temperature") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Temperature.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Temperature_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Temperature.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for ADDriver ### diff --git a/tests/outputs/bl45p-ea-dcam-02/NDFileHDF5.pvi.template b/tests/outputs/bl45p-ea-dcam-02/NDFileHDF5.pvi.template new file mode 100644 index 0000000..4f662be --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-02/NDFileHDF5.pvi.template @@ -0,0 +1,3051 @@ + +### PV Interface for NDFileHDF5 ### + +record("*", "$(P)$(R)AutoSave") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSave.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSave_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSave.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileName") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileName.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Capture") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Capture.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Capture_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Capture.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Compression") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Compression.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Compression_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Compression.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)JPEGQuality") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.JPEGQuality.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)JPEGQuality_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.JPEGQuality.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscCompressor") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscCompressor.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscCompressor_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscCompressor.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscShuffle") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscShuffle.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscShuffle_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscShuffle.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileFormat") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileFormat.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileFormat_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileFormat.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePathExists_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePathExists.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePath") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePath.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePath_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePath.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CreateDirectory") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CreateDirectory.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CreateDirectory_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CreateDirectory.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileNumber") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileNumber.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TempSuffix") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TempSuffix.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TempSuffix_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TempSuffix.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LazyOpen") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LazyOpen.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LazyOpen_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LazyOpen.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoIncrement") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoIncrement.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoIncrement_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoIncrement.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileTemplate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileTemplate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileTemplate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileTemplate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FullFileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FullFileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCaptured_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCaptured.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileWriteMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileWriteMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileWriteMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileWriteMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCapture") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCapture.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCapture_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCapture.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DeleteDriverFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DeleteDriverFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DeleteDriverFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DeleteDriverFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteMessage") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteMessage.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRSupported_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRSupported.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumDataBits") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumDataBits.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumDataBits_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumDataBits.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataBitsOffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataBitsOffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataBitsOffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataBitsOffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRActive_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRActive.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SZipNumPixels") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SZipNumPixels.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SZipNumPixels_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SZipNumPixels.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRCbCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRCbCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ZLevel") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ZLevel.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ZLevel_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ZLevel.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FlushNow") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FlushNow.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSizeAuto") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSizeAuto.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSizeAuto_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSizeAuto.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StorePerform") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StorePerform.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StorePerform_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StorePerform.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumColChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumColChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumColChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumColChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StoreAttr") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StoreAttr.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StoreAttr_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StoreAttr.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumRowChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumRowChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumRowChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumRowChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RunTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RunTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)IOSpeed") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.IOSpeed.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscLevel") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscLevel.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscLevel_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscLevel.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryAlign") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryAlign.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryAlign_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryAlign.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLErrorMsg_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLErrorMsg.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLValid_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLValid.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryThreshold") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryThreshold.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryThreshold_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryThreshold.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesFlush") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesFlush.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesFlush_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesFlush.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLFileName") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLFileName.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLFileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLFileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FillValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FillValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FillValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FillValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExtraDims") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExtraDims.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExtraDims_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExtraDims.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DimAttDatasets") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DimAttDatasets.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DimAttDatasets_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DimAttDatasets.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PositionMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PositionMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PositionMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PositionMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributeChunk") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributeChunk.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributeChunk_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributeChunk.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDFileHDF5 ### diff --git a/tests/outputs/bl45p-ea-dcam-02/NDPluginProcess.pvi.template b/tests/outputs/bl45p-ea-dcam-02/NDPluginProcess.pvi.template new file mode 100644 index 0000000..75c81c2 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-02/NDPluginProcess.pvi.template @@ -0,0 +1,1632 @@ + +### PV Interface for NDPluginProcess ### + +record("*", "$(P)$(R)Offset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Offset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Offset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Offset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ValidBackground_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ValidBackground.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SaveBackground") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SaveBackground.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SaveBackground_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SaveBackground.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableFilter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableFilter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableFilter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableFilter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableBackground") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableBackground.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableBackground_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableBackground.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ValidFlatField_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ValidFlatField.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SaveFlatField") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SaveFlatField.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SaveFlatField_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SaveFlatField.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ResetFilter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ResetFilter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ResetFilter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ResetFilter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoResetFilter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoResetFilter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoResetFilter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoResetFilter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableFlatField") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableFlatField.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableFlatField_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableFlatField.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilterCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilterCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilterCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilterCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ScaleFlatField") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ScaleFlatField.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ScaleFlatField_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ScaleFlatField.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OOffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OOffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OOffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OOffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC1") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC1.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC1_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC1.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableOffsetScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableOffsetScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableOffsetScale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableOffsetScale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FOffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FOffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FOffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FOffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoOffsetScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoOffsetScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Scale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Scale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Scale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Scale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC1") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC1.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC1_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC1.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ROffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ROffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ROffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ROffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RC1") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RC1.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RC1_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RC1.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RC2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RC2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RC2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RC2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableLowClip") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableLowClip.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableLowClip_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableLowClip.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OScale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OScale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)OC2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.OC2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LowClip") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LowClip.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LowClip_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LowClip.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FScale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FScale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FC2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FC2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableHighClip") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableHighClip.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableHighClip_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableHighClip.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HighClip") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HighClip.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HighClip_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HighClip.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataTypeOut") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataTypeOut.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataTypeOut_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataTypeOut.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFiltered_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFiltered.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFilter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFilter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFilter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFilter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginProcess ### diff --git a/tests/outputs/bl45p-ea-dcam-02/NDPluginPva.pvi.template b/tests/outputs/bl45p-ea-dcam-02/NDPluginPva.pvi.template new file mode 100644 index 0000000..f9d8b5e --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-02/NDPluginPva.pvi.template @@ -0,0 +1,873 @@ + +### PV Interface for NDPluginPva ### + +record("*", "$(P)$(R)PvName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PvName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginPva ### diff --git a/tests/outputs/bl45p-ea-dcam-02/NDPluginROI.pvi.template b/tests/outputs/bl45p-ea-dcam-02/NDPluginROI.pvi.template new file mode 100644 index 0000000..886e237 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-02/NDPluginROI.pvi.template @@ -0,0 +1,1434 @@ + +### PV Interface for NDPluginROI ### + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Name") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Name.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Name_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Name.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Scale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Scale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Scale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Scale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataTypeOut") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataTypeOut.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataTypeOut_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataTypeOut.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableScale") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableScale.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableScale_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableScale.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CollapseDims") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CollapseDims.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CollapseDims_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CollapseDims.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeZ") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeZ.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginROI ### diff --git a/tests/outputs/bl45p-ea-dcam-02/NDPluginStats.pvi.template b/tests/outputs/bl45p-ea-dcam-02/NDPluginStats.pvi.template new file mode 100644 index 0000000..df04667 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-02/NDPluginStats.pvi.template @@ -0,0 +1,2050 @@ + +### PV Interface for NDPluginStats ### + +record("*", "$(P)$(R)Net") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Net.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Net_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Net.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMinValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMinValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMaxValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMaxValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMeanValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMeanValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSTotal") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSTotal.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSNet") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSNet.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MeanValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MeanValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MeanValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MeanValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Total") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Total.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Total_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Total.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BgdWidth") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BgdWidth.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BgdWidth_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BgdWidth.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeStatistics") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeStatistics.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeStatistics_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeStatistics.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeProfiles") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeProfiles.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeProfiles_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeProfiles.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileAverageX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileAverageX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileAverageY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileAverageY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileThresholdX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileThresholdX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileThresholdY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileThresholdY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileCentroidX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileCentroidX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileCentroidY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileCentroidY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileCursorX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileCursorX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProfileCursorY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProfileCursorY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMaxX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMaxX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSMaxY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSMaxY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSTimestamp") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSTimestamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeHistogram") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeHistogram.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeHistogram_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeHistogram.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeCentroid") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeCentroid.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ComputeCentroid_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ComputeCentroid.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistMin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistMin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistMin_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistMin.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidThreshold") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidThreshold.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidThreshold_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidThreshold.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistMax") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistMax.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistMax_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistMax.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistBelow") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistBelow.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistBelow_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistBelow.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistAbove") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistAbove.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistAbove_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistAbove.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistEntropy") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistEntropy.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistEntropy_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistEntropy.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Histogram_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Histogram.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)HistogramX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.HistogramX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Eccentricity") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Eccentricity.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Eccentricity_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Eccentricity.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Orientation") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Orientation.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Orientation_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Orientation.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSigma") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSigma.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSCentroidTotal") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSCentroidTotal.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSCentroidX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSCentroidX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSCentroidY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSCentroidY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSigmaX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSigmaX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSigmaY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSigmaY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSigmaXY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSigmaXY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSkewX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSkewX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSSkewY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSSkewY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSKurtosisX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSKurtosisX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSKurtosisY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSKurtosisY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSEccentricity") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSEccentricity.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TSOrientation") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TSOrientation.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidTotal") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidTotal.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidTotal_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidTotal.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CentroidY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CentroidY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaXY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaXY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaXY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaXY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SkewX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SkewX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SkewX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SkewX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SkewY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SkewY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SkewY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SkewY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)KurtosisX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.KurtosisX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)KurtosisX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.KurtosisX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)KurtosisY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.KurtosisY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)KurtosisY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.KurtosisY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CursorVal") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CursorVal.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SigmaValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Sigma_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SigmaValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginStats ### diff --git a/tests/outputs/bl45p-ea-dcam-02/ioc.subst b/tests/outputs/bl45p-ea-dcam-02/ioc.subst new file mode 100644 index 0000000..cda7492 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-02/ioc.subst @@ -0,0 +1,111 @@ +############################################################################# +# DB substitution file generated by http://github.com/epics-containers/ibek # +############################################################################# + +file "$(IOCSTATS)/db/iocAdminSoft.db" { +pattern + { "IOC" } + { "" } +} + +file "$(IOCSTATS)/db/iocAdminScanMon.db" { +pattern + { "IOC" } + { "" } +} + +file "$(ADARAVIS)/db/aravisCamera.template" { +pattern + { "P", "R", "PORT", "TIMEOUT", "ADDR" } + { "BL45P-EA-DIFF-01", ":DET:", "DIFF.DET", "1", "0" } +} + +file "$(ADGENICAM)/db/AVT_Mako_G234B.template" { +pattern + { "P", "R", "PORT", "TIMEOUT", "ADDR" } + { "BL45P-EA-DIFF-01", ":DET:", "DIFF.DET", "1", "0" } +} + +file "$(ADCORE)/db/NDROI.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DIFF.DET", "0", "I/O Intr", "0", "0", "BL45P-EA-DIFF-01", ":ROI:", "1", "DIFF.roi" } +} + +file "$(ADCORE)/db/NDStats.template" { +pattern + { "NDARRAY_PORT", "XSIZE", "NCHANS", "NDARRAY_ADDR", "YSIZE", "ENABLED", "HIST_SIZE", "PORT", "P", "R", "TIMEOUT", "TS_PORT", "SCANRATE", "ADDR" } + { "DIFF.DET", "1936", "20000", "0", "1216", "0", "256", "DIFF.stat", "BL45P-EA-DIFF-01", ":STAT:", "1", "$(PORT)_TS", "I/O Intr", "0" } +} + +file "$(ADCORE)/db/NDStdArrays.template" { +pattern + { "NDARRAY_PORT", "FTVL", "ADDR", "SCANRATE", "NELEMENTS", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "TYPE", "PORT" } + { "DIFF.roi", "UCHAR", "0", "I/O Intr", "2354176", "0", "0", "BL45P-EA-DIFF-01", ":ARR:", "1", "Int8", "DIFF.arr" } +} + +file "$(ADCORE)/db/NDProcess.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DIFF.DET", "0", "I/O Intr", "0", "0", "BL45P-EA-DIFF-01", ":PROC:", "1", "DIFF.proc" } +} + +file "$(ADCORE)/db/NDFileTIFF.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DIFF.DET", "0", "I/O Intr", "0", "0", "BL45P-EA-DIFF-01", ":TIFF:", "1", "DIFF.tiff" } +} + +file "$(ADCORE)/db/NDFileHDF5.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "XMLSIZE", "P", "R", "TIMEOUT", "PORT" } + { "DIFF.DET", "0", "I/O Intr", "0", "0", "2048", "BL45P-EA-DIFF-01", ":HDF5:", "1", "DIFF.hdf" } +} + +file "$(ADCORE)/db/NDPosPlugin.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DIFF.DET", "0", "I/O Intr", "0", "1", "BL45P-EA-DIFF-01", ":POS:", "1", "DIFF.POS" } +} + +file "$(ADCORE)/db/NDPva.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DIFF.DET", "0", "I/O Intr", "0", "1", "BL45P-EA-DIFF-01", ":PVA:", "1", "DIFF.PVA" } +} + +file "ADDriver.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-DIFF-01", ":DET:" } +} + +file "NDPluginROI.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-DIFF-01", ":ROI:" } +} + +file "NDPluginStats.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-DIFF-01", ":STAT:" } +} + +file "NDPluginProcess.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-DIFF-01", ":PROC:" } +} + +file "NDFileHDF5.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-DIFF-01", ":HDF5:" } +} + +file "NDPluginPva.pvi.template" { +pattern + { "P", "R" } + { "BL45P-EA-DIFF-01", ":PVA:" } +} diff --git a/tests/outputs/bl45p-ea-dcam-02/st.cmd b/tests/outputs/bl45p-ea-dcam-02/st.cmd new file mode 100644 index 0000000..403ace1 --- /dev/null +++ b/tests/outputs/bl45p-ea-dcam-02/st.cmd @@ -0,0 +1,39 @@ +# EPICS IOC Startup Script generated by https://github.com/epics-containers/ibek + +cd "/epics/ioc" + +epicsEnvSet EPICS_CA_MAX_ARRAY_BYTES 6000000 + +dbLoadDatabase dbd/ioc.dbd +ioc_registerRecordDeviceDriver pdbbase + +callbackSetQueueSize(10000) +# aravisConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize) +aravisConfig("DIFF.DET", "bl45p-ea-detector-02", -1, 0, 1) +# NDROIConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize, maxThreads) +NDROIConfigure("DIFF.roi", 250, 0, "DIFF.DET", 0, 0, 0, 0, 0, 1) +# ADCore path for manual NDTimeSeries.template to find base plugin template +epicsEnvSet "EPICS_DB_INCLUDE_PATH", "$(ADCORE)/db" +# NDStatsConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize, maxThreads) +NDStatsConfigure("DIFF.stat", 250, 0, "DIFF.DET", 0, 0, 0, 0, 0, 1) +# NDTimeSeriesConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxSignals) +NDTimeSeriesConfigure("DIFF.stat_TS", 250, 0, "DIFF.stat", 1, 23) +# Load time series records +dbLoadRecords("$(ADCORE)/db/NDTimeSeries.template", "P=BL45P-EA-DIFF-01,R=:STAT:, PORT=DIFF.stat ,ADDR=0,TIMEOUT=1,NDARRAY_PORT=DIFF.DET,NDARRAY_ADDR=0,NCHANS=20000,ENABLED=0") +# NDStdArraysConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize, maxThreads) +NDStdArraysConfigure("DIFF.arr", 2, 0, "DIFF.roi", 0, 0, 0, 0, 0, 1) +# NDProcessConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr) +NDProcessConfigure("DIFF.proc", 250, 0, "DIFF.DET", 0) +# NDFileTIFFConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr) +NDFileTIFFConfigure("DIFF.tiff", 250, 0, "DIFF.DET", 0) +# NDFileHDF5Configure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr) +NDFileHDF5Configure("DIFF.hdf", 250, 0, "DIFF.DET", 0) +# NDPosPluginConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize) +NDPosPluginConfigure("DIFF.POS", 1000, 0, "DIFF.DET", 0, 0, 0, 0, 0) +# NDPvaConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, pvName, maxBuffers, maxMemory, priority, stackSize) +NDPvaConfigure("DIFF.PVA", 2, 0, "DIFF.DET", 0, BL45P-EA-DIFF-01:TX:PVA, 0, 0, 0, 0) +startPVAServer + +dbLoadRecords /ioc.db +iocInit + diff --git a/tests/outputs/bl47p-ea-dcam-01/ADDriver.pvi.template b/tests/outputs/bl47p-ea-dcam-01/ADDriver.pvi.template new file mode 100644 index 0000000..d748743 --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-01/ADDriver.pvi.template @@ -0,0 +1,1093 @@ + +### PV Interface for ADDriver ### + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Gain") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Gain.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Gain_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Gain.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterStatus_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControl") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControl.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControl_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControl.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterOpenDelay") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterOpenDelay.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterOpenDelay_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterOpenDelay.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterCloseDelay") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterCloseDelay.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterCloseDelay_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterCloseDelay.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquirePeriod") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquirePeriod.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquirePeriod_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquirePeriod.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImagesCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImagesCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImages") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImages.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImages_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImages.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposures") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposures.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposures_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposures.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ImageMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ImageMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ImageMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ImageMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TriggerMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TriggerMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TriggerMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TriggerMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DetectorState_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DetectorState.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StatusMessage_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StatusMessage.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeRemaining_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeRemaining.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadStatus.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposuresCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposuresCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StringToServer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StringToServer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StringFromServer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StringFromServer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControlEPICS") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControlEPICS.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TemperatureActual") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TemperatureActual.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FrameType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FrameType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FrameType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FrameType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Temperature") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Temperature.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Temperature_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Temperature.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for ADDriver ### diff --git a/tests/outputs/bl47p-ea-dcam-01/NDFileHDF5.pvi.template b/tests/outputs/bl47p-ea-dcam-01/NDFileHDF5.pvi.template new file mode 100644 index 0000000..4f662be --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-01/NDFileHDF5.pvi.template @@ -0,0 +1,3051 @@ + +### PV Interface for NDFileHDF5 ### + +record("*", "$(P)$(R)AutoSave") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSave.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoSave_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoSave.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileName") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileName.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Capture") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Capture.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Capture_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Capture.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Compression") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Compression.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Compression_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Compression.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)JPEGQuality") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.JPEGQuality.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)JPEGQuality_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.JPEGQuality.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscCompressor") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscCompressor.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscCompressor_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscCompressor.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscShuffle") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscShuffle.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscShuffle_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscShuffle.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileFormat") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileFormat.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileFormat_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileFormat.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePathExists_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePathExists.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePath") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePath.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FilePath_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FilePath.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CreateDirectory") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CreateDirectory.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CreateDirectory_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CreateDirectory.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileNumber") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileNumber.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TempSuffix") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TempSuffix.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TempSuffix_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TempSuffix.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LazyOpen") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LazyOpen.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)LazyOpen_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.LazyOpen.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoIncrement") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoIncrement.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AutoIncrement_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AutoIncrement.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileTemplate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileTemplate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileTemplate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileTemplate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FullFileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FullFileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCaptured_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCaptured.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileWriteMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileWriteMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FileWriteMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FileWriteMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCapture") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCapture.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumCapture_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumCapture.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DeleteDriverFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DeleteDriverFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DeleteDriverFile_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DeleteDriverFile.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WriteMessage") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WriteMessage.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRSupported_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRSupported.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumDataBits") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumDataBits.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumDataBits_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumDataBits.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataBitsOffset") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataBitsOffset.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataBitsOffset_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataBitsOffset.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRActive_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRActive.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SZipNumPixels") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SZipNumPixels.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SZipNumPixels_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SZipNumPixels.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SWMRCbCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SWMRCbCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ZLevel") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ZLevel.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ZLevel_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ZLevel.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FlushNow") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FlushNow.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSizeAuto") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSizeAuto.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSizeAuto_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSizeAuto.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StorePerform") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StorePerform.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StorePerform_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StorePerform.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumColChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumColChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumColChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumColChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StoreAttr") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StoreAttr.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StoreAttr_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StoreAttr.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumRowChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumRowChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumRowChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumRowChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)RunTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.RunTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize2") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize2.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize2_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize2.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)IOSpeed") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.IOSpeed.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscLevel") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscLevel.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BloscLevel_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BloscLevel.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesChunks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesChunks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesChunks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesChunks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryAlign") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryAlign.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryAlign_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryAlign.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLErrorMsg_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLErrorMsg.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLValid_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLValid.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryThreshold") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryThreshold.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BoundaryThreshold_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BoundaryThreshold.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesFlush") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesFlush.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumFramesFlush_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumFramesFlush.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLFileName") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLFileName.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)XMLFileName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.XMLFileName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FillValue") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FillValue.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FillValue_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FillValue.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ChunkSize9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ChunkSize9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExtraDims") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExtraDims.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExtraDims_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExtraDims.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DimAttDatasets") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DimAttDatasets.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DimAttDatasets_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DimAttDatasets.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunkY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunkY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimNameY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimNameY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimSize9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimSize9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimChunk9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimChunk9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExtraDimName9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExtraDimName9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PositionMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PositionMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PositionMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PositionMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimN") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimN.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimN_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimN.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDimY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDimY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDimY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDimY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim3") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim3.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim3_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim3.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim4") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim4.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim4_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim4.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim5") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim5.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim5_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim5.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim6") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim6.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim6_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim6.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim7") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim7.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim7_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim7.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim8") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim8.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim8_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim8.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosIndexDim9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosIndexDim9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim9") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim9.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PosNameDim9_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PosNameDim9.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributeChunk") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributeChunk.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributeChunk_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributeChunk.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDFileHDF5 ### diff --git a/tests/outputs/bl47p-ea-dcam-01/NDPluginPva.pvi.template b/tests/outputs/bl47p-ea-dcam-01/NDPluginPva.pvi.template new file mode 100644 index 0000000..f9d8b5e --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-01/NDPluginPva.pvi.template @@ -0,0 +1,873 @@ + +### PV Interface for NDPluginPva ### + +record("*", "$(P)$(R)PvName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PvName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginPva ### diff --git a/tests/outputs/bl47p-ea-dcam-01/ioc.subst b/tests/outputs/bl47p-ea-dcam-01/ioc.subst new file mode 100644 index 0000000..9044d32 --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-01/ioc.subst @@ -0,0 +1,69 @@ +############################################################################# +# DB substitution file generated by http://github.com/epics-containers/ibek # +############################################################################# + +file "$(IOCSTATS)/db/iocAdminSoft.db" { +pattern + { "IOC" } + { "" } +} + +file "$(IOCSTATS)/db/iocAdminScanMon.db" { +pattern + { "IOC" } + { "" } +} + +file "$(ADARAVIS)/db/aravisCamera.template" { +pattern + { "P", "R", "PORT", "TIMEOUT", "ADDR" } + { "BL47P-EA-DET-01", ":DET:", "DET.CAM", "1", "0" } +} + +file "$(ADGENICAM)/db/AVT_Mako_G125B.template" { +pattern + { "P", "R", "PORT", "TIMEOUT", "ADDR" } + { "BL47P-EA-DET-01", ":DET:", "DET.CAM", "1", "0" } +} + +file "$(ADCORE)/db/NDPva.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DET.CAM", "0", "I/O Intr", "0", "0", "BL47P-EA-DET-01", ":TX:", "1", "DET.PVA" } +} + +file "$(ADCORE)/db/NDPosPlugin.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DET.CAM", "0", "I/O Intr", "0", "0", "BL47P-EA-DET-01", ":POS:", "1", "DET.POS" } +} + +file "$(ADCORE)/db/NDFileHDF5.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "XMLSIZE", "P", "R", "TIMEOUT", "PORT" } + { "DET.CAM", "0", "I/O Intr", "0", "1", "2048", "BL47P-EA-DET-01", ":HDF5:", "1", "DET.HDF" } +} + +file "$(ADCORE)/db/NDStdArrays.template" { +pattern + { "NDARRAY_PORT", "FTVL", "ADDR", "SCANRATE", "NELEMENTS", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "TYPE", "PORT" } + { "DET.CAM", "UCHAR", "0", "I/O Intr", "38720", "0", "0", "BL47P-EA-DET-01", ":ARR:", "1", "Int8", "DET.ARR" } +} + +file "ADDriver.pvi.template" { +pattern + { "P", "R" } + { "BL47P-EA-DET-01", ":DET:" } +} + +file "NDPluginPva.pvi.template" { +pattern + { "P", "R" } + { "BL47P-EA-DET-01", ":TX:" } +} + +file "NDFileHDF5.pvi.template" { +pattern + { "P", "R" } + { "BL47P-EA-DET-01", ":HDF5:" } +} diff --git a/tests/outputs/bl47p-ea-dcam-01/st.cmd b/tests/outputs/bl47p-ea-dcam-01/st.cmd new file mode 100644 index 0000000..25e16f7 --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-01/st.cmd @@ -0,0 +1,29 @@ +# EPICS IOC Startup Script generated by https://github.com/epics-containers/ibek + +cd "/epics/ioc" + +epicsEnvSet EPICS_TZ GMT0BST +epicsEnvSet EPICS_CA_MAX_ARRAY_BYTES 3000000 + +dbLoadDatabase dbd/ioc.dbd +ioc_registerRecordDeviceDriver pdbbase + +# aravisConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize) +aravisConfig("DET.CAM", "192.168.250.3", -1, 0, 1) +# NDPvaConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, pvName, maxBuffers, maxMemory, priority, stackSize) +NDPvaConfigure("DET.PVA", 2, 0, "DET.CAM", 0, BL47P-EA-DET-01:TX:PVA, 0, 0, 0, 0) +startPVAServer +# NDPosPluginConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize) +NDPosPluginConfigure("DET.POS", 2, 0, "DET.CAM", 0, 0, 0, 0, 0) +# NDFileHDF5Configure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr) +NDFileHDF5Configure("DET.HDF", 2, 0, "DET.CAM", 0) +# NDStdArraysConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, maxBuffers, maxMemory, priority, stackSize, maxThreads) +NDStdArraysConfigure("DET.ARR", 2, 0, "DET.CAM", 0, 0, 0, 0, 0, 1) + +dbLoadRecords /ioc.db +iocInit + + +dbpf "BL47P-EA-DET-01:DET:TriggerSource" ""Line1"" +dbpf "BL47P-EA-DET-01:DET:GC_GevSCPSPacketSize" "1500" + diff --git a/tests/outputs/bl47p-ea-dcam-02/ADDriver.pvi.template b/tests/outputs/bl47p-ea-dcam-02/ADDriver.pvi.template new file mode 100644 index 0000000..d748743 --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-02/ADDriver.pvi.template @@ -0,0 +1,1093 @@ + +### PV Interface for ADDriver ### + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxSizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxSizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReverseY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReverseY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Gain") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Gain.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Gain_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Gain.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterStatus_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControl") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControl.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControl_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControl.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterOpenDelay") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterOpenDelay.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterOpenDelay_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterOpenDelay.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterCloseDelay") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterCloseDelay.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterCloseDelay_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterCloseDelay.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquirePeriod") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquirePeriod.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquirePeriod_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquirePeriod.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImagesCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImagesCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImages") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImages.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumImages_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumImages.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposures") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposures.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposures_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposures.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ImageMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ImageMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ImageMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ImageMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TriggerMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TriggerMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TriggerMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TriggerMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DetectorState_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DetectorState.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StatusMessage_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StatusMessage.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeRemaining_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeRemaining.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ReadStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ReadStatus.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumExposuresCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumExposuresCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StringToServer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StringToServer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)StringFromServer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.StringFromServer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ShutterControlEPICS") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ShutterControlEPICS.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TemperatureActual") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TemperatureActual.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FrameType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FrameType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FrameType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FrameType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Temperature") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Temperature.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Temperature_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Temperature.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for ADDriver ### diff --git a/tests/outputs/bl47p-ea-dcam-02/NDPluginPva.pvi.template b/tests/outputs/bl47p-ea-dcam-02/NDPluginPva.pvi.template new file mode 100644 index 0000000..f9d8b5e --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-02/NDPluginPva.pvi.template @@ -0,0 +1,873 @@ + +### PV Interface for NDPluginPva ### + +record("*", "$(P)$(R)PvName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PvName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PluginType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PluginType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayPort_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayPort.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDArrayAddress_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDArrayAddress.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EnableCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EnableCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MinCallbackTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MinCallbackTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)QueueSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.QueueSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ExecutionTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ExecutionTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ProcessPlugin") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ProcessPlugin.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DroppedOutputArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DroppedOutputArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxByteRate_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxByteRate.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BlockingCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BlockingCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)MaxThreads_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.MaxThreads.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortTime_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortTime.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortFree") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortFree.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SortSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SortSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DisorderedArrays_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DisorderedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PortName_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PortName.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Manufacturer_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Manufacturer.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Model_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Model.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SerialNumber_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SerialNumber.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)FirmwareVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.FirmwareVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)SDKVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.SDKVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DriverVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DriverVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ADCoreVersion_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ADCoreVersion.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeX_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeX.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeY_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeY.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)DataType_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.DataType.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ColorMode_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ColorMode.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NumQueuedArrays") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NumQueuedArrays.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)WaitForPlugins") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.WaitForPlugins.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Acquire_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Acquire.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCounter_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCounter.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArrayCallbacks_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArrayCallbacks.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesFile") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesFile.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesMacros") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesMacros.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDAttributesStatus") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDAttributesStatus.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EmptyFreeList") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EmptyFreeList.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)AcquireBusyCB") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.AcquireBusyCB.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)BayerPattern_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.BayerPattern.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)ArraySizeZ_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.ArraySizeZ.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Codec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Codec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)CompressedSize_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.CompressedSize.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)UniqueId_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.UniqueId.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)TimeStamp_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.TimeStamp.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSSec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSSec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)EpicsTSNsec_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.EpicsTSNsec.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolMaxMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolMaxMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolUsedMem") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolUsedMem.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolAllocBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolAllocBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)PoolFreeBuffers") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.PoolFreeBuffers.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)NDimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.NDimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.w": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +record("*", "$(P)$(R)Dimensions_RBV") { + info(Q:group, { + "$(P)$(R)PVI": { + "pvi.Dimensions.r": { + "+channel": "NAME", + "+type": "plain", + } + } + }) +} + +### End of PV Interface for NDPluginPva ### diff --git a/tests/outputs/bl47p-ea-dcam-02/ioc.subst b/tests/outputs/bl47p-ea-dcam-02/ioc.subst new file mode 100644 index 0000000..6d20396 --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-02/ioc.subst @@ -0,0 +1,45 @@ +############################################################################# +# DB substitution file generated by http://github.com/epics-containers/ibek # +############################################################################# + +file "$(IOCSTATS)/db/iocAdminSoft.db" { +pattern + { "IOC" } + { "" } +} + +file "$(IOCSTATS)/db/iocAdminScanMon.db" { +pattern + { "IOC" } + { "" } +} + +file "$(ADARAVIS)/db/aravisCamera.template" { +pattern + { "P", "R", "PORT", "TIMEOUT", "ADDR" } + { "BL47P-EA-DET-02", ":DET:", "DET2.CAM", "1", "0" } +} + +file "$(ADGENICAM)/db/AVT_Mako_G125B.template" { +pattern + { "P", "R", "PORT", "TIMEOUT", "ADDR" } + { "BL47P-EA-DET-02", ":DET:", "DET2.CAM", "1", "0" } +} + +file "$(ADCORE)/db/NDPva.template" { +pattern + { "NDARRAY_PORT", "ADDR", "SCANRATE", "NDARRAY_ADDR", "ENABLED", "P", "R", "TIMEOUT", "PORT" } + { "DET2.CAM", "0", "I/O Intr", "0", "1", "BL47P-EA-DET-02", ":TX:", "0", "DET.PVA" } +} + +file "ADDriver.pvi.template" { +pattern + { "P", "R" } + { "BL47P-EA-DET-02", ":DET:" } +} + +file "NDPluginPva.pvi.template" { +pattern + { "P", "R" } + { "BL47P-EA-DET-02", ":TX:" } +} diff --git a/tests/outputs/bl47p-ea-dcam-02/st.cmd b/tests/outputs/bl47p-ea-dcam-02/st.cmd new file mode 100644 index 0000000..ae17678 --- /dev/null +++ b/tests/outputs/bl47p-ea-dcam-02/st.cmd @@ -0,0 +1,25 @@ +# EPICS IOC Startup Script generated by https://github.com/epics-containers/ibek + +cd "/epics/ioc" + +epicsEnvSet EPICS_TZ GMT0BST +epicsEnvSet EPICS_CA_MAX_ARRAY_BYTES 3000000 + +dbLoadDatabase dbd/ioc.dbd +ioc_registerRecordDeviceDriver pdbbase + +# aravisConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize) +aravisConfig("DET2.CAM", "192.168.250.28", -1, 0, 1) +# NDPvaConfigure(portName, queueSize, blockingCallbacks, NDArrayPort, NDArrayAddr, pvName, maxBuffers, maxMemory, priority, stackSize) +NDPvaConfigure("DET.PVA", 2, 0, "DET2.CAM", 0, BL47P-EA-DET-02:TX:PVA, 0, 0, 0, 0) +startPVAServer + +dbLoadRecords /ioc.db +iocInit + + +dbpf "BL47P-EA-DET-02:DET:TriggerSource" ""FixedRate"" +dbpf "BL47P-EA-DET-02:DET:GC_GevSCPSPacketSize" "1500" +dbpf "BL47P-EA-DET-02:DET:ColorMode" ""RGB1"" +dbpf "BL47P-EA-DET-02:DET:AcquireTime" "0.5" + diff --git a/tests/outputs/bl47p-ea-test-01/ioc.subst b/tests/outputs/bl47p-ea-test-01/ioc.subst new file mode 100644 index 0000000..083bb80 --- /dev/null +++ b/tests/outputs/bl47p-ea-test-01/ioc.subst @@ -0,0 +1,15 @@ +############################################################################# +# DB substitution file generated by http://github.com/epics-containers/ibek # +############################################################################# + +file "$(IOCSTATS)/db/iocAdminSoft.db" { +pattern + { "IOC" } + { "" } +} + +file "$(IOCSTATS)/db/iocAdminScanMon.db" { +pattern + { "IOC" } + { "" } +} diff --git a/tests/outputs/bl47p-ea-test-01/st.cmd b/tests/outputs/bl47p-ea-test-01/st.cmd new file mode 100644 index 0000000..8a2f7f0 --- /dev/null +++ b/tests/outputs/bl47p-ea-test-01/st.cmd @@ -0,0 +1,19 @@ +# EPICS IOC Startup Script generated by https://github.com/epics-containers/ibek + +cd "/epics/ioc" + +epicsEnvSet EPICS_TZ GMT0BST + +dbLoadDatabase dbd/ioc.dbd +ioc_registerRecordDeviceDriver pdbbase + +dbLoadRecords("/epics/ioc/config/ioc.db") + +dbLoadRecords /ioc.db +iocInit + + +dbpf "bl47p:IBEK:A" "2.54" +dbpf "bl47p:IBEK:B" "2.61" +dbgf bl47p:IBEK:SUM + diff --git a/tests/outputs/bl47p-mo-ioc-01/ioc.subst b/tests/outputs/bl47p-mo-ioc-01/ioc.subst new file mode 100644 index 0000000..51a7398 --- /dev/null +++ b/tests/outputs/bl47p-mo-ioc-01/ioc.subst @@ -0,0 +1,52 @@ +############################################################################# +# DB substitution file generated by http://github.com/epics-containers/ibek # +############################################################################# + +file "$(IOCSTATS)/db/iocAdminSoft.db" { +pattern + { "IOC" } + { "" } +} + +file "$(IOCSTATS)/db/iocAdminScanMon.db" { +pattern + { "IOC" } + { "" } +} + +file "pmacStatus.template" { +pattern + { "P", "PORT" } + { "BL47P-MO-BRICK-01", "BRICK1" } +} + +file "pmacController.template" { +pattern + { "FEEDRATE", "CSG7", "CSG6", "CSG5", "CSG4", "CSG3", "CSG2", "CSG1", "CSG0", "P", "TIMEOUT", "NAXES", "PORT" } + { "100", "", "", "", "", "", "", "", "", "BL47P-MO-BRICK-01", "4", "4", "BRICK1" } +} + +file "pmacControllerTrajectory.template" { +pattern + { "NPOINTS", "MAXPOINTS", "PORT", "PREC", "PMAC", "NAxes" } + { "10000", "4000000", "BRICK1", "3", "BL47P-MO-BRICK-01", "4" } +} + +file "autohome.template" { +pattern + { "GRP10", "CTRL", "PORT", "GRP9", "GRP8", "GRP3", "GRP2", "GRP1", "GRP7", "GRP6", "GRP5", "GRP4", "STATUS11", "STATUSSV11", "STATUS13", "STATUS12", "STATUS15", "STATUS14", "DESC", "P", "STATE13", "STATE12", "STATE11", "STATUSSV12", "STATE15", "STATE14", "STATUSSV13", "PLC", "STATUSSV14", "STATUSSV15" } + { "", "BL47P-MO-BRICK-01", "BRICK1", "", "", "A", "X", "All", "", "", "", "", "", "NO_ALARM", "", "", "", "", "", "BL47P-MO-MAP-01:STAGE", "", "", "", "NO_ALARM", "", "", "NO_ALARM", "11", "NO_ALARM", "NO_ALARM" } +} + +file "dls_pmac_asyn_motor.template" { +pattern + { "P", "M", "PORT", "CS", "PMAC", "VELO", "ACCL", "SCALE", "BACC", "alh", "DHLM", "HOMEVIS", "EGU", "FEHSV", "VBAS", "VMAX", "HOME", "BDST", "DIR", "DTYP", "FEHIGH", "DLLM", "INIT", "ALLOW_HOMED_SET", "RDBL", "SREV", "LLM", "ADEL", "RDBD", "URIP", "ADDR", "RTRY", "OFF", "ERES", "FEHIHI", "FEHHSV", "JAR", "DESC", "BVEL", "MRES", "DLY", "HLSV", "UEIP", "RRES", "PREC", "RLNK", "FOFF", "HLM", "NTM", "TWV", "HOMEVISSTR" } + { "BL47P-MO-MAP-01:STAGE", ":X", "BRICK1", "0", "BL47P-MO-BRICK-01", "4.0", "0.1", "1", "0.0", "None", "25.0", "1", "mm", "NO_ALARM", "0.0", "4.0", "BL47P-MO-MAP-01:STAGE", "0.0", "Pos", "asynMotor", "0.0", "-25.0", "", "#", "", "1000", "-25", "0.0", "0.0", "0", "1", "0", "0.0", "0.0", "0.0", "NO_ALARM", "0.0", "X", "0.0", "-0.000125", "0", "MAJOR", "1", "0.0", "3", "", "Variable", "25", "YES", "1.0", "Use motor summary screen" } + { "BL47P-MO-MAP-01:STAGE", ":A", "BRICK1", "0", "BL47P-MO-BRICK-01", "2500.0", "0.1", "1", "0.0", "None", "0.0", "1", "mm", "NO_ALARM", "0.0", "2500.0", "BL47P-MO-MAP-01:STAGE", "0.0", "Pos", "asynMotor", "0.0", "0.0", "", "#", "", "1000", "", "0.0", "0.0", "0", "2", "0", "0.0", "0.0", "0.0", "NO_ALARM", "0.0", "A", "0.0", "0.018", "0", "NO_ALARM", "1", "0.0", "3", "", "Variable", "", "YES", "18.0", "Use motor summary screen" } +} + +file "pmacCsController.template" { +pattern + { "CS", "PARENTPORT", "PORT", "TIMEOUT", "PMAC" } + { "1", "BRICK1", "CS1", "4", "BL47P-MO-BRICK-01" } +} diff --git a/tests/outputs/bl47p-mo-ioc-01/st.cmd b/tests/outputs/bl47p-mo-ioc-01/st.cmd new file mode 100644 index 0000000..8aabadc --- /dev/null +++ b/tests/outputs/bl47p-mo-ioc-01/st.cmd @@ -0,0 +1,25 @@ +# EPICS IOC Startup Script generated by https://github.com/epics-containers/ibek + +cd "/epics/ioc" + +epicsEnvSet EPICS_TZ GMT0BST +epicsEnvSet EPICS_CA_MAX_ARRAY_BYTES 3000000 + +dbLoadDatabase dbd/ioc.dbd +ioc_registerRecordDeviceDriver pdbbase + +# Create IP Port (PortName, IPAddr) +pmacAsynIPConfigure("BRICK1port", "192.168.250.13:1025") +# Configure Model 3 Controller Driver (ControlerPort, LowLevelDriverPort, Address, Axes, MovingPoll, IdlePoll) +pmacCreateController("BRICK1", "BRICK1port", 0, 4, 100, 1000) +# Configure Model 3 Axes Driver (Controler Port, Axis Count) +pmacCreateAxes("BRICK1", 4) +# Create CS (CSPortName, ControllerPort, CSNumber, ProgramNumber) +pmacCreateCS("CS1", "BRICK1", 1, 10) +# Configure Model 3 CS Axes Driver (CSPortName, CSAxisCount) +pmacCreateCSAxes("CS1", 9) +pmacDisableLimitsCheck("BRICK1", 2, 0) + +dbLoadRecords /ioc.db +iocInit + diff --git a/tests/test_generate.sh b/tests/test_generate.sh index 325bf33..32fed2a 100755 --- a/tests/test_generate.sh +++ b/tests/test_generate.sh @@ -1,14 +1,58 @@ #!/bin/bash -set -xe +set -e + +UPDATE=$1 THIS_FOLDER=$(realpath $(dirname ${0})) IBEK_SROOT=${THIS_FOLDER}/../ -pip install --upgrade -r $IBEK_SROOT/requirements.txt - # make a global ioc schema for all the support modules combined # this validates all ibek.support.yaml files echo generating all support schema ibek ioc generate-schema ${IBEK_SROOT}*/*.ibek.support.yaml --no-ibek-defs --output /tmp/all.ibek.ioc.schema.json +# prepare an EPICS_ROOT for the runtime asset generation +rm -fr /tmp/epics +mkdir -p /tmp/epics/runtime +mkdir -p /tmp/epics/pvi-defs +cp $IBEK_SROOT/*/*.pvi.device.yaml /tmp/epics/pvi-defs + +function asset_check () { + if [[ $UPDATE = "update" ]] ; then + echo "updating $1" + rm -fr $THIS_FOLDER/outputs/$1 + mkdir -p $THIS_FOLDER/outputs/$1 + cp /tmp/epics/runtime/* $THIS_FOLDER/outputs/$1 + else + if ! diff /tmp/epics/runtime $THIS_FOLDER/outputs/$1; then + echo "runtime assets for $1 are out of date" + FAILURE=TRUE + fi + fi +} + +# find all ioc's with ibek ioc yaml and generate runtime assets for each +for ioc in $THIS_FOLDER/ioc_repos/*/services/*; do + ioc_name=$(basename $ioc) + ioc_config=$ioc/config/ioc.yaml + + if [[ -f $ioc_config ]] ; then + echo generating runtime assets for $ioc_name + export EPICS_ROOT=/tmp/epics + if ! ibek runtime generate $ioc_config ${IBEK_SROOT}*/*.ibek.support.yaml + then + FAILURE=TRUE + else + asset_check $ioc_name + fi + else + echo "skipping $ioc ..." + fi +done + +# return error if any of the runtime asset generations failed +if [[ $FAILURE = "TRUE" ]] ; then + echo "Failed to generate runtime assets for some IOCs - see above" + exit 1 +fi