diff --git a/ADApp/Db/roper.template b/ADApp/Db/roper.template new file mode 100644 index 0000000..70ec19e --- /dev/null +++ b/ADApp/Db/roper.template @@ -0,0 +1,183 @@ +# Database for the records specific to the Roper driver +# Mark Rivers +# December 2, 2008 + +# These are the records from ADBase.template that we modify some fields for + +# We replace the choice fields for ImageMode from ADBase.template +record(mbbo, "$(P)$(R)ImageMode") +{ + field(ZRST, "Normal") + field(ZRVL, "0") + field(ONST, "Continuous") + field(ONVL, "1") + field(TWST, "Focus") + field(TWVL, "2") +} + +record(mbbi, "$(P)$(R)ImageMode_RBV") +{ + field(ZRST, "Normal") + field(ZRVL, "0") + field(ONST, "Continuous") + field(ONVL, "1") + field(TWST, "Focus") + field(TWVL, "2") +} + +# We replace the file format choices from ADBase.template +record(mbbo, "$(P)$(R)FileFormat") +{ + field(ZRST, "SPE") + field(ZRVL, "1") + field(ONST, "TIFF") + field(ONVL, "2") + field(TWST, "8-bit TIFF") + field(TWVL, "3") +} + +record(mbbi, "$(P)$(R)FileFormat_RBV") +{ + field(ZRST, "SPE") + field(ZRVL, "1") + field(ONST, "TIFF") + field(ONVL, "2") + field(TWST, "8-bit TIFF") + field(TWVL, "3") +} + +# We replace the trigger mode choices from ADBase.template +# Note 1=Free run and 3=External Sync is documented. 27 and 28 may be camera-specific +record(mbbo, "$(P)$(R)TriggerMode") +{ + field(ZRST, "Free run") + field(ZRVL, "1") + field(ONST, "Ext. sync") + field(ONVL, "3") + field(TWST, "Bulb trig.") + field(TWVL, "28") + field(THST, "Single trig.") + field(THVL, "27") +} + +record(mbbi, "$(P)$(R)TriggerMode_RBV") +{ + field(ZRST, "Free run") + field(ZRVL, "1") + field(ONST, "Ext. sync") + field(ONVL, "3") + field(TWST, "Bulb trig.") + field(TWVL, "28") + field(THST, "Single trig.") + field(THVL, "27") +} + +# We change the precision on the Gain record to 0, because it is an integer on the Roper +record(ao, "$(P)$(R)Gain") +{ + field(PREC, "0") +} + +record(ai, "$(P)$(R)Gain_RBV") +{ + field(PREC, "0") +} + + +# These are new records for the Roper detector + +record(longout, "$(P)$(R)NumAcquisitions") +{ + field(PINI, "1") + field(DTYP, "asynInt32") + field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))ROPER_NACQUISITIONS") +} + +record(longin, "$(P)$(R)NumAcquisitions_RBV") +{ + field(PINI, "1") + field(DTYP, "asynInt32") + field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))ROPER_NACQUISITIONS") + field(SCAN, "I/O Intr") +} + +record(longin, "$(P)$(R)NumAcquisitionsCounter_RBV") +{ + field(PINI, "1") + field(DTYP, "asynInt32") + field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))ROPER_NACQUISITIONS_COUNTER") + field(SCAN, "I/O Intr") +} + +record(mbbo, "$(P)$(R)RoperShutterMode") +{ + field(PINI, "1") + field(DTYP, "asynInt32") + field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))ROPER_SHUTTER_MODE") + field(ZRST, "Normal") + field(ZRVL, "1") + field(ONST, "Diabled closed") + field(ONVL, "2") + field(TWST, "Disabled opened") + field(TWVL, "3") +} + +record(mbbi, "$(P)$(R)RoperShutterMode_RBV") +{ + field(PINI, "1") + field(DTYP, "asynInt32") + field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))ROPER_SHUTTER_MODE") + field(ZRST, "Normal") + field(ZRVL, "1") + field(ONST, "Diabled open") + field(ONVL, "2") + field(TWST, "Disabled closed") + field(TWVL, "3") + field(SCAN, "I/O Intr") +} + +record(waveform, "$(P)$(R)Comment1") +{ + field(PINI, "1") + field(DTYP, "asynOctetWrite") + field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMMENT1") + field(FTVL, "UCHAR") + field(NELM, "80") +} + +record(waveform, "$(P)$(R)Comment2") +{ + field(PINI, "1") + field(DTYP, "asynOctetWrite") + field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMMENT2") + field(FTVL, "UCHAR") + field(NELM, "80") +} + +record(waveform, "$(P)$(R)Comment3") +{ + field(PINI, "1") + field(DTYP, "asynOctetWrite") + field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMMENT3") + field(FTVL, "UCHAR") + field(NELM, "80") +} + +record(waveform, "$(P)$(R)Comment4") +{ + field(PINI, "1") + field(DTYP, "asynOctetWrite") + field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMMENT4") + field(FTVL, "UCHAR") + field(NELM, "80") +} + +record(waveform, "$(P)$(R)Comment5") +{ + field(PINI, "1") + field(DTYP, "asynOctetWrite") + field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMMENT5") + field(FTVL, "UCHAR") + field(NELM, "80") +} + diff --git a/ADApp/Db/roper_settings.req b/ADApp/Db/roper_settings.req new file mode 100644 index 0000000..713647a --- /dev/null +++ b/ADApp/Db/roper_settings.req @@ -0,0 +1,7 @@ +$(P)$(R)NumAcquisitions +$(P)$(R)RoperShutterMode +$(P)$(R)Comment1 +$(P)$(R)Comment2 +$(P)$(R)Comment3 +$(P)$(R)Comment4 +$(P)$(R)Comment5 diff --git a/ADApp/op/adl/Roper.adl b/ADApp/op/adl/Roper.adl new file mode 100644 index 0000000..78bcf78 --- /dev/null +++ b/ADApp/op/adl/Roper.adl @@ -0,0 +1,2258 @@ + +file { + name="/home/epics/devel/areaDetector/1-4beta/ADApp/op/adl/Roper.adl" + version=030102 +} +display { + object { + x=497 + y=98 + width=700 + height=730 + } + clr=14 + bclr=4 + cmap="" + gridSpacing=5 + gridOn=0 + snapToGrid=0 +} +"color map" { + ncolors=65 + colors { + ffffff, + ececec, + dadada, + c8c8c8, + bbbbbb, + aeaeae, + 9e9e9e, + 919191, + 858585, + 787878, + 696969, + 5a5a5a, + 464646, + 2d2d2d, + 000000, + 00d800, + 1ebb00, + 339900, + 2d7f00, + 216c00, + fd0000, + de1309, + be190b, + a01207, + 820400, + 5893ff, + 597ee1, + 4b6ec7, + 3a5eab, + 27548d, + fbf34a, + f9da3c, + eeb62b, + e19015, + cd6100, + ffb0ff, + d67fe2, + ae4ebc, + 8b1a96, + 610a75, + a4aaff, + 8793e2, + 6a73c1, + 4d52a4, + 343386, + c7bb6d, + b79d5c, + a47e3c, + 7d5627, + 58340f, + 99ffff, + 73dfff, + 4ea5f9, + 2a63e4, + 0a00b8, + ebf1b5, + d4db9d, + bbc187, + a6a462, + 8b8239, + 73ff6b, + 52da3b, + 3cb420, + 289315, + 1a7309, + } +} +composite { + object { + x=100 + y=4 + width=500 + height=26 + } + "composite name"="" + children { + rectangle { + object { + x=100 + y=4 + width=500 + height=25 + } + "basic attribute" { + clr=2 + } + } + text { + object { + x=158 + y=5 + width=384 + height=25 + } + "basic attribute" { + clr=54 + } + textix="Area Detector Control - $(P)$(R)" + align="horiz. centered" + } + } +} +composite { + object { + x=472 + y=232 + width=105 + height=21 + } + "composite name"="" + children { + rectangle { + object { + x=472 + y=232 + width=105 + height=21 + } + "basic attribute" { + clr=2 + } + } + } +} +rectangle { + object { + x=345 + y=230 + width=350 + height=450 + } + "basic attribute" { + clr=14 + fill="outline" + } +} +text { + object { + x=452 + y=233 + width=157 + height=20 + } + "basic attribute" { + clr=54 + } + textix="Collect" + align="horiz. centered" +} +text { + object { + x=391 + y=254 + width=130 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Exposure Time" + align="horiz. right" +} +"text entry" { + object { + x=530 + y=254 + width=59 + height=20 + } + control { + chan="$(P)$(R)AcquireTime" + clr=14 + bclr=51 + } + limits { + } +} +"text update" { + object { + x=596 + y=255 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)AcquireTime_RBV" + clr=54 + bclr=4 + } + limits { + } +} +text { + object { + x=381 + y=279 + width=140 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Acquire Period" + align="horiz. right" +} +"text entry" { + object { + x=530 + y=279 + width=59 + height=20 + } + control { + chan="$(P)$(R)AcquirePeriod" + clr=14 + bclr=51 + } + limits { + } +} +"text update" { + object { + x=596 + y=280 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)AcquirePeriod_RBV" + clr=54 + bclr=4 + } + limits { + } +} +text { + object { + x=368 + y=575 + width=140 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Time Remaining" + align="horiz. right" +} +"text update" { + object { + x=515 + y=576 + width=67 + height=18 + } + monitor { + chan="$(P)$(R)TimeRemaining_RBV" + clr=54 + bclr=4 + } + limits { + } +} +composite { + object { + x=438 + y=505 + width=203 + height=40 + } + "composite name"="" + children { + text { + object { + x=438 + y=525 + width=70 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Acquire" + align="horiz. right" + } + composite { + object { + x=515 + y=505 + width=126 + height=40 + } + "composite name"="" + children { + text { + object { + x=558 + y=505 + width=40 + height=20 + } + "basic attribute" { + clr=63 + } + "dynamic attribute" { + vis="if zero" + calc="A" + chan="$(P)$(R)Acquire" + } + textix="Done" + align="horiz. centered" + } + text { + object { + x=529 + y=505 + width=100 + height=20 + } + "basic attribute" { + clr=30 + } + "dynamic attribute" { + vis="if not zero" + calc="A" + chan="$(P)$(R)Acquire" + } + textix="Collecting" + align="horiz. centered" + } + "message button" { + object { + x=515 + y=525 + width=59 + height=20 + } + control { + chan="$(P)$(R)Acquire" + clr=14 + bclr=51 + } + label="Start" + press_msg="1" + } + "message button" { + object { + x=582 + y=525 + width=59 + height=20 + } + control { + chan="$(P)$(R)Acquire" + clr=14 + bclr=51 + } + label="Stop" + press_msg="0" + } + } + } + } +} +text { + object { + x=368 + y=550 + width=140 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Detector State" + align="horiz. right" +} +"text update" { + object { + x=515 + y=550 + width=158 + height=18 + } + monitor { + chan="$(P)$(R)DetectorState_RBV" + clr=54 + bclr=2 + } + clrmod="alarm" + limits { + } +} +composite { + object { + x=515 + y=600 + width=166 + height=20 + } + "composite name"="" + children { + "text entry" { + object { + x=515 + y=600 + width=60 + height=20 + } + control { + chan="$(P)$(R)ImageCounter" + clr=14 + bclr=51 + } + limits { + } + } + "text update" { + object { + x=581 + y=601 + width=100 + height=18 + } + monitor { + chan="$(P)$(R)ImageCounter_RBV" + clr=54 + bclr=4 + } + limits { + } + } + } +} +text { + object { + x=378 + y=600 + width=130 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Image Counter" + align="horiz. right" +} +text { + object { + x=408 + y=625 + width=100 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Image Rate" + align="horiz. right" +} +"text update" { + object { + x=515 + y=626 + width=100 + height=18 + } + monitor { + chan="$(P)$(R)ImageRate_RBV" + clr=54 + bclr=4 + } + limits { + } +} +text { + object { + x=358 + y=650 + width=150 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Array Callbacks" + align="horiz. right" +} +menu { + object { + x=515 + y=650 + width=90 + height=20 + } + control { + chan="$(P)$(R)ArrayCallbacks" + clr=14 + bclr=51 + } +} +"text update" { + object { + x=610 + y=652 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)ArrayCallbacks_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + format="string" + limits { + } +} +menu { + object { + x=479 + y=454 + width=120 + height=20 + } + control { + chan="$(P)$(R)ImageMode" + clr=14 + bclr=51 + } +} +text { + object { + x=370 + y=454 + width=100 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Image Mode" + align="horiz. right" +} +"text update" { + object { + x=606 + y=456 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)ImageMode_RBV" + clr=54 + bclr=4 + } + format="string" + limits { + } +} +text { + object { + x=349 + y=479 + width=120 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Trigger Mode" + align="horiz. right" +} +menu { + object { + x=478 + y=479 + width=120 + height=20 + } + control { + chan="$(P)$(R)TriggerMode" + clr=14 + bclr=51 + } +} +"text update" { + object { + x=605 + y=481 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)TriggerMode_RBV" + clr=54 + bclr=4 + } + format="string" + limits { + } +} +text { + object { + x=393 + y=404 + width=128 + height=20 + } + "basic attribute" { + clr=14 + } + textix="# Acquisitions" + align="horiz. right" +} +"text entry" { + object { + x=530 + y=404 + width=59 + height=20 + } + control { + chan="$(P)$(R)NumAcquisitions" + clr=14 + bclr=51 + } + limits { + } +} +"text update" { + object { + x=596 + y=405 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)NumAcquisitions_RBV" + clr=54 + bclr=4 + } + limits { + } +} +"text update" { + object { + x=596 + y=430 + width=67 + height=18 + } + monitor { + chan="$(P)$(R)NumAcquisitionsCounter_RBV" + clr=54 + bclr=4 + } + limits { + } +} +text { + object { + x=429 + y=429 + width=160 + height=20 + } + "basic attribute" { + clr=14 + } + textix="# Acquisitions Complete" + align="horiz. right" +} +composite { + object { + x=345 + y=35 + width=350 + height=190 + } + "composite name"="" + children { + rectangle { + object { + x=458 + y=37 + width=107 + height=21 + } + "basic attribute" { + clr=2 + } + } + rectangle { + object { + x=345 + y=35 + width=350 + height=190 + } + "basic attribute" { + clr=14 + fill="outline" + } + } + text { + object { + x=431 + y=38 + width=159 + height=20 + } + "basic attribute" { + clr=54 + } + textix="Shutter" + align="horiz. centered" + } + composite { + object { + x=351 + y=118 + width=326 + height=98 + } + "composite name"="" + children { + text { + object { + x=411 + y=143 + width=100 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Open/Close" + align="horiz. right" + } + "message button" { + object { + x=518 + y=143 + width=60 + height=20 + } + control { + chan="$(P)$(R)ShutterControl" + clr=14 + bclr=51 + } + label="Open" + press_msg="1" + } + "message button" { + object { + x=585 + y=143 + width=60 + height=20 + } + control { + chan="$(P)$(R)ShutterControl" + clr=14 + bclr=51 + } + label="Close" + press_msg="0" + } + text { + object { + x=351 + y=118 + width=120 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Status: Det." + align="horiz. right" + } + "text update" { + object { + x=477 + y=119 + width=60 + height=18 + } + monitor { + chan="$(P)$(R)ShutterStatus_RBV" + clr=54 + bclr=2 + } + clrmod="alarm" + align="horiz. centered" + limits { + } + } + "text entry" { + object { + x=477 + y=168 + width=60 + height=20 + } + control { + chan="$(P)$(R)ShutterOpenDelay" + clr=14 + bclr=51 + } + limits { + } + } + text { + object { + x=360 + y=168 + width=110 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Delay: Open" + align="horiz. right" + } + text { + object { + x=560 + y=168 + width=50 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Close" + align="horiz. right" + } + "text entry" { + object { + x=617 + y=168 + width=60 + height=20 + } + control { + chan="$(P)$(R)ShutterCloseDelay" + clr=14 + bclr=51 + } + limits { + } + } + "related display" { + object { + x=550 + y=196 + width=70 + height=20 + } + display[0] { + name="ADEpicsShutter.adl" + args="P=$(P),R=$(R)" + } + clr=14 + bclr=51 + } + text { + object { + x=351 + y=196 + width=190 + height=20 + } + "basic attribute" { + clr=14 + } + textix="EPICS shutter setup" + align="horiz. right" + } + text { + object { + x=560 + y=118 + width=50 + height=20 + } + "basic attribute" { + clr=14 + } + textix="EPICS" + align="horiz. right" + } + "text update" { + object { + x=617 + y=119 + width=60 + height=18 + } + monitor { + chan="$(P)$(R)ShutterStatusEPICS_RBV" + clr=54 + bclr=2 + } + clrmod="alarm" + align="horiz. centered" + limits { + } + } + } + } + text { + object { + x=394 + y=69 + width=150 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Shutter Type" + align="horiz. right" + } + menu { + object { + x=550 + y=69 + width=120 + height=20 + } + control { + chan="$(P)$(R)ShutterMode" + clr=14 + bclr=51 + } + } + text { + object { + x=394 + y=93 + width=150 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Roper Shutter Mode" + align="horiz. right" + } + menu { + object { + x=550 + y=93 + width=120 + height=20 + } + control { + chan="$(P)$(R)RoperShutterMode" + clr=14 + bclr=51 + } + } + } +} +composite { + object { + x=5 + y=290 + width=335 + height=365 + } + "composite name"="" + children { + rectangle { + object { + x=119 + y=292 + width=107 + height=21 + } + "basic attribute" { + clr=2 + } + } + rectangle { + object { + x=5 + y=290 + width=335 + height=365 + } + "basic attribute" { + clr=14 + fill="outline" + } + } + text { + object { + x=93 + y=293 + width=159 + height=20 + } + "basic attribute" { + clr=54 + } + textix="Readout" + align="horiz. centered" + } + text { + object { + x=173 + y=320 + width=10 + height=20 + } + "basic attribute" { + clr=14 + } + textix="X" + align="horiz. right" + } + text { + object { + x=266 + y=320 + width=10 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Y" + align="horiz. right" + } + composite { + object { + x=34 + y=575 + width=268 + height=20 + } + "composite name"="" + children { + text { + object { + x=34 + y=575 + width=180 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Image Size (bytes)" + align="horiz. right" + } + "text update" { + object { + x=241 + y=576 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)ImageSize_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + } + } + composite { + object { + x=97 + y=600 + width=205 + height=20 + } + "composite name"="" + children { + "text update" { + object { + x=241 + y=601 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)Gain_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + "text entry" { + object { + x=148 + y=600 + width=60 + height=20 + } + control { + chan="$(P)$(R)Gain" + clr=14 + bclr=51 + } + limits { + } + } + text { + object { + x=97 + y=600 + width=40 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Gain" + align="horiz. right" + } + } + } + composite { + object { + x=47 + y=625 + width=273 + height=20 + } + "composite name"="" + children { + text { + object { + x=47 + y=625 + width=90 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Data type" + align="horiz. right" + } + menu { + object { + x=143 + y=625 + width=80 + height=20 + } + control { + chan="$(P)$(R)DataType" + clr=14 + bclr=51 + } + } + "text update" { + object { + x=241 + y=626 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)DataType_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + format="string" + limits { + } + } + } + } + composite { + object { + x=37 + y=550 + width=265 + height=20 + } + "composite name"="" + children { + text { + object { + x=37 + y=550 + width=100 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Image Size" + align="horiz. right" + } + "text update" { + object { + x=148 + y=551 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)ImageSizeX_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + "text update" { + object { + x=241 + y=551 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)ImageSizeY_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + } + } + composite { + object { + x=67 + y=505 + width=235 + height=40 + } + "composite name"="" + children { + "text update" { + object { + x=148 + y=505 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)ReverseX_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + "text update" { + object { + x=241 + y=505 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)ReverseY_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + text { + object { + x=67 + y=525 + width=70 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Reverse" + align="horiz. right" + } + menu { + object { + x=148 + y=525 + width=60 + height=18 + } + control { + chan="$(P)$(R)ReverseX" + clr=14 + bclr=51 + } + } + menu { + object { + x=241 + y=525 + width=60 + height=18 + } + control { + chan="$(P)$(R)ReverseY" + clr=14 + bclr=51 + } + } + } + } + text { + object { + x=97 + y=480 + width=40 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Region Size" + align="horiz. right" + } + composite { + object { + x=148 + y=460 + width=154 + height=40 + } + "composite name"="" + children { + "text entry" { + object { + x=148 + y=480 + width=60 + height=20 + } + control { + chan="$(P)$(R)SizeX" + clr=14 + bclr=51 + } + limits { + } + } + "text entry" { + object { + x=241 + y=480 + width=60 + height=20 + } + control { + chan="$(P)$(R)SizeY" + clr=14 + bclr=51 + } + limits { + } + } + "text update" { + object { + x=148 + y=460 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)SizeX_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + "text update" { + object { + x=241 + y=460 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)SizeY_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + } + } + composite { + object { + x=148 + y=415 + width=154 + height=40 + } + "composite name"="" + children { + "text update" { + object { + x=148 + y=415 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)MinX_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + "text entry" { + object { + x=148 + y=435 + width=60 + height=20 + } + control { + chan="$(P)$(R)MinX" + clr=14 + bclr=51 + } + limits { + } + } + "text entry" { + object { + x=241 + y=435 + width=60 + height=20 + } + control { + chan="$(P)$(R)MinY" + clr=14 + bclr=51 + } + limits { + } + } + "text update" { + object { + x=241 + y=415 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)MinY_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + } + } + text { + object { + x=87 + y=435 + width=50 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Region Start" + align="horiz. right" + } + composite { + object { + x=67 + y=370 + width=235 + height=40 + } + "composite name"="" + children { + "text entry" { + object { + x=148 + y=390 + width=60 + height=20 + } + control { + chan="$(P)$(R)BinX" + clr=14 + bclr=51 + } + limits { + } + } + "text entry" { + object { + x=241 + y=390 + width=60 + height=20 + } + control { + chan="$(P)$(R)BinY" + clr=14 + bclr=51 + } + limits { + } + } + "text update" { + object { + x=148 + y=370 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)BinX_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + "text update" { + object { + x=241 + y=370 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)BinY_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + text { + object { + x=67 + y=390 + width=70 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Binning" + align="horiz. right" + } + } + } + composite { + object { + x=27 + y=345 + width=275 + height=20 + } + "composite name"="" + children { + text { + object { + x=27 + y=345 + width=110 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Sensor Size" + align="horiz. right" + } + "text update" { + object { + x=148 + y=346 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)MaxSizeX_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + "text update" { + object { + x=241 + y=346 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)MaxSizeY_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + } + } + } +} +composite { + object { + x=5 + y=660 + width=335 + height=60 + } + "composite name"="" + children { + composite { + object { + x=132 + y=662 + width=107 + height=21 + } + "composite name"="" + children { + composite { + object { + x=132 + y=662 + width=107 + height=21 + } + "composite name"="" + children { + rectangle { + object { + x=132 + y=662 + width=107 + height=21 + } + "basic attribute" { + clr=2 + } + } + } + } + text { + object { + x=165 + y=662 + width=40 + height=20 + } + "basic attribute" { + clr=54 + } + textix="File" + align="horiz. centered" + } + } + } + rectangle { + object { + x=5 + y=660 + width=335 + height=60 + } + "basic attribute" { + clr=14 + fill="outline" + } + } + text { + object { + x=18 + y=689 + width=150 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Driver File I/O" + align="horiz. right" + } + "related display" { + object { + x=175 + y=689 + width=70 + height=20 + } + display[0] { + name="NDFile.adl" + args="P=$(P),R=$(R)" + } + clr=14 + bclr=51 + } + } +} +composite { + object { + x=5 + y=35 + width=335 + height=250 + } + "composite name"="" + children { + rectangle { + object { + x=119 + y=37 + width=107 + height=21 + } + "basic attribute" { + clr=2 + } + } + rectangle { + object { + x=5 + y=35 + width=335 + height=250 + } + "basic attribute" { + clr=14 + fill="outline" + } + } + text { + object { + x=93 + y=38 + width=159 + height=20 + } + "basic attribute" { + clr=54 + } + textix="Setup" + align="horiz. centered" + } + composite { + object { + x=63 + y=94 + width=268 + height=20 + } + "composite name"="" + children { + text { + object { + x=171 + y=95 + width=160 + height=18 + } + "basic attribute" { + clr=54 + } + textix="$(P)$(R)" + } + text { + object { + x=63 + y=94 + width=100 + height=20 + } + "basic attribute" { + clr=14 + } + textix="EPICS name" + align="horiz. right" + } + } + } + composite { + object { + x=43 + y=119 + width=288 + height=20 + } + "composite name"="" + children { + text { + object { + x=43 + y=119 + width=120 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Manufacturer" + align="horiz. right" + } + "text update" { + object { + x=171 + y=120 + width=160 + height=18 + } + monitor { + chan="$(P)$(R)Manufacturer_RBV" + clr=54 + bclr=4 + } + limits { + } + } + } + } + composite { + object { + x=73 + y=258 + width=169 + height=20 + } + "composite name"="" + children { + text { + object { + x=73 + y=258 + width=90 + height=20 + } + "basic attribute" { + clr=14 + } + textix=" More" + align="horiz. right" + } + "related display" { + object { + x=172 + y=258 + width=70 + height=20 + } + display[0] { + label="asynRecord" + name="asynRecord.adl" + args="P=$(P),R=$(R)AsynIO" + } + display[1] { + label="Save restore status" + name="save_restoreStatus_more.adl" + args="P=$(P)" + } + clr=14 + bclr=51 + } + } + } + text { + object { + x=113 + y=144 + width=50 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Model" + align="horiz. right" + } + "text update" { + object { + x=171 + y=145 + width=160 + height=18 + } + monitor { + chan="$(P)$(R)Model_RBV" + clr=54 + bclr=4 + } + limits { + } + } + text { + object { + x=63 + y=194 + width=100 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Connection" + align="horiz. right" + } + "message button" { + object { + x=171 + y=194 + width=80 + height=20 + } + control { + chan="$(P)$(R)AsynIO.CNCT" + clr=14 + bclr=51 + } + label="Connect" + press_msg="1" + } + "message button" { + object { + x=256 + y=194 + width=80 + height=20 + } + control { + chan="$(P)$(R)AsynIO.CNCT" + clr=14 + bclr=51 + } + label="Disconnect" + press_msg="0" + } + text { + object { + x=202 + y=167 + width=90 + height=20 + } + "basic attribute" { + clr=63 + } + "dynamic attribute" { + vis="if not zero" + calc="0" + chan="$(P)$(R)AsynIO.CNCT" + } + textix="Connected" + align="horiz. centered" + } + text { + object { + x=187 + y=167 + width=120 + height=20 + } + "basic attribute" { + clr=20 + } + "dynamic attribute" { + vis="if zero" + chan="$(P)$(R)AsynIO.CNCT" + } + textix="Disconnected" + align="horiz. centered" + } + text { + object { + x=63 + y=69 + width=100 + height=20 + } + "basic attribute" { + clr=14 + } + textix="asyn port" + align="horiz. right" + } + "text update" { + object { + x=171 + y=70 + width=160 + height=18 + } + monitor { + chan="$(P)$(R)PortName_RBV" + clr=54 + bclr=4 + } + limits { + } + } + "text update" { + object { + x=242 + y=228 + width=61 + height=18 + } + monitor { + chan="$(P)$(R)Temperature_RBV" + clr=54 + bclr=4 + } + align="horiz. centered" + limits { + } + } + "text entry" { + object { + x=171 + y=227 + width=60 + height=20 + } + control { + chan="$(P)$(R)Temperature" + clr=14 + bclr=51 + } + limits { + } + } + text { + object { + x=53 + y=227 + width=110 + height=20 + } + "basic attribute" { + clr=14 + } + textix="Temperature" + align="horiz. right" + } + } +} +text { + object { + x=441 + y=354 + width=80 + height=20 + } + "basic attribute" { + clr=14 + } + textix="# Images/Acquis." + align="horiz. right" +} +"text entry" { + object { + x=530 + y=354 + width=59 + height=20 + } + control { + chan="$(P)$(R)NumImages" + clr=14 + bclr=51 + } + limits { + } +} +"text update" { + object { + x=596 + y=355 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)NumImages_RBV" + clr=54 + bclr=4 + } + limits { + } +} +"text update" { + object { + x=596 + y=380 + width=67 + height=18 + } + monitor { + chan="$(P)$(R)NumImagesCounter_RBV" + clr=54 + bclr=4 + } + limits { + } +} +text { + object { + x=429 + y=379 + width=160 + height=20 + } + "basic attribute" { + clr=14 + } + textix="# Images Complete" + align="horiz. right" +} +composite { + object { + x=393 + y=304 + width=282 + height=45 + } + "composite name"="" + children { + text { + object { + x=393 + y=304 + width=128 + height=20 + } + "basic attribute" { + clr=14 + } + textix="# Exposures/Image" + align="horiz. right" + } + "text entry" { + object { + x=530 + y=304 + width=59 + height=20 + } + control { + chan="$(P)$(R)NumExposures" + clr=14 + bclr=51 + } + limits { + } + } + "text update" { + object { + x=596 + y=305 + width=79 + height=18 + } + monitor { + chan="$(P)$(R)NumExposures_RBV" + clr=54 + bclr=4 + } + limits { + } + } + "text update" { + object { + x=596 + y=330 + width=67 + height=18 + } + monitor { + chan="$(P)$(R)NumExposuresCounter_RBV" + clr=54 + bclr=4 + } + limits { + } + } + text { + object { + x=429 + y=329 + width=160 + height=20 + } + "basic attribute" { + clr=14 + } + textix="# Exposures Complete" + align="horiz. right" + } + } +}