WIRED - Istituto Nazionale di Fisica Nucleare

Download Report

Transcript WIRED - Istituto Nazionale di Fisica Nucleare

WIRED
World-Wide Web Interactive Remote Event Display
Mark Dönszelmann, IT/API, CERN
CHEP 2000, 9 February 2000, Padova, Italy
Features
 Framework for building Event Displays
 10% of code is experiment specific
 Client Server Architecture
 Client can be used as Application or Applet (browser mode)
 Written entirely in Java
 Client in Java, Server can be in a different language
 Access to data
 reads files or connects to Java, FORTRAN, C and C++
 Graphics Engine to do HEP specific projections
 3D as well as non-linear (fish-eye) projections
 ATLAS, BaBar, CHORUS, DELPHI and LHCb
 Development infrastructure available for collaboration
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
WIRED as Application (Delphi)
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
WIRED as Applet in Netscape (BaBar)
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Client-Server Architecture
WIRED
Server
WIRED
Application
Geometry
and
Events
Geometry
and
Events
WIRED
Gateway
WIRED
Applet
WWW
Server
WWW
Browser
WIRED
Code
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
WIRED
Code
9 February 2000
Plug-in Architecture
Event
Loader
WIRED
Cache
Geometry
Loader
GUI
Draw
Representables
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
Drawables
Projections
Project
Projectables
Application
or
Applet
Representations
Represent
9 February 2000
GUI (Views and Controls)
MenuBar
ToolBar
ViewTop
ControlTop
Console
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Event Visibility Tree
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Infobus to connect Views to Controls
Event Selector
Comm. Status
Event Info
Info Bus
Command
Info Bus
Views
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Parts Select
Merge Controller
Bus
Merge
Controller
Control 1
“unknown”
View 1 View 2 View 3 View 4 View 5
“5003” “5003” “5007” “5003” “5007”
Control 2
Merge
Controller
Select Bus
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
“5007”
Graphics Engine - Special Projections
Parallel Projection
based on a matrix
calculation
X-Fish Eye
Projection
based on functions
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
WIRED Graphics Engine versus 3D
Scaling using a
3D Graphics Engine
All drawables based
on volume
Scaling using the
WIRED Graphics Engine
All drawables based
on fixed sized symbols
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Rendering Pipe
Pipe
Representation
Event
Cache
Store
Canvas
Projection
Hits, Tracks, ...
2D Symbols in 3D
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
3D Transformation
to 2D
9 February 2000
2D Symbols in 2D
Cascaded Projections
X
U
Y
V
Projection
Z
W
X
Y
Z
Single Projection
at draw time W is
discarded
U
Fish Eye
Projection
X
V
Y
W
Z
U
Parallel
Projection
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
V
W
Cascaded Projection
U,V,W output is X,Y,Z
input
at draw time final W
value is discarded
9 February 2000
Layering
Layering System
Background Layer
Track Frame Layer
Track Layer
Hit Frame Layer
Result
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
Hit Layer
9 February 2000
Access to Data
 XML
 File access (direct or over web server)
 Easiest way to get data in WIRED, but also slow
 Relatively large files, but compression factor is high
 Use for fixed geometry (DTD is available)
 No interaction possible
 ATLAS, DELPHI, LHCb
 RMI
 Copy of objects is possible (e.g. full event object structure)
 Server is in Java
 CHORUS (to FORTRAN via C)
 CORBA
 Copy of structures is possible
 Server can be in C++ or Java
 BaBar (to C++)
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
WIRED as JAS Plug-In
 Access to Data
 Access to/from GUI




Selection of single events
Selection of tracks and hits
Connection to Infobus
Display of status information
 Collaboration with Tony
Johnson is ongoing...
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Libraries and Tools (3rd party)
 Jikes (compiler)
 Swing (gui)
 Aelfred and xml4j (XML parsers)
 JavaMail (bug reporting)
 BeanShell (java scripting engine)
 Infobus (software bus)
 JavaHelp (help system)
 JUnit (unit testing framework)
 ORBacus (CORBA)
 Log4j (logging facility)
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Infrastructure for development
 Unix and NT support for development
 AFS to access repository --> migrate to CVS server
 CVS repository and CVSWeb
 GNUMake
 Nightly build and test on different platforms
 JIndent for coding convention
 JInstall Toolkit to create distribution
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Summary
 Now
 Graphics Engine, including picking, reasonably complete
 Printing in PostScript
 Easy event selection
 Access to Data in XML, RMI and CORBA
 Near Future
 Integration - Coupling to JAS
 Further Infobus integration
 Additional Controls
 Addition of the scripting engine
 Configuration saving and restoring (in XML)
 HepRep implementation
 Access to C++ objects directly (without CORBA)
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000
Authors (including students)
 Andrea Ballaminut, University of Udine, Italy
 Cristian Colonello, University of Udine, Italy
 Mark Dönszelmann, CERN
 Eric van Herwijnen, CERN
 Dies Köper, NIKHEF, Amsterdam, The Netherlands
 Jari Korhonen, University of Oulu, Finland
 Maarten Litmaath, Fermilab, U.S.A.
 Joseph Perl, SLAC, U.S.A.
 Anna Theodorou, CERN
 Daniel Whiteson, CERN
 Eberhard Wolff, CERN
Mark Dönszelmann, CERN/IT Applications for Physics and Infrastructure Group
9 February 2000