Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Find the Java field that contains the UI component that prompted your development (change the back-/foreground color, if not sure); then use Eclipse References (right-click menu) to find where the field is being used

Overview

Image Added

Launch scripts

mpsgui
  • Located under $MPSGUI_ROOT, must be executable (chmod +x)
  • Sets up the CLASSPATH and the log file
  • Launches MPSGui using Plastic3DLookAndFeel from jgoodies
  • byenti is a legacy system property that tells MPSGui to interpret bypass end times as absolute (or, if false, relative) times

...

  • Controller for the "Ignore Logic" tab
  • Monitors the state of ignoring macros (using MPS Config)
    • Caches previous states
  • Shows detailed information about ignoring and ignored macros
  • To test, ignore/unignore macros by writing 0 or 1 to YAGS:IN20:211:IN_LMTSW_BYPV
    Code Block
    
    caput YAGS:IN20:211:IN_LMTSW_BYPV 1 to ignore
    caput YAGS:IN20:211:IN_LMTSW_BYPV 0 to unignore
    
edu.stanford.slac.mpsgui.controller.logic.MPSLogicViewer

...

  • Update the application version in $MPSGUI_ROOT/src/edu.stanford.slac.mpsgui.MpsGuiProperties
  • Add a note in $MPSGUI_ROOT/RELEASE_NOTES
    • Increment the tag version accordingly
  • Commit to CVS
  • Tag with mpsgui-R#-#-#
  • Check out the tagged version into production
    Code Block
    cd $PHYSICS_TOP/release
    cvs co -r mpsgui-R#-#-# -d mpsgui-R#-#-# physics/mps/mpsgui
    
  • Select File => New Java project => Create project from existing source
  • Select $PHYSICS_TOP/release/mpsgui-R#-#-#
  • Name the project mpsgui-R#-#-#
  • Press "Finish"
  • Right-click on the new project mpsgui-R#-#-# => Export...
  • Select Java => JAR file
  • Check mpsgui-R#-#-# in "Resources to export"
  • Check "Export generated class files and resources"
  • As the export destination, type (and/or select)
    Code Block
    $PHYSICS_TOP/release/mpsgui-R#-#-#/jar/mpsgui.jar
    
  • Press "Finish"
  • Move the symbolic link
    Code Block
    cd $PHYSICS_TOP/
    rm -rf mpsgui; ln -s release/mpsgui-R#-#-# mpsgui
    
  • Launch from lclshome
    • MPS Global => MPS GUI...
    • MPS Global => MPS CUD...

...

    • .

...

    • .

...

    • .

...

  • Pick up the new config/logic databases automatically

Test on lcls-dev2

Code Block

mpsgui \
jdbc:sqlite:/afs/slac.stanford.edu/u/xr/snorum/ioc/mpsConfiguration/database/ \
jdbc:sqlite:/afs/slac.stanford.edu/u/xr/snorum/ioc/mpsConfiguration/algorithm/ \
jdbc:oracle:thin:MPS_HISTORY/Neutrin0!@slac-oracle02.slac.stanford.edu:1521:SLACDEV \
&
  • Ignore/unignore truth tables by writing 0 or 1 to YAGS:IN20:211:IN_LMTSW_BYPV
    Code Block
    
    caput YAGS:IN20:211:IN_LMTSW_BYPV 1 to ignore
    caput YAGS:IN20:211:IN_LMTSW_BYPV 0 to unignore
    
  • Default solution etc. is "--"

New States

  • If the truth table's state can't be found in the Logic DB, make an alert panel that shows the truth table's name, the raw state value from the IOC:BSY0:MP01:TTBLST array, and a message saying "Send the above information to the controls group."

Stuff

  • Convert all JTables to MpsGuiTables
  • MpsLe to remember previous directory
  • Make A, B, and potentially C flexible