RCSB Viewers:Projects Overview
The RCSB MBT Lib and Structure Viewers comprise a body of code that allows the programmer to build tools and viewers for the analyses and viewing of protein structures. Projects may be divided into two basic categories:
- Support libraries and frameworks
- Viewer applications
A further overview of these divisions follows.
Support Libraries and Frameworks
These projects provide the underpinnings for creating applications.
- 3rd Party Libs
- These are external support jars (that are not included in the standard JRE distribution) the rest of the framework relies on. Key jar subsystems are: - JOGL - Java Open GL implementation. - JAI - Java Advanced Imaging implementation. In addition to the jars, the JOGL implementation requires JNI native libraries for each targed platform, the locations of which must be specified in execution directives.
- RCSB MBT Lib
-
This is the Molecular Biology Toolkit, a framework and
structure specification that provides the foundation for creating and
accessing structure models.
- The framework can provide the foundation for viewers (as it currently does), but parts of it may be used to construct non-viewer/non- or limited- UI applications, or even command-line or out-of-process analysis utilities.
- RCSB UIApp Framework
- The UIApp Frameworkprovides low-level base classes for application creation and basic UI services (mainframe, menu, file open dialog, etc.)
- RCSB Viewers Framework
-
The Viewers Framework builds on the UIApp Framework to
provide 3d graphics support. All of the 3d viewers are built on this
framework.
</dl>
Applications
------------
These are the actual implementing applications, currently consisting of
the suite of 3d structure viewers:
- RCSB Simple Viewer
-
A viewer that takes up the entire mainframe (window), without any
additional panels or other control mechanism. It simply displays the
structure.
- A rudimentary menu is provided to open other structures, and a status bar is provided in the mainframe to echo the results of component hovers or other status information.
- RCSB Protein Workshop
- A viewer that provides a control panel, allowing view modifications such as rendering styles, colors, visibility, etc.
- RCSB Ligand Explorer
- Displays a structure and ligand combination, in the same space. Various tools are provided in a control panel to explore relationships between the ligand and associated structure.
- RCSB PDB Kiosk
- A unique 'outreach' viewer that displays a number of structures in sequence, animating between different aspects of views. A kind of 'moving slideshow' presentation. </dl> Re-Architecture Effort ---------------------- The MBT was created in 1998, using Java 1.0 constructs. Since then, there have been many improvements in the language in terms of performance, type-safety, and syntax. Furthermore, the OpenGL implementation is based on the 1.0 standard. Similar improvements have occured in the OpenGL implementation, as well. As a result, this version (undertaken in 2008), represents a large effort to re-architect the MBT and Viewers (which had diverged considerably in implementation), with an eye to a more maintainable condition, and one that more cleanly follows known architectural constructions. There has also been a considerable effort to upgrade many of the constructs to minimally the JRE 1.5 specification, especially as regards type-safety in constructs. There has been no intent to address or upgrade OpenGL usage in this version.