Data Visualisation and Analysis Tool Andy Heath Department of Earth & Ocean Sciences University of Liverpool Seismic Data eXplorer SDX is a (Qt-based) application being developed at Liverpool Conceptually split into 2 parts: i) GUI (controls and visualisation) ii) Processing framework (processing done by plugins) … plugins created by scientist – scientist prescribes analysis … • Could the SDX idea offer a way of visualising and analysing seismic waveforms on the fly within the portal? • Offer the ability to browse and quality control waveform data before committing time and resources to downloading the data? Visualisation (2D) Visualisation (3D) • Visualise many waveforms simultaneously • Selection of waveforms and picking possible • Straight-forward to incorporate other information in 3D scene Processing framework: plugin execution • Plugin name selected from menu • Framework automatically generates dialog box for parameter input • Only selected waveforms are processed by plugin • If plugin generates new waveforms, these are added to the display Plugin creation and building Plugin editor part of GUI: • User source code is currently C or C++ • Simple API to access waveforms • Add runtime parameters (default value) • “Build” button generates binary plugin User’s source code + Runtime parameter information + Support code (i.e. plugin template) “Build” Dynamic library (plugin binary file) Plugin file is self-contained: runtime parameters, default values, etc are stored within file. Using this information the plugin execution dialog is generated on the fly by framework Workflows Workflow editor part of GUI: • Simple text script • Execute plugins non-interactively • Execute multiple plugins sequentially • Assign plugin parameter values within workflow script • Pass parameter values between plugins Assign parameter constant Execute plugin Pass parameter value between plugins SDX within the portal? Controls Graphics Editors Plugin building Plugin validation Processing framework PORTLET WEB SERVICE • Waveform data requested directly by framework – user request or cart • Plugin and workflow script files stored using cart mechanism • Library of common plugins/workflows available via a shared cart? • Parse plugins to validate – disallow some statements/calls (e.g. some i/o) Liverpool University Computer Services Department are willing to provide the processing and storage facilities required to host the webservice and portlet(s) Could the processing framework/plugin concept be applied to other portal applications? A demonstration of the current version of SDX is available here!