Comparative Analysis Toolkit User Interface (CATUI)

Doshi K.J., Gardner D.P., Cannone J.J., Gutell R.R. and Smith M. (2010)
CATUI: The Comparative Analysis Toolkit User Interface
(Manuscript in Preparation)

Current Release

Table of Contents

1. Introduction (Back to Top)

The Comparative Analysis Toolkit User Interface (CATUI) is the second major software component of the software infrastructure being developed by the Gutell Lab to support the Comparative Analysis of large RNA datasets. The CATUI is an application of the visualization and manipulation of RNA sequences and structures. The CATUI interfaces with the RNA Comparative Analysis Database (rCAD).

Through data virtualization techniques, very large RNA sequence alignments (greater than 100,000 sequences) can be efficiently visualized on a laptop computer. Alignment navigation is enhanced by utilitzing the integrated dimensions of the rCAD database (Sequence, Structure and Evolutionary Relationships. The CATUI application is a Microsoft Windows application, developed in .NET with Windows Presentation Foundation (WPF). Full documentation can be found here..

2. Architecture (Back to Top)

The CATUI application is designed to provide visualizations of the different data elements of an RNA dataset for Comparative Analysis. Currently, the CATUI has visualizations of RNA sequences (within a sequence alignment) through the Alignment Viewer and RNA secondary structures (using different structural rendering abstractions) through the Secondary Structure Viewer. Each visualization (sequence alignment or structure models) is opened in a separate window and is tied to a Data Source. Initially, all visualizations are docked in the Main Application Window.


The architecture of the CATUI is logically divided into Visualization and Data Provider components.


The Alignment Viewer and Secondary Structure Viewer components are Visualization components. The CATUI application component, BioBrowser drives the Main Application Window and has a dependency on all the Visualization components. The physical data for a RNA sequence alignment or secondary structure model is loaded by the respective Data Providers. For example, the rCAD Data Provider component loads RNA sequence alignments from the rCAD database. The Alignment Viewer component then renders the data stream from the rCAD Data Provider. The Data Providers handle all the data virtualization and implement interfaces that are utilized by the Visualization components. The Data Providers interfaces (CATUI 2.0) are provided below:


The entities provided by the Data Providers to the Visualization components are defined in the Bio.Data Component. A sequence is represented as a IBioEntity which is a list of IBioSymbol objects. Default implementations of IBioEntity and IBioSymbol are provided, or a individual data provider can implement their own.


3. Viewport-Based Sequence Alignment Visualization (Back to Top)

The Alignment Viewer scales to enable the visualization of extremely large sequence alignments using a combination of data virtualization and a viewport-driven visualization. Both of these concepts rely on the simple observation that a user is not capable of viewing an entire sequence alignment at one time one their screen. Instead, they look at a subset, which we call a viewport, of size m rows x n columns. The values for m and n are driven by: 1) the font size to rendering the alignment and 2) the size of the window.

Through data virtualization, the Alignment Viewer only caches into memory, enough data to fill the current viewport, plus some additional data around the edges that is immediately offscreen. When the viewport is moved, the Alignment Viewer updates the cache and re-renders the viewport.


Dictionary Terms

Last edited Feb 24, 2010 at 8:35 PM by kjdoshi, version 62


No comments yet.