Case Study: Adding "-> Logbook..." to CSS Data Browser
Deciding on the level of integration
...
I decided to use the "very low level" of integration, because that seems like the easiest way to work with CSS.
http://css.desy.de/content/e760/e761/index_eng.html
Checking out CSS source code
...
Installation of Mercurial
- Download Mercurial source code from http://mercurial.selenic.com/release/mercurial-1.6.4.tar.gz
- Type "make local" in the top directory
- Install MercurialEclipse
- http://www.javaforge.com/project/HGE#download
(update site is fine)
Clone the CSS repository
- http://www.javaforge.com/project/HGE#download
- http://sourceforge.net/apps/trac/cs-studio/wiki/SourceRepository
- Use 'read-only' => http://cs-studio.hg.sourceforge.net:8000/hgroot/cs-studio/cs-studio
(no account/password) More heap space
Increase memory for Eclipse
needed
- Use 'read-only' => http://cs-studio.hg.sourceforge.net:8000/hgroot/cs-studio/cs-studio
- Edit eclipse.ini in $ECLIPSE_HOME (768 1024 MB is what I haveended up with) Java 1.6 needed for some
Import the necessary CSS plugins as Eclipse projects
- Developing The minimum list of plugins to develop with DataBrowser need clarification from Kay & Co.
Checkout HLA projects from CVS
Create the edu.stanford.slac.save2logbook plugin for HLA code
- Copy the Save2Logbook source to this plugin and configure it for use by DataBrowser
Add the dependency to edu.stanford.slac.save2logbook to the DataBrowser
Adding existing HLA code/library Wrap as aplugin
- Eclipse bug: Start If plugins panel is empty, start typing the plugin name before selecting a plugin you depend on
Modify DataBrowser and Save2Logbook plugins
- Add JFace Button, called '-> Logbook...'
- Add JFace ActionListener to generate an Eclipse (Graphics) image
- Add a method in Save2Logbook that saves an Eclipse image as a JPEG file
Test by running DataBrowser as an Eclipse application
Create a SLAC DataBrowser product
- Select CSS Data Browser as the application
- Modify CSS splash
Export SLAC DataBrowser to some directory
When launching SLAC DataBrowser for the first time, configure EPICS and DataBrowser EPICS preferences
Major To-Dos
- Headless build
- "Workspace in use" issues
Resources
How to develop with CSS
- Overview https://ics-web.sns.ornl.gov/css/EPICS2010Intro/EclipseCSSDevIntro1.pdf
- Demos http://css.desy.de/content/e70/e10/index_eng.html
- JavaDoc http://css-javadoc.desy.de/
- Plugins http://css.desy.de/epicsgroup/css/content/e428/e396/e402/e491/CSSPluginOverview.htm
- DAL
- Preferences
- Messages
- Authentication and Authorization http://sourceforge.net/apps/trac/cs-studio/wiki/AuthAndAuth
- Mailing list http://sourceforge.net/mailarchive/forum.php?forum_name=cs-studio-core
...