Jan Hatje, DESY SNL Editor and Debugger 1 EPICS collaboration meeting 2008 SNL Editor and Debugger EPICS collaboration meeting 2008 Shanghai Institute of Applied Physics (SINAP), 13th March 2008 Jan Hatje, Albert Kagarmanov, Gongfa Liu (DESY / MKS-2) Kai Meyer, Matthias Zeimer (C1-WPS)
SNL Editor and Debugger. EPICS collaboration meeting 2008 Shanghai Institute of Applied Physics (SINAP) , 13th March 2008 Jan Hatje, Albert Kagarmanov, Gongfa Liu ( DESY / MKS-2) Kai Meyer , Matthias Zeimer (C1-WPS). Overview. SNL Editor Features Design. SNL Debugger - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Jan Hatje, DESYSNL Editor and Debugger 1
EPICS collaboration meeting 2008
SNL Editor and Debugger
EPICS collaboration meeting 2008Shanghai Institute of Applied Physics (SINAP), 13th March 2008
Jan Hatje, Albert Kagarmanov, Gongfa Liu (DESY / MKS-2)
Kai Meyer, Matthias Zeimer (C1-WPS)
Jan Hatje, DESYSNL Editor and Debugger 2
EPICS collaboration meeting 2008
Overview
SNL Editor
• Features
• Design
SNL Debugger
• IOC Remote Management
• User Interface
• Check and manipulate status of a state program
Jan Hatje, DESYSNL Editor and Debugger 3
EPICS collaboration meeting 2008
Project
SNL Editor
• University of Hamburg, Kai Meyer, Matthias Zeimer, C1-
WPS (contract)
• Further development Matthias Zeimer (Master thesis)
SNL Debugger
• Albert Kagarmanov (Desy)
• Gongfa Liu (Desy)
Jan Hatje, DESYSNL Editor and Debugger 4
EPICS collaboration meeting 2008
State Notation Language (SNL)
• Programming of sequential operations
• SNL program is executed on the IOC
• Interaction with EPICS databases via channel access
Declaration part
State Set part
Jan Hatje, DESYSNL Editor and Debugger 5
EPICS collaboration meeting 2008
Current art of SNL development
• Source editing in simple text editor
• Build process just with make files
• No debugging possible
Jan Hatje, DESYSNL Editor and Debugger 6
EPICS collaboration meeting 2008
The new SNL Editor
• SNL Project type with adequate folder
structure
• SNL Editor is inherited from
Eclipse standard editor
• SNL Editor is connected to
*.st files
• SNC compiles SNL- files
with each saving
• Compiler options settable in
preference page
Jan Hatje, DESYSNL Editor and Debugger 7
EPICS collaboration meeting 2008
SNL Editor features
• SNL Keywords are
colored
• Outline view shows
program structure
• Items in Outline view are
linked with editor items
• Checks the basic
structure of the program
• Problem view with a list
of code errors
Jan Hatje, DESYSNL Editor and Debugger 8
EPICS collaboration meeting 2008
SNL Editor Live
Just take a look
Jan Hatje, DESYSNL Editor and Debugger 9
EPICS collaboration meeting 2008
SNL Editor Techniques
• Based on the eclipse core text editor, inspired by the
C Development Toolkit
• SNL Editor is integrated in the eclipse platform
• The editor uses the SNL compiler delivered with the
EPICS Environment
• Outline parsing is done by a custom parser with
extended code verification
• Available for CSS from Desy update site
(eclipse.desy.de/update/beta)
Jan Hatje, DESYSNL Editor and Debugger 10
EPICS collaboration meeting 2008
SNL Editor’s current state of development
Completed:
• Basic project handling
• Editor highlighting completed for SNL 2.1
• Outline parsing complete
• SNL compilation process support
In progress
• full build support for LinuX and VxWorks
Jan Hatje, DESYSNL Editor and Debugger 11
EPICS collaboration meeting 2008
SNL Editor Outlook
• Integration of Drag and Drop and Object contribution
for CSS datatypes
• Extended check of code structure
• Automatic code completion (syntactically)
• Providing code custom templates
• Automatic code completion (semantically)
• Integration of any target build process
• Minor changes of the SNL language to enhance
interoperability (ex. SNL for Java IOCs)
Jan Hatje, DESYSNL Editor and Debugger 12
EPICS collaboration meeting 2008
SNL Debugger IOC Remote Management
• SNL Debugger is part of the Remote IOC Management
• Redundancy Monitor Task (RMT) distributes XML commands
• RMT reads and writes to SNL Exec
• SNL Debugger is integrated in CSS
• Using common CSS IOC-Communication
• Support Drag and Drop and object contribution of CSS datatypes
• Shows type, value and assignment of selected variable
• Object contribution for process variables
• Value of a variable can be set on the IOC
Jan Hatje, DESYSNL Editor and Debugger 16
EPICS collaboration meeting 2008
SNL Debugger State set
• Shows information for every state set
• The current state can be changed by the user to any state in the program
• Run modes ‘suspend’, ‘resume’ and ‘single Step’ are available
Jan Hatje, DESYSNL Editor and Debugger 17
EPICS collaboration meeting 2008
SNL Debugger SNL Exec
SNL Report shows• Statistic of communication between
IOC master and slave
• Status of all running state programs
• Synchronization status
• Settings of tuning time
SNL Actions• Starts or stops the synchronization
• Starts or stops a state programs
• Rebuild the entry table of the state program
Jan Hatje, DESYSNL Editor and Debugger 18
EPICS collaboration meeting 2008
SNL Debugger
• Using SNL Debugger on Linux (Add RMT to SNL Exec)• List with IP addresses of redundant pairs in preferences• Necessary modifications in SNL will be applied by Desy
to the standard distribution• SNL Debugger is available for CSS (csstudio.org → Download → CSS Platform)• Get SNL Debugger from the predefined update site• For questions please contact: [email protected], [email protected],