1 record(waveform,
"$(P)PARS:SAMPLE:NAME")
3 field(DESC,
"Sample Name")
6 field(DTYP,
"Soft Channel")
7 field(FLNK,
"$(P)PARS:SAMPLE:NAME:SEND")
9 info(autosaveFields,
"VAL")
10 info(PVCATEGORY,
"SAMPLEPAR")
12 alias(
"$(P)PARS:SAMPLE:NAME",
"$(P)PARS:SAMPLE:NAME:SP")
14 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
15 # we use this rather than PINI in above as DAE may not be running when we start this ioc
16 record(bo,
"$(P)PARS:SAMPLE:NAME:_SP_UPDATE")
18 field(SCAN,
"10 second")
19 field(FLNK,
"$(P)PARS:SAMPLE:NAME:SP.PROC")
23 ## Sample Name must match the parameter name as used within the ISISICP
24 ## NELM above and NOD below must match
25 ## NOVA below must match with output DAE waveform (see substitutions)
26 record(aSub,
"$(P)PARS:SAMPLE:NAME:SEND")
28 field(DESC,
"Send Sample Name to ICP")
29 field(SNAM,
"stringConcatWithCtrlB")
31 field(INPA,
"$(P)PARS:SAMPLE:NAME:SP.DESC NPP NMS")
33 field(INPB,
"$(P)PARS:SAMPLE:NAME:SP.FTVL NPP NMS")
35 field(INPC,
"$(P)PARS:SAMPLE:NAME:SP.EGU NPP NMS")
38 field(INPD,
"$(P)PARS:SAMPLE:NAME:SP.VAL NPP NMS")
41 field(OUTA,
"$(P)PARS:SAMPLE:NAME:_SENDV")
42 field(FLNK,
"$(P)PARS:SAMPLE:NAME:_SENDPV")
45 record(waveform,
"$(P)PARS:SAMPLE:NAME:_SENDV")
51 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
52 record(waveform,
"$(P)PARS:SAMPLE:NAME:_SENDPV")
54 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
57 field(FLNK,
"$(P)PARS:SAMPLE:NAME:_SENDQ")
60 record(aSub,
"$(P)PARS:SAMPLE:NAME:_SENDQ")
62 field(SNAM,
"queuedPVSet")
63 field(INPA,
"$(P)PARS:SAMPLE:NAME:_SENDPV NPP")
66 field(INPB,
"$(P)PARS:SAMPLE:NAME:_SENDV NPP")
73 record(waveform,
"$(P)PARS:SAMPLE:TYPE")
75 field(DESC,
"Sample Type")
78 field(DTYP,
"Soft Channel")
79 field(FLNK,
"$(P)PARS:SAMPLE:TYPE:SEND")
81 info(autosaveFields,
"VAL")
82 info(PVCATEGORY,
"SAMPLEPAR")
84 alias(
"$(P)PARS:SAMPLE:TYPE",
"$(P)PARS:SAMPLE:TYPE:SP")
86 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
87 # we use this rather than PINI in above as DAE may not be running when we start this ioc
88 record(bo,
"$(P)PARS:SAMPLE:TYPE:_SP_UPDATE")
90 field(SCAN,
"10 second")
91 field(FLNK,
"$(P)PARS:SAMPLE:TYPE:SP.PROC")
95 ## Sample Type must match the parameter name as used within the ISISICP
96 ## NELM above and NOD below must match
97 ## NOVA below must match with output DAE waveform (see substitutions)
98 record(aSub,
"$(P)PARS:SAMPLE:TYPE:SEND")
100 field(DESC,
"Send Sample Type to ICP")
101 field(SNAM,
"stringConcatWithCtrlB")
103 field(INPA,
"$(P)PARS:SAMPLE:TYPE:SP.DESC NPP NMS")
105 field(INPB,
"$(P)PARS:SAMPLE:TYPE:SP.FTVL NPP NMS")
107 field(INPC,
"$(P)PARS:SAMPLE:TYPE:SP.EGU NPP NMS")
110 field(INPD,
"$(P)PARS:SAMPLE:TYPE:SP.VAL NPP NMS")
113 field(OUTA,
"$(P)PARS:SAMPLE:TYPE:_SENDV")
114 field(FLNK,
"$(P)PARS:SAMPLE:TYPE:_SENDPV")
117 record(waveform,
"$(P)PARS:SAMPLE:TYPE:_SENDV")
123 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
124 record(waveform,
"$(P)PARS:SAMPLE:TYPE:_SENDPV")
126 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
129 field(FLNK,
"$(P)PARS:SAMPLE:TYPE:_SENDQ")
132 record(aSub,
"$(P)PARS:SAMPLE:TYPE:_SENDQ")
134 field(SNAM,
"queuedPVSet")
135 field(INPA,
"$(P)PARS:SAMPLE:TYPE:_SENDPV NPP")
138 field(INPB,
"$(P)PARS:SAMPLE:TYPE:_SENDV NPP")
145 record(waveform,
"$(P)PARS:SAMPLE:GEOMETRY")
147 field(DESC,
"Sample Geometry")
150 field(DTYP,
"Soft Channel")
151 field(FLNK,
"$(P)PARS:SAMPLE:GEOMETRY:SEND")
153 info(autosaveFields,
"VAL")
154 info(PVCATEGORY,
"SAMPLEPAR")
156 alias(
"$(P)PARS:SAMPLE:GEOMETRY",
"$(P)PARS:SAMPLE:GEOMETRY:SP")
158 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
159 # we use this rather than PINI in above as DAE may not be running when we start this ioc
160 record(bo,
"$(P)PARS:SAMPLE:GEOMETRY:_SP_UPDATE")
162 field(SCAN,
"10 second")
163 field(FLNK,
"$(P)PARS:SAMPLE:GEOMETRY:SP.PROC")
166 ## Send value to ICP.
167 ## Sample Geometry must match the parameter name as used within the ISISICP
168 ## NELM above and NOD below must match
169 ## NOVA below must match with output DAE waveform (see substitutions)
170 record(aSub,
"$(P)PARS:SAMPLE:GEOMETRY:SEND")
172 field(DESC,
"Send Sample Geometry to ICP")
173 field(SNAM,
"stringConcatWithCtrlB")
175 field(INPA,
"$(P)PARS:SAMPLE:GEOMETRY:SP.DESC NPP NMS")
177 field(INPB,
"$(P)PARS:SAMPLE:GEOMETRY:SP.FTVL NPP NMS")
179 field(INPC,
"$(P)PARS:SAMPLE:GEOMETRY:SP.EGU NPP NMS")
182 field(INPD,
"$(P)PARS:SAMPLE:GEOMETRY:SP.VAL NPP NMS")
185 field(OUTA,
"$(P)PARS:SAMPLE:GEOMETRY:_SENDV")
186 field(FLNK,
"$(P)PARS:SAMPLE:GEOMETRY:_SENDPV")
189 record(waveform,
"$(P)PARS:SAMPLE:GEOMETRY:_SENDV")
195 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
196 record(waveform,
"$(P)PARS:SAMPLE:GEOMETRY:_SENDPV")
198 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
201 field(FLNK,
"$(P)PARS:SAMPLE:GEOMETRY:_SENDQ")
204 record(aSub,
"$(P)PARS:SAMPLE:GEOMETRY:_SENDQ")
206 field(SNAM,
"queuedPVSet")
207 field(INPA,
"$(P)PARS:SAMPLE:GEOMETRY:_SENDPV NPP")
210 field(INPB,
"$(P)PARS:SAMPLE:GEOMETRY:_SENDV NPP")
217 record(waveform,
"$(P)PARS:SAMPLE:SCRIPT:NAME")
219 field(DESC,
"Script Name")
222 field(DTYP,
"Soft Channel")
223 field(FLNK,
"$(P)PARS:SAMPLE:SCRIPT:NAME:SEND")
225 info(autosaveFields,
"VAL")
226 info(PVCATEGORY,
"SAMPLEPAR")
228 alias(
"$(P)PARS:SAMPLE:SCRIPT:NAME",
"$(P)PARS:SAMPLE:SCRIPT:NAME:SP")
230 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
231 # we use this rather than PINI in above as DAE may not be running when we start this ioc
232 record(bo,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SP_UPDATE")
234 field(SCAN,
"10 second")
235 field(FLNK,
"$(P)PARS:SAMPLE:SCRIPT:NAME:SP.PROC")
238 ## Send value to ICP.
239 ## Script Name must match the parameter name as used within the ISISICP
240 ## NELM above and NOD below must match
241 ## NOVA below must match with output DAE waveform (see substitutions)
242 record(aSub,
"$(P)PARS:SAMPLE:SCRIPT:NAME:SEND")
244 field(DESC,
"Send Script Name to ICP")
245 field(SNAM,
"stringConcatWithCtrlB")
247 field(INPA,
"$(P)PARS:SAMPLE:SCRIPT:NAME:SP.DESC NPP NMS")
249 field(INPB,
"$(P)PARS:SAMPLE:SCRIPT:NAME:SP.FTVL NPP NMS")
251 field(INPC,
"$(P)PARS:SAMPLE:SCRIPT:NAME:SP.EGU NPP NMS")
254 field(INPD,
"$(P)PARS:SAMPLE:SCRIPT:NAME:SP.VAL NPP NMS")
257 field(OUTA,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SENDV")
258 field(FLNK,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SENDPV")
261 record(waveform,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SENDV")
267 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
268 record(waveform,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SENDPV")
270 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
273 field(FLNK,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SENDQ")
276 record(aSub,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SENDQ")
278 field(SNAM,
"queuedPVSet")
279 field(INPA,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SENDPV NPP")
282 field(INPB,
"$(P)PARS:SAMPLE:SCRIPT:NAME:_SENDV NPP")
291 field(DESC,
"Sample ID")
294 field(DTYP,
"Soft Channel")
295 field(FLNK,
"$(P)PARS:SAMPLE:ID:SEND")
297 info(autosaveFields,
"VAL")
298 info(PVCATEGORY,
"SAMPLEPAR")
300 alias(
"$(P)PARS:SAMPLE:ID",
"$(P)PARS:SAMPLE:ID:SP")
302 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
303 # we use this rather than PINI in above as DAE may not be running when we start this ioc
304 record(bo,
"$(P)PARS:SAMPLE:ID:_SP_UPDATE")
306 field(SCAN,
"10 second")
307 field(FLNK,
"$(P)PARS:SAMPLE:ID:SP.PROC")
310 ## Send value to ICP.
311 ## Sample ID must match the parameter name as used within the ISISICP
312 ## NELM above and NOD below must match
313 ## NOVA below must match with output DAE waveform (see substitutions)
316 field(DESC,
"Send Sample ID to ICP")
317 field(SNAM,
"stringConcatWithCtrlB")
319 field(INPA,
"$(P)PARS:SAMPLE:ID:SP.DESC NPP NMS")
321 field(INPB,
"$(P)PARS:SAMPLE:ID:SP.FTVL NPP NMS")
323 field(INPC,
"$(P)PARS:SAMPLE:ID:SP.EGU NPP NMS")
326 field(INPD,
"$(P)PARS:SAMPLE:ID:SP.VAL NPP NMS")
329 field(OUTA,
"$(P)PARS:SAMPLE:ID:_SENDV")
330 field(FLNK,
"$(P)PARS:SAMPLE:ID:_SENDPV")
333 record(waveform,
"$(P)PARS:SAMPLE:ID:_SENDV")
339 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
340 record(waveform,
"$(P)PARS:SAMPLE:ID:_SENDPV")
342 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
345 field(FLNK,
"$(P)PARS:SAMPLE:ID:_SENDQ")
348 record(aSub,
"$(P)PARS:SAMPLE:ID:_SENDQ")
350 field(SNAM,
"queuedPVSet")
351 field(INPA,
"$(P)PARS:SAMPLE:ID:_SENDPV NPP")
354 field(INPB,
"$(P)PARS:SAMPLE:ID:_SENDV NPP")
361 record(waveform,
"$(P)PARS:SAMPLE:MEAS:ID")
363 field(DESC,
"Measurement ID")
366 field(DTYP,
"Soft Channel")
367 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:ID:SEND")
369 info(autosaveFields,
"VAL")
370 info(PVCATEGORY,
"SAMPLEPAR")
372 alias(
"$(P)PARS:SAMPLE:MEAS:ID",
"$(P)PARS:SAMPLE:MEAS:ID:SP")
374 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
375 # we use this rather than PINI in above as DAE may not be running when we start this ioc
376 record(bo,
"$(P)PARS:SAMPLE:MEAS:ID:_SP_UPDATE")
378 field(SCAN,
"10 second")
379 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:ID:SP.PROC")
382 ## Send value to ICP.
383 ## Measurement ID must match the parameter name as used within the ISISICP
384 ## NELM above and NOD below must match
385 ## NOVA below must match with output DAE waveform (see substitutions)
386 record(aSub,
"$(P)PARS:SAMPLE:MEAS:ID:SEND")
388 field(DESC,
"Send Measurement ID to ICP")
389 field(SNAM,
"stringConcatWithCtrlB")
391 field(INPA,
"$(P)PARS:SAMPLE:MEAS:ID:SP.DESC NPP NMS")
393 field(INPB,
"$(P)PARS:SAMPLE:MEAS:ID:SP.FTVL NPP NMS")
395 field(INPC,
"$(P)PARS:SAMPLE:MEAS:ID:SP.EGU NPP NMS")
398 field(INPD,
"$(P)PARS:SAMPLE:MEAS:ID:SP.VAL NPP NMS")
401 field(OUTA,
"$(P)PARS:SAMPLE:MEAS:ID:_SENDV")
402 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:ID:_SENDPV")
405 record(waveform,
"$(P)PARS:SAMPLE:MEAS:ID:_SENDV")
411 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
412 record(waveform,
"$(P)PARS:SAMPLE:MEAS:ID:_SENDPV")
414 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
417 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:ID:_SENDQ")
420 record(aSub,
"$(P)PARS:SAMPLE:MEAS:ID:_SENDQ")
422 field(SNAM,
"queuedPVSet")
423 field(INPA,
"$(P)PARS:SAMPLE:MEAS:ID:_SENDPV NPP")
426 field(INPB,
"$(P)PARS:SAMPLE:MEAS:ID:_SENDV NPP")
433 record(waveform,
"$(P)PARS:SAMPLE:MEAS:TYPE")
435 field(DESC,
"Measurement Type")
438 field(DTYP,
"Soft Channel")
439 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:TYPE:SEND")
441 info(autosaveFields,
"VAL")
442 info(PVCATEGORY,
"SAMPLEPAR")
444 alias(
"$(P)PARS:SAMPLE:MEAS:TYPE",
"$(P)PARS:SAMPLE:MEAS:TYPE:SP")
446 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
447 # we use this rather than PINI in above as DAE may not be running when we start this ioc
448 record(bo,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SP_UPDATE")
450 field(SCAN,
"10 second")
451 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:TYPE:SP.PROC")
454 ## Send value to ICP.
455 ## Measurement Type must match the parameter name as used within the ISISICP
456 ## NELM above and NOD below must match
457 ## NOVA below must match with output DAE waveform (see substitutions)
458 record(aSub,
"$(P)PARS:SAMPLE:MEAS:TYPE:SEND")
460 field(DESC,
"Send Measurement Type to ICP")
461 field(SNAM,
"stringConcatWithCtrlB")
463 field(INPA,
"$(P)PARS:SAMPLE:MEAS:TYPE:SP.DESC NPP NMS")
465 field(INPB,
"$(P)PARS:SAMPLE:MEAS:TYPE:SP.FTVL NPP NMS")
467 field(INPC,
"$(P)PARS:SAMPLE:MEAS:TYPE:SP.EGU NPP NMS")
470 field(INPD,
"$(P)PARS:SAMPLE:MEAS:TYPE:SP.VAL NPP NMS")
473 field(OUTA,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SENDV")
474 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SENDPV")
477 record(waveform,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SENDV")
483 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
484 record(waveform,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SENDPV")
486 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
489 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SENDQ")
492 record(aSub,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SENDQ")
494 field(SNAM,
"queuedPVSet")
495 field(INPA,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SENDPV NPP")
498 field(INPB,
"$(P)PARS:SAMPLE:MEAS:TYPE:_SENDV NPP")
505 record(waveform,
"$(P)PARS:SAMPLE:MEAS:SUBID")
507 field(DESC,
"Measurement SubID")
510 field(DTYP,
"Soft Channel")
511 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:SUBID:SEND")
513 info(autosaveFields,
"VAL")
514 info(PVCATEGORY,
"SAMPLEPAR")
516 alias(
"$(P)PARS:SAMPLE:MEAS:SUBID",
"$(P)PARS:SAMPLE:MEAS:SUBID:SP")
518 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
519 # we use this rather than PINI in above as DAE may not be running when we start this ioc
520 record(bo,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SP_UPDATE")
522 field(SCAN,
"10 second")
523 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:SUBID:SP.PROC")
526 ## Send value to ICP.
527 ## Measurement SubID must match the parameter name as used within the ISISICP
528 ## NELM above and NOD below must match
529 ## NOVA below must match with output DAE waveform (see substitutions)
530 record(aSub,
"$(P)PARS:SAMPLE:MEAS:SUBID:SEND")
532 field(DESC,
"Send Measurement SubID to ICP")
533 field(SNAM,
"stringConcatWithCtrlB")
535 field(INPA,
"$(P)PARS:SAMPLE:MEAS:SUBID:SP.DESC NPP NMS")
537 field(INPB,
"$(P)PARS:SAMPLE:MEAS:SUBID:SP.FTVL NPP NMS")
539 field(INPC,
"$(P)PARS:SAMPLE:MEAS:SUBID:SP.EGU NPP NMS")
542 field(INPD,
"$(P)PARS:SAMPLE:MEAS:SUBID:SP.VAL NPP NMS")
545 field(OUTA,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SENDV")
546 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SENDPV")
549 record(waveform,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SENDV")
555 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
556 record(waveform,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SENDPV")
558 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
561 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SENDQ")
564 record(aSub,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SENDQ")
566 field(SNAM,
"queuedPVSet")
567 field(INPA,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SENDPV NPP")
570 field(INPB,
"$(P)PARS:SAMPLE:MEAS:SUBID:_SENDV NPP")
577 record(waveform,
"$(P)PARS:SAMPLE:MEAS:LABEL")
579 field(DESC,
"Measurement Label")
582 field(DTYP,
"Soft Channel")
583 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:LABEL:SEND")
585 info(autosaveFields,
"VAL")
586 info(PVCATEGORY,
"SAMPLEPAR")
588 alias(
"$(P)PARS:SAMPLE:MEAS:LABEL",
"$(P)PARS:SAMPLE:MEAS:LABEL:SP")
590 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
591 # we use this rather than PINI in above as DAE may not be running when we start this ioc
592 record(bo,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SP_UPDATE")
594 field(SCAN,
"10 second")
595 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:LABEL:SP.PROC")
598 ## Send value to ICP.
599 ## Measurement Label must match the parameter name as used within the ISISICP
600 ## NELM above and NOD below must match
601 ## NOVA below must match with output DAE waveform (see substitutions)
602 record(aSub,
"$(P)PARS:SAMPLE:MEAS:LABEL:SEND")
604 field(DESC,
"Send Measurement Label to ICP")
605 field(SNAM,
"stringConcatWithCtrlB")
607 field(INPA,
"$(P)PARS:SAMPLE:MEAS:LABEL:SP.DESC NPP NMS")
609 field(INPB,
"$(P)PARS:SAMPLE:MEAS:LABEL:SP.FTVL NPP NMS")
611 field(INPC,
"$(P)PARS:SAMPLE:MEAS:LABEL:SP.EGU NPP NMS")
614 field(INPD,
"$(P)PARS:SAMPLE:MEAS:LABEL:SP.VAL NPP NMS")
617 field(OUTA,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SENDV")
618 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SENDPV")
621 record(waveform,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SENDV")
627 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
628 record(waveform,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SENDPV")
630 field(INP,
"$(P)DAE:SAMPLEPAR:SP.NAME$")
633 field(FLNK,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SENDQ")
636 record(aSub,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SENDQ")
638 field(SNAM,
"queuedPVSet")
639 field(INPA,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SENDPV NPP")
642 field(INPB,
"$(P)PARS:SAMPLE:MEAS:LABEL:_SENDV NPP")
649 record(waveform,
"$(P)PARS:BL:BEAMSTOP:POS")
651 field(DESC,
"Beamstop Position")
654 field(DTYP,
"Soft Channel")
655 field(FLNK,
"$(P)PARS:BL:BEAMSTOP:POS:SEND")
657 info(autosaveFields,
"VAL")
658 info(PVCATEGORY,
"BEAMLINEPAR")
660 alias(
"$(P)PARS:BL:BEAMSTOP:POS",
"$(P)PARS:BL:BEAMSTOP:POS:SP")
662 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
663 # we use this rather than PINI in above as DAE may not be running when we start this ioc
664 record(bo,
"$(P)PARS:BL:BEAMSTOP:POS:_SP_UPDATE")
666 field(SCAN,
"10 second")
667 field(FLNK,
"$(P)PARS:BL:BEAMSTOP:POS:SP.PROC")
670 ## Send value to ICP.
671 ## Beamstop Position must match the parameter name as used within the ISISICP
672 ## NELM above and NOD below must match
673 ## NOVA below must match with output DAE waveform (see substitutions)
674 record(aSub,
"$(P)PARS:BL:BEAMSTOP:POS:SEND")
676 field(DESC,
"Send Beamstop Position to ICP")
677 field(SNAM,
"stringConcatWithCtrlB")
679 field(INPA,
"$(P)PARS:BL:BEAMSTOP:POS:SP.DESC NPP NMS")
681 field(INPB,
"$(P)PARS:BL:BEAMSTOP:POS:SP.FTVL NPP NMS")
683 field(INPC,
"$(P)PARS:BL:BEAMSTOP:POS:SP.EGU NPP NMS")
686 field(INPD,
"$(P)PARS:BL:BEAMSTOP:POS:SP.VAL NPP NMS")
689 field(OUTA,
"$(P)PARS:BL:BEAMSTOP:POS:_SENDV")
690 field(FLNK,
"$(P)PARS:BL:BEAMSTOP:POS:_SENDPV")
693 record(waveform,
"$(P)PARS:BL:BEAMSTOP:POS:_SENDV")
699 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
700 record(waveform,
"$(P)PARS:BL:BEAMSTOP:POS:_SENDPV")
702 field(INP,
"$(P)DAE:BEAMLINEPAR:SP.NAME$")
705 field(FLNK,
"$(P)PARS:BL:BEAMSTOP:POS:_SENDQ")
708 record(aSub,
"$(P)PARS:BL:BEAMSTOP:POS:_SENDQ")
710 field(SNAM,
"queuedPVSet")
711 field(INPA,
"$(P)PARS:BL:BEAMSTOP:POS:_SENDPV NPP")
714 field(INPB,
"$(P)PARS:BL:BEAMSTOP:POS:_SENDV NPP")
721 record(waveform,
"$(P)PARS:BL:JOURNAL:BLOCKS")
723 field(DESC,
"Journal Blocks")
726 field(DTYP,
"Soft Channel")
727 field(FLNK,
"$(P)PARS:BL:JOURNAL:BLOCKS:SEND")
729 info(autosaveFields,
"VAL")
730 info(PVCATEGORY,
"BEAMLINEPAR")
732 alias(
"$(P)PARS:BL:JOURNAL:BLOCKS",
"$(P)PARS:BL:JOURNAL:BLOCKS:SP")
734 # force periodic update of values in case we get out of sync with DAE e.g. program restarts
735 # we use this rather than PINI in above as DAE may not be running when we start this ioc
736 record(bo,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SP_UPDATE")
738 field(SCAN,
"10 second")
739 field(FLNK,
"$(P)PARS:BL:JOURNAL:BLOCKS:SP.PROC")
742 ## Send value to ICP.
743 ## Journal Blocks must match the parameter name as used within the ISISICP
744 ## NELM above and NOD below must match
745 ## NOVA below must match with output DAE waveform (see substitutions)
746 record(aSub,
"$(P)PARS:BL:JOURNAL:BLOCKS:SEND")
748 field(DESC,
"Send Journal Blocks to ICP")
749 field(SNAM,
"stringConcatWithCtrlB")
751 field(INPA,
"$(P)PARS:BL:JOURNAL:BLOCKS:SP.DESC NPP NMS")
753 field(INPB,
"$(P)PARS:BL:JOURNAL:BLOCKS:SP.FTVL NPP NMS")
755 field(INPC,
"$(P)PARS:BL:JOURNAL:BLOCKS:SP.EGU NPP NMS")
758 field(INPD,
"$(P)PARS:BL:JOURNAL:BLOCKS:SP.VAL NPP NMS")
761 field(OUTA,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SENDV")
762 field(FLNK,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SENDPV")
765 record(waveform,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SENDV")
771 # add $ to PV name to trigger long string support, which gives array of char needed for waveform
772 record(waveform,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SENDPV")
774 field(INP,
"$(P)DAE:BEAMLINEPAR:SP.NAME$")
777 field(FLNK,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SENDQ")
780 record(aSub,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SENDQ")
782 field(SNAM,
"queuedPVSet")
783 field(INPA,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SENDPV NPP")
786 field(INPB,
"$(P)PARS:BL:JOURNAL:BLOCKS:_SENDV NPP")
alias("$(P)ED:RBNUMBER","$(P)ED:RBNUMBER:SP:RBV")
record(stringin,"$(P)ED:RBNUMBER")
RB number.