From 47183c09d7d8059ea16b3bb6bfa55b9b99b23d91 Mon Sep 17 00:00:00 2001 From: Mark Rivers Date: Sat, 25 Jan 2020 11:37:24 -0600 Subject: [PATCH] Add bob conversion --- andorApp/op/bob/autoconvert/Andor.bob | 2607 ++++++++++++++++++++++ andorApp/op/bob/autoconvert/Shamrock.bob | 1292 +++++++++++ 2 files changed, 3899 insertions(+) create mode 100644 andorApp/op/bob/autoconvert/Andor.bob create mode 100644 andorApp/op/bob/autoconvert/Shamrock.bob diff --git a/andorApp/op/bob/autoconvert/Andor.bob b/andorApp/op/bob/autoconvert/Andor.bob new file mode 100644 index 0000000..2bf75dc --- /dev/null +++ b/andorApp/op/bob/autoconvert/Andor.bob @@ -0,0 +1,2607 @@ + + + Andor + 443 + 51 + 1070 + 850 + + + + + false + 5 + + rectangle #6 + 4 + 1070 + 25 + + + + + + + + + + + text #9 + Andor Detector Control - $(P)$(R) + 5 + 1070 + 25 + + + + + + + + + 1 + + + composite #12 + ADSetup.bob + 5 + 35 + 350 + 340 + + + composite #14 + ADPlugins.bob + 715 + 35 + 350 + 80 + + + rectangle #16 + 473 + 37 + 107 + 21 + + + + + + + + + + + rectangle #19 + 360 + 35 + 350 + 215 + 1 + + + + + + + + + true + + + text #22 + Shutter + 490 + 38 + 70 + + + + + + + + + 1 + + + text #25 + Open/Close + 426 + 170 + + + + + 2 + + + message button #28 + + + $(P)$(R)ShutterControl + 1 + Write + + + $(P)$(R)ShutterControl + Open + 533 + 170 + 60 + 20 + + + + + + + message button #31 + + + $(P)$(R)ShutterControl + 0 + Write + + + $(P)$(R)ShutterControl + Close + 600 + 170 + 60 + 20 + + + + + + + text #34 + Status: Det. + 366 + 145 + 120 + + + + + 2 + + + text update #37 + $(P)$(R)ShutterStatus_RBV + 492 + 146 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text entry #41 + $(P)$(R)ShutterOpenDelay + 492 + 195 + 60 + + + + + + + + + 1 + false + false + + + text #45 + Delay: Open + 375 + 195 + 110 + + + + + 2 + + + text #48 + Close + 575 + 195 + 50 + + + + + 2 + + + text entry #51 + $(P)$(R)ShutterCloseDelay + 632 + 195 + 60 + + + + + + + + + 1 + false + false + + + related display #55 + + + ADEpicsShutter.opi + tab + + + + 565 + 223 + 70 + 20 + + + + + + + text #58 + EPICS shutter setup + 366 + 223 + 190 + + + + + 2 + + + text #61 + EPICS + 575 + 145 + 50 + + + + + 2 + + + text update #64 + $(P)$(R)ShutterStatusEPICS_RBV + 632 + 146 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text #68 + Andor Shutter Mode + 379 + 95 + 180 + + + + + 2 + + + menu #71 + $(P)$(R)AndorShutterMode + 565 + 95 + 120 + 20 + + + + + false + + + text #74 + External shutter + 399 + 120 + 160 + + + + + 2 + + + menu #77 + $(P)$(R)AndorShutterExTTL + 565 + 120 + 120 + 20 + + + + + false + + + text #80 + Shutter Type + 439 + 70 + 120 + + + + + 2 + + + menu #83 + $(P)$(R)ShutterMode + 565 + 70 + 120 + 20 + + + + + false + + + rectangle #86 + 360 + 255 + 350 + 550 + 1 + + + + + + + + + true + + + rectangle #89 + 487 + 257 + 105 + 21 + + + + + + + + + + + text #92 + Collect + 510 + 258 + 70 + + + + + + + + + 1 + + + text #95 + Exposure Time + 406 + 279 + 130 + + + + + 2 + + + text entry #98 + $(P)$(R)AcquireTime + 545 + 279 + 59 + + + + + + + + + 1 + false + false + + + text update #102 + $(P)$(R)AcquireTime_RBV + 611 + 280 + 79 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #106 + # Images/Acquis. + 376 + 405 + 160 + + + + + 2 + + + text entry #109 + $(P)$(R)NumImages + 545 + 405 + 59 + + + + + + + + + 1 + false + false + + + text update #113 + $(P)$(R)NumImages_RBV + 611 + 406 + 79 + 18 + + + + + + + + + + + + + 1 + false + false + + + text update #117 + $(P)$(R)NumImagesCounter_RBV + 611 + 431 + 67 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #121 + # Images Complete + 434 + 430 + 170 + + + + + 2 + + + text #124 + # Accums/Image + 396 + 355 + 140 + + + + + 2 + + + text entry #127 + $(P)$(R)NumExposures + 545 + 355 + 59 + + + + + + + + + 1 + false + false + + + text update #131 + $(P)$(R)NumExposures_RBV + 611 + 356 + 79 + 18 + + + + + + + + + + + + + 1 + false + false + + + text update #135 + $(P)$(R)NumExposuresCounter_RBV + 611 + 381 + 67 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #139 + # Exposures Complete + 404 + 380 + 200 + + + + + 2 + + + text #142 + Trigger Mode + 364 + 480 + 120 + + + + + 2 + + + menu #145 + $(P)$(R)TriggerMode + 493 + 480 + 140 + 20 + + + + + false + + + text #148 + Accumulate Period + 366 + 304 + 170 + + + + + 2 + + + text entry #151 + $(P)$(R)AndorAccumulatePeriod + 545 + 304 + 59 + + + + + + + + + 1 + false + false + + + text update #155 + $(P)$(R)AndorAccumulatePeriod_RBV + 611 + 305 + 79 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #159 + Acquire Period + 396 + 329 + 140 + + + + + 2 + + + text entry #162 + $(P)$(R)AcquirePeriod + 545 + 329 + 59 + + + + + + + + + 1 + false + false + + + text update #166 + $(P)$(R)AcquirePeriod_RBV + 611 + 330 + 79 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #170 + Acquire + 453 + 551 + 70 + + + + + 2 + + + text #173 + Done + 573 + 531 + 40 + + + + + + + + + 1 + + + + false + + $(P)$(R)Acquire + + + + + text #177 + Collecting + 544 + 531 + + + + + + + + + 1 + + + + false + + $(P)$(R)Acquire + + + + + message button #181 + + + $(P)$(R)Acquire + 1 + Write + + + $(P)$(R)Acquire + Start + 530 + 551 + 59 + 20 + + + + + + + message button #184 + + + $(P)$(R)Acquire + 0 + Write + + + $(P)$(R)Acquire + Stop + 597 + 551 + 59 + 20 + + + + + + + text #187 + Image Mode + 385 + 455 + + + + + 2 + + + menu #190 + $(P)$(R)ImageMode + 494 + 455 + 115 + 20 + + + + + false + + + text update #193 + $(P)$(R)ImageMode_RBV + 615 + 457 + 90 + 18 + + + + + + + + + + + + + 6 + false + false + + + text #197 + Readout Mode + 365 + 505 + 120 + + + + + 2 + + + menu #200 + $(P)$(R)AndorReadOutMode + 494 + 505 + 115 + 20 + + + + + false + + + text update #203 + $(P)$(R)AndorReadOutMode_RBV + 615 + 507 + 90 + 18 + + + + + + + + + + + + + 6 + false + false + + + text update #207 + $(P)$(R)DetectorState_RBV + 530 + 651 + 158 + 18 + + + + + + + + + + + + + 6 + false + + + text #211 + Detector State + 383 + 651 + 140 + + + + + 2 + + + text update #214 + $(P)$(R)StatusMessage_RBV + 530 + 679 + 170 + 12 + + + + + + + + + + + + + 6 + false + + + text #218 + Detector Status + 373 + 676 + 150 + + + + + 2 + + + text update #221 + $(P)$(R)AndorMessage_RBV + 530 + 704 + 170 + 12 + + + + + + + + + + + + + 6 + false + + + text #225 + Andor Message + 393 + 701 + 130 + + + + + 2 + + + text entry #228 + $(P)$(R)ArrayCounter + 530 + 726 + 60 + + + + + + + + + 1 + false + false + + + text update #232 + $(P)$(R)ArrayCounter_RBV + 596 + 727 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #236 + Image Counter + 393 + 726 + 130 + + + + + 2 + + + text #239 + Image Rate + 423 + 751 + + + + + 2 + + + text update #242 + $(P)$(R)ArrayRate_RBV + 530 + 752 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #246 + Array Callbacks + 373 + 776 + 150 + + + + + 2 + + + menu #249 + $(P)$(R)ArrayCallbacks + 530 + 776 + 90 + 20 + + + + + false + + + text update #252 + $(P)$(R)ArrayCallbacks_RBV + 625 + 778 + 79 + 18 + + + + + + + + + + + + + 6 + false + 1 + false + + + text #256 + # Queued arrays + 375 + 575 + 150 + + + + + 2 + + + text update #259 + $(P)$(R)NumQueuedArrays + 530 + 576 + 60 + 18 + + + + + + + + + + + + + 1 + false + 2 + false + + + text #263 + Wait for plugins + 365 + 600 + 160 + + + + + 2 + + + menu #266 + $(P)$(R)WaitForPlugins + 530 + 600 + 80 + 20 + + + + + false + + + text #269 + Acquire busy + 405 + 625 + 120 + + + + + 2 + + + text update #272 + $(P)$(R)AcquireBusy + 530 + 626 + 160 + 18 + + + + + + + + + + + + + 6 + false + + + composite #276 + ADAttrFile.bob + 715 + 355 + 350 + 110 + + + composite #278 + 715 + 225 + 350 + 60 + + true + + composite #281 + 122 + 2 + 107 + 21 + + true + + rectangle #284 + 107 + 21 + + + + + + + + + + + + text #287 + File + 155 + 2 + 40 + + + + + + + + + 1 + + + rectangle #290 + 350 + 60 + 1 + + + + + + + + + true + + + text #293 + Driver File I/O + 13 + 29 + 150 + + + + + 2 + + + related display #296 + + + NDFile.opi + tab + + + + 170 + 29 + 70 + 20 + + + + + + + + composite #299 + 715 + 120 + 350 + 100 + + true + + rectangle #302 + 122 + 2 + 107 + 21 + + + + + + + + + + + text #305 + Cooler + 145 + 3 + 60 + + + + + + + + + 1 + + + rectangle #308 + 350 + 100 + 1 + + + + + + + + + true + + + text update #311 + $(P)$(R)TemperatureActual + 236 + 55 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text entry #315 + $(P)$(R)Temperature + 143 + 54 + 60 + + + + + + + + + 1 + false + false + + + text #319 + Temperature + 22 + 54 + 110 + + + + + 2 + + + menu #322 + $(P)$(R)AndorCooler + 143 + 29 + 60 + 20 + + + + + false + + + text #325 + Cooler + 72 + 29 + 60 + + + + + 2 + + + text update #328 + $(P)$(R)AndorCooler_RBV + 236 + 30 + 61 + 18 + + + + + + + + + + + + + 6 + false + 1 + false + + + text #332 + Status + 73 + 79 + 60 + + + + + 2 + + + text update #335 + $(P)$(R)AndorTempStatus_RBV + 143 + 83 + 180 + 12 + + + + + + + + + + + + + 6 + false + + + + composite #339 + 715 + 290 + 350 + 60 + + true + + rectangle #342 + 130 + 2 + 90 + 21 + + + + + + + + + + + text #345 + PAL File + 135 + 2 + 80 + + + + + + + + + 1 + + + rectangle #348 + 350 + 60 + 1 + + + + + + + + + true + + + text entry #351 + $(P)$(R)PALFilePath + 60 + 30 + 280 + + + + + + + + + 6 + false + false + + + text #355 + Path + 13 + 29 + 40 + + + + + 2 + + + + composite #358 + ADBuffers.bob + 715 + 470 + 350 + 160 + + + composite #360 + 5 + 380 + 350 + 465 + + true + + rectangle #363 + 122 + 2 + 107 + 21 + + + + + + + + + + + rectangle #366 + 350 + 465 + 1 + + + + + + + + + true + + + text #369 + Readout + 140 + 3 + 70 + + + + + + + + + 1 + + + text #372 + X + 168 + 30 + 10 + + + + + 2 + + + text #375 + Y + 261 + 30 + 10 + + + + + 2 + + + text #378 + Image Size (bytes) + 29 + 285 + 180 + + + + + 2 + + + text update #381 + $(P)$(R)ArraySize_RBV + 236 + 286 + 61 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #385 + Image Size + 32 + 260 + + + + + 2 + + + text update #388 + $(P)$(R)ArraySizeX_RBV + 143 + 261 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text update #392 + $(P)$(R)ArraySizeY_RBV + 236 + 261 + 61 + 18 + + + + + + + + + + + + + 1 + false + false + + + text update #396 + $(P)$(R)ReverseX_RBV + 143 + 215 + 61 + 18 + + + + + + + + + + + + + 6 + false + 1 + false + + + text update #400 + $(P)$(R)ReverseY_RBV + 236 + 215 + 61 + 18 + + + + + + + + + + + + + 6 + false + 1 + false + + + text #404 + Reverse + 62 + 235 + 70 + + + + + 2 + + + menu #407 + $(P)$(R)ReverseX + 143 + 235 + 60 + 20 + + + + + false + + + menu #410 + $(P)$(R)ReverseY + 236 + 235 + 60 + 20 + + + + + false + + + text #413 + Region Size + 22 + 190 + 110 + + + + + 2 + + + text entry #416 + $(P)$(R)SizeX + 143 + 190 + 60 + + + + + + + + + 1 + false + false + + + text entry #420 + $(P)$(R)SizeY + 236 + 190 + 60 + + + + + + + + + 1 + false + false + + + text update #424 + $(P)$(R)SizeX_RBV + 143 + 170 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text update #428 + $(P)$(R)SizeY_RBV + 236 + 170 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text update #432 + $(P)$(R)MinX_RBV + 143 + 125 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text entry #436 + $(P)$(R)MinX + 143 + 145 + 60 + + + + + + + + + 1 + false + false + + + text entry #440 + $(P)$(R)MinY + 236 + 145 + 60 + + + + + + + + + 1 + false + false + + + text update #444 + $(P)$(R)MinY_RBV + 236 + 125 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text #448 + Region Start + 12 + 145 + 120 + + + + + 2 + + + text entry #451 + $(P)$(R)BinX + 143 + 100 + 60 + + + + + + + + + 1 + false + false + + + text entry #455 + $(P)$(R)BinY + 236 + 100 + 60 + + + + + + + + + 1 + false + false + + + text update #459 + $(P)$(R)BinX_RBV + 143 + 80 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text update #463 + $(P)$(R)BinY_RBV + 236 + 80 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text #467 + Binning + 62 + 100 + 70 + + + + + 2 + + + text #470 + Sensor Size + 22 + 55 + 110 + + + + + 2 + + + text update #473 + $(P)$(R)MaxSizeX_RBV + 143 + 56 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text update #477 + $(P)$(R)MaxSizeY_RBV + 236 + 56 + 61 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text #481 + Data Type + 42 + 435 + 90 + + + + + 2 + + + menu #484 + $(P)$(R)DataType + 142 + 435 + 20 + + + + + false + + + text update #487 + $(P)$(R)DataType_RBV + 246 + 436 + 79 + 18 + + + + + + + + + + + + + 6 + false + false + + + text update #491 + $(P)$(R)AndorADCSpeed_RBV + 246 + 411 + 80 + 18 + + + + + + + + + + + + + 6 + false + false + + + menu #495 + $(P)$(R)AndorADCSpeed + 143 + 411 + 20 + + + + + false + + + text #498 + ADC Speed + 42 + 410 + 90 + + + + + 2 + + + text update #501 + $(P)$(R)AndorPreAmpGain_RBV + 236 + 311 + 80 + 18 + + + + + + + + + + + + + 6 + false + false + + + menu #505 + $(P)$(R)AndorPreAmpGain + 143 + 311 + 80 + 20 + + + + + false + + + text #508 + Pre-amp Gain + 12 + 310 + 120 + + + + + 2 + + + text update #511 + $(P)$(R)AndorEMGain_RBV + 236 + 336 + 80 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #515 + EM Gain + 62 + 335 + 70 + + + + + 2 + + + text update #518 + $(P)$(R)AndorEMGainMode_RBV + 248 + 361 + 90 + 18 + + + + + + + + + + + + + 6 + false + false + + + menu #522 + $(P)$(R)AndorEMGainMode + 143 + 361 + 20 + + + + + false + + + text #525 + EM Gain Mode + 12 + 360 + 120 + + + + + 2 + + + text update #528 + $(P)$(R)AndorEMGainAdvanced_RBV + 246 + 386 + 80 + 18 + + + + + + + + + + + + + 6 + false + false + + + menu #532 + $(P)$(R)AndorEMGainAdvanced + 143 + 386 + 20 + + + + + false + + + text #535 + EM Gain Adv. + 12 + 385 + 120 + + + + + 2 + + + text entry #538 + $(P)$(R)AndorEMGain + 143 + 335 + 80 + + + + + + + + + 1 + false + false + + + diff --git a/andorApp/op/bob/autoconvert/Shamrock.bob b/andorApp/op/bob/autoconvert/Shamrock.bob new file mode 100644 index 0000000..1b0f11d --- /dev/null +++ b/andorApp/op/bob/autoconvert/Shamrock.bob @@ -0,0 +1,1292 @@ + + + Shamrock + 156 + 62 + 765 + 400 + + + + + false + 5 + + rectangle #6 + 4 + 765 + 25 + + + + + + + + + + + text #9 + Andor Shamrock Spectrograph Control - $(P)$(R) + 5 + 765 + 25 + + + + + + + + + 1 + + + rectangle #12 + 127 + 37 + 107 + 21 + + + + + + + + + + + rectangle #15 + 5 + 35 + 350 + 265 + 1 + + + + + + + + + true + + + text #18 + Grating + 145 + 38 + 70 + + + + + + + + + 1 + + + text update #21 + $(P)$(R)Grating_RBV + 245 + 71 + 80 + 18 + + + + + + + + + + + + + 6 + false + false + + + menu #25 + $(P)$(R)Grating + 140 + 71 + 20 + + + + + false + + + text #28 + Grating + 65 + 70 + 70 + + + + + 2 + + + text entry #31 + $(P)$(R)Wavelength + 140 + 95 + + + + + + + + + 1 + false + false + + + text update #35 + $(P)$(R)Wavelength_RBV + 150 + 125 + 79 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text #39 + Wavelength + 35 + 95 + + + + + 2 + + + rectangle #42 + 507 + 37 + 107 + 21 + + + + + + + + + + + rectangle #45 + 360 + 35 + 400 + 170 + 1 + + + + + + + + + true + + + text #48 + Slits + 535 + 38 + 50 + + + + + + + + + 1 + + + text #51 + Slit + 436 + 70 + 40 + + + + + 2 + + + text #54 + Input side + 399 + 95 + + + + + 2 + + + text #57 + Input direct + 379 + 120 + 120 + + + + + 2 + + + text update #60 + $(P)$(R)SlitExists1 + 506 + 95 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text update #64 + $(P)$(R)SlitExists2 + 505 + 120 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text update #68 + $(P)$(R)SlitSize1_RBV + 671 + 95 + 80 + 18 + + + + + + + + + + + + + 1 + false + false + + + text update #72 + $(P)$(R)SlitSize2_RBV + 671 + 120 + 80 + 18 + + + + + + + + + + + + + 1 + false + false + + + text #76 + Exists + 506 + 70 + 60 + + + + + 2 + + + text #79 + Width (um) + 596 + 70 + + + + + 2 + + + text entry #82 + $(P)$(R)SlitSize1 + 581 + 95 + 80 + + + + + + + + + 1 + false + false + + + text entry #86 + $(P)$(R)SlitSize2 + 581 + 120 + 80 + + + + + + + + + 1 + false + false + + + text #90 + Output side + 389 + 143 + 110 + + + + + 2 + + + text update #93 + $(P)$(R)SlitExists3 + 506 + 145 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text update #97 + $(P)$(R)SlitSize3_RBV + 671 + 145 + 80 + 18 + + + + + + + + + + + + + 1 + false + false + + + text entry #101 + $(P)$(R)SlitSize3 + 581 + 145 + 80 + + + + + + + + + 1 + false + false + + + text #105 + Output direct + 369 + 170 + 130 + + + + + 2 + + + text update #108 + $(P)$(R)SlitExists4 + 506 + 172 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text update #112 + $(P)$(R)SlitSize4_RBV + 671 + 172 + 80 + 18 + + + + + + + + + + + + + 1 + false + false + + + text entry #116 + $(P)$(R)SlitSize4 + 581 + 172 + 80 + + + + + + + + + 1 + false + false + + + cartesian plot #120 + 365 + 235 + 390 + 150 + + + true + false + 0.0 + 100.0 + false + + + + + + + + + true + + + + + true + false + 0.0 + 100.0 + false + + + + + + + + + true + + + + + $(traces[0].y_pv) + + $(P)$(R)Calibration + + 0 + 1 + + + + + 1 + 0 + 0 + 10 + true + + + + + rectangle #124 + 495 + 212 + 130 + 21 + + + + + + + + + + + text #127 + Calibration + 505 + 213 + 110 + + + + + + + + + 1 + + + rectangle #130 + 360 + 210 + 400 + 185 + 1 + + + + + + + + + true + + + text #133 + Grating + 10 + 205 + 70 + + + + + 2 + + + text #136 + 1 + 40 + 230 + 10 + + + + + 2 + + + text #139 + 2 + 40 + 255 + 10 + + + + + 2 + + + text #142 + 3 + 40 + 278 + 10 + + + + + 2 + + + text update #145 + $(P)$(R)GratingExists1 + 95 + 230 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text update #149 + $(P)$(R)GratingExists2 + 94 + 255 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text update #153 + $(P)$(R)GratingExists3 + 95 + 280 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text update #157 + $(P)$(R)MinWavelength1 + 170 + 230 + 80 + 18 + + + + + + + + + + + + + 1 + false + 2 + false + + + text update #161 + $(P)$(R)MaxWavelength1 + 260 + 230 + 80 + 18 + + + + + + + + + + + + + 1 + false + 2 + false + + + text update #165 + $(P)$(R)MinWavelength2 + 170 + 255 + 80 + 18 + + + + + + + + + + + + + 1 + false + 2 + false + + + text update #169 + $(P)$(R)MaxWavelength2 + 260 + 255 + 80 + 18 + + + + + + + + + + + + + 1 + false + 2 + false + + + text update #173 + $(P)$(R)MinWavelength3 + 170 + 280 + 80 + 18 + + + + + + + + + + + + + 1 + false + 2 + false + + + text update #177 + $(P)$(R)MaxWavelength3 + 260 + 280 + 80 + 18 + + + + + + + + + + + + + 1 + false + 2 + false + + + text #181 + Exists + 95 + 205 + 60 + + + + + 2 + + + text #184 + Min. + 207 + 205 + 40 + + + + + 2 + + + text #187 + Max. + 285 + 205 + 40 + + + + + 2 + + + text #190 + Wavelength range + 180 + 180 + 160 + + + + + 2 + + + text #193 + Center + 160 + 145 + 60 + + + + + 2 + + + text #196 + Maximum + 245 + 145 + 70 + + + + + 2 + + + text #199 + Minimum + 55 + 145 + 70 + + + + + 2 + + + text update #202 + $(P)$(R)MinWavelength + 50 + 125 + 79 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + text update #206 + $(P)$(R)MaxWavelength + 245 + 125 + 79 + 18 + + + + + + + + + + + + + 1 + false + 1 + false + + + rectangle #210 + 5 + 305 + 350 + 90 + 1 + + + + + + + + + true + + + text #213 + Input + 33 + 349 + 50 + + + + + 2 + + + menu #216 + $(P)$(R)FlipperMirror1 + 151 + 350 + 20 + + + + + false + + + text update #219 + $(P)$(R)FlipperMirror1_RBV + 257 + 350 + 80 + 18 + + + + + + + + + + + + + 6 + false + false + + + rectangle #223 + 91 + 306 + 170 + 21 + + + + + + + + + + + text #226 + Flipper Mirrors + 101 + 306 + 150 + + + + + + + + + 1 + + + text update #229 + $(P)$(R)FlipperMirror2_RBV + 257 + 373 + 80 + 18 + + + + + + + + + + + + + 6 + false + false + + + menu #233 + $(P)$(R)FlipperMirror2 + 152 + 373 + 20 + + + + + false + + + text #236 + Output + 23 + 372 + 60 + + + + + 2 + + + text #239 + Exists + 88 + 329 + 60 + + + + + 2 + + + text update #242 + $(P)$(R)FlipperMirrorExists1 + 88 + 351 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text update #246 + $(P)$(R)FlipperMirrorExists2 + 88 + 374 + 60 + 18 + + + + + + + + + + + + + 6 + false + 1 + + + text #250 + Port + 171 + 329 + 40 + + + + + 2 + +