![]() CLI and GUI are in fact two different threads that communicate passing messages. Also the separation of CLI and GUI allows, in principle, for extended modularity. Since each plugin can access data structures and functions of all other loaded plugins, they can integrate and build on each other. Tutorial plugin and driver examples, documenting the Hooke internal variables and application programming interfaces, are available in the Hooke source distribution, so that users can write new plugins almost right away. At startup Hooke reads from its user-editable XML configuration file which are the plugins and drivers to load. Drivers and plugins provide additional functionalities to both threads.īoth drivers and plugins are coded as a standalone Python files. The CLI and GUI intercommunicating threads form the Hooke backbone (rectangle). ![]() Hooke automatically recognizes the data format and uses the correct driver recognition is encoded in the driver itself.ĭiagram of the Hooke architecture. Drivers provide a common interface to the different data formats supported however each driver can encode additional functions that can be accessed with appropriate plugins, if needed. Plugins implement software functionality and define new commands and/or GUI elements. Practically, all Hooke real functions are then implemented as drivers and plugins extending the backbone ( Fig. The backbone, by itself, implements only the very basic infrastructure. The Hooke backbone consists of two concurrent threads, encoding the CLI and the GUI foundations. Extensibility by means of independent, communicating modules allows very diverse functionality and data support to be built flexibly on common grounds. Each kind of SMFS experiment, by the very nature of the technique, is likely to require customized analysis tools in addition to common ones. The modularity of Hooke is the essential concept of the software. The simplicity of a CLI+GUI interface is by design: it allows for maximum flexibility and extensibility, without sacrificing usability. Data files can be annotated and then copied automatically in a given directory: this way the user can automatically harvest interesting data files from his/her collection for further analysis. Data can be exported as a text file or as EPS and PNG image files. Within the CLI, the user can navigate the list of data files to be analyzed in a session and issue commands for analysis. The Hooke interface is made of a command-line interface (CLI) and a graphical user interface (GUI) that as of today is an interactive window displaying the plots. Hooke now provides standard capabilities required for analysis of SMFS experiments at constant speed, especially protein unfolding experiments. Hooke is written entirely in Python and routinely runs on Microsoft Windows®, GNU/Linux® and Mac OS X®. Hooke has been used successfully for research published in high-impact journals (Brucale et al., 2009 Sandal et al., 2008 Valle et al., 2008). ![]() Hooke is designed to be as modular and extensible as possible, while striving to maintain a simple, consistent interface. With Hooke 1 we introduce a functional, open, free and modular platform for general analysis of SMFS data. In general, there is no standard, open and flexible software platform where algorithms and utilities are developed and shared in the SMFS community. Implementations can also be closed source (Carl et al., 2001 Metrology, 2001) or depend on specific proprietary software like Microsoft Excel (Odorico et al., 2007) or IGOR Pro (Kuhn et al., 2005). Although a few interesting softwares and algorithms have been published (Carl et al., 2001 Kasas et al., 2000 Kuhn et al., 2005 Metrology, 2001 Mueller et al., 2006 Odorico et al., 2007 Puchner et al., 2008), their known implementation is often not immediate to adapt to new types of SMFS experiments or the large diversity of data formats. Of these curves only a few contain actual single molecule information, that needs to be selected, classified and analyzed with non-linear models. Typical SMFS experiments generate thousands to hundreds of thousands of raw force–distance curves (Rounsevell et al., 2004). DNA (Bustamante et al., 1994), RNA (Williams and Rouzina, 2002) and polysaccharides (Marszalek et al., 2001) have also been studied extensively with the same technique. SMFS allowed to directly probe the conformational equilibria of unstructured proteins (Brucale et al., 2009 Sandal et al., 2008), the refolding process of single protein molecules (Fernandez and Li, 2004), and to analyze the structure of single membrane protein molecules (Muller et al., 2002 Oesterhelt et al., 2000). Single molecule force spectroscopy (SMFS) is one of the most relevant single molecule techniques applied on proteins (Carrion-Vazquez et al., 2006 Valle et al., 2007).
0 Comments
Leave a Reply. |