1 #pragma rtGlobals=1 // Use modern global access method. 2 #pragma ModuleName = PearlMenu 20 help = {
"Data explorer panel with file import and preview",
"Requires ARPES package and HDF5 XOP"}
22 help = {
"Import area detector HDF5 data file",
"Requires ARPES package and HDF5 XOP"}
25 submenu
"On-the-Fly Data" 27 help = {
"Renames otf_xxxxxx_yyyyyy_zzzz data folders to otf_yyyyyy (removing date and suffix)",
"Requires Optics package"}
29 help = {
"Copies data from all otf_* folders into otf_batch folder",
"Requires Optics package"}
30 PearlMenuEnableFunc(
"PearlOpticsPreviewPanel") +
"OTF Preview", /Q, PearlOpticsPreviewPanel()
31 help = {
"Opens a preview panel for OTF data in otf_* folders",
"Requires Optics package"}
34 submenu
"Scienta Analyser" 36 help = {
"Display preview panel with latest image from Scienta",
"Requires ARPES package and EPICS XOP"}
38 help = {
"Preview of acquired angle scan data and current detection angles.",
"Requires ARPES package and EPICS XOP"}
40 help = {
"Live tracking and adjustment of sample position.",
"Requires ARPES package and EPICS XOP"}
45 help = {
"Display preview panel with latest image from Scienta",
"Requires ARPES package and EPICS XOP"}
47 help = {
"Display live panel of the exit slit camera",
"Requires ARPES package and EPICS XOP"}
52 help = {
"Profiles display of 2D data",
"Requires ARPES package"}
54 help = {
"Slice and profiles display of 3D data",
"Requires ARPES package"}
56 help = {
"Gizmo display of 3D data",
"Requires ARPES package"}
61 help = {
"Data processing of two-pi angle scans",
"Requires ARPES package"}
66 help = {
"Open an ELOG panel to send entries to an ELOG logbook"}
69 submenu
"Sample Preparation" 71 help = {
"Sample annealing ramp generator"}
76 help = {
"Data processing and analysis for ARPES experiments"}
78 help = {
"Process control for sample preparation"}
80 help = {
"Data processing and analysis for beamline commissioning"}
91 if (exists(funcname) >= 3)
99 execute /p/q/z "INSERTINCLUDE \"pearl-optics\""
100 execute /p/q/z "COMPILEPROCEDURES "
101 execute /p/q/z "BuildMenu \"PEARL\""
105 execute /p/q/z "INSERTINCLUDE \"pearl-arpes\""
106 execute /p/q/z "COMPILEPROCEDURES "
107 execute /p/q/z "BuildMenu \"PEARL\""
111 execute /p/q/z "INSERTINCLUDE \"pearl-preparation\""
112 execute /p/q/z "COMPILEPROCEDURES "
113 execute /p/q/z "BuildMenu \"PEARL\""
117 dfref dfBefore = GetDataFolderDFR()
118 Execute /q/z "CreateBrowser prompt=\"Select 2D wave\", showWaves=1, showVars=0, showStrs=0"
119 dfref dfAfter = GetDataFolderDFR()
120 SetDataFolder dfBefore
122 SVAR list = S_BrowserList
125 if ((flag != 0) && (ItemsInList(list) >= 1))
126 string brickname = StringFromList(0, list)
134 dfref dfBefore = GetDataFolderDFR()
135 Execute /q/z "CreateBrowser prompt=\"Select 3D wave\", showWaves=1, showVars=0, showStrs=0"
136 dfref dfAfter = GetDataFolderDFR()
137 SetDataFolder dfBefore
139 SVAR list = S_BrowserList
142 if ((flag != 0) && (ItemsInList(list) >= 1))
143 string brickname = StringFromList(0, list)
153 dfref dfBefore = GetDataFolderDFR()
154 Execute /q/z "CreateBrowser prompt=\"Select 3D wave\", showWaves=1, showVars=0, showStrs=0"
155 dfref dfAfter = GetDataFolderDFR()
156 SetDataFolder dfBefore
158 SVAR list = S_BrowserList
161 if ((flag != 0) && (ItemsInList(list) >= 1))
162 string brickname = StringFromList(0, list)
191 sprintf cmd, "ad_connect(\"%s\", \"%s\")", epicsname, nickname
197 sprintf cmd, "ModifyGraph wbRGB=%s", wbRGB
199 sprintf cmd, "add_roi_controls()"
224 sprintf cmd, "ad_connect(\"%s\", \"%s\")", epicsname, nickname
226 sprintf cmd, "display; appendimage root:pearl_epics:%s:image", nickname
228 sprintf cmd, "ModifyGraph wbRGB=%s", wbRGB
230 cmd = "ModifyGraph height={Plan,1,left,bottom}
" 242 function PearlAnglescanTracker(epicsname, wbRGB) 249 sprintf cmd, "ModifyGraph wbRGB=%s
", wbRGB 261 function PearlSampleTracker(action) 264 sprintf cmd, "sample_tracker(%u)
", action
variable ad_load_dialog(string APathName)
load area detector data files selected in a file dialog window
variable ad_brick_slicer(wave data)
open a slicer panel for 3D data.
variable ast_setup()
set up data structures, display graph, and try to connect to analyser.
variable otf_gather_batch(string ywavematch, string xwavematch, string destfolder)
variable asp_show_panel()
create the angle scan processing panel
variable otf_rename_folders(string pattern, variable unique_index=defaultValue, string new_suffix=defaultValue, string match_str=defaultValue)
string ad_display_profiles(wave image, string filter=defaultValue)
open a new profiles graph window.
variable pearl_data_explorer()
string ad_display_slice(wave data)
display three-dimensional data by 2D slice.
variable pearl_elog(string logbook)
main function to initialize ELOG and to open an ELOG panel.
string ad_display_brick(wave data)
open a new "gizmo" window with three-dimensional data.