Home Examples Downloads Installation Registration Applet FAQ Help Contact Us
Navigation Menu
Friend Home
Examples
Downloads
Installation
Registration
Friend Applet
FAQ
Extended capabilites
Data formats
Defining custom menus
Using ClustalW
Using MODELLER
Help
Contact us
Extended capabilities ...
  1. Making automatic invocation of Friend to open alignment and PDB files on your system
  2. Making automatic invocation of Friend to open alignment and PDB files from the web
  3. Defining user menus for Friend
  4. Multiple alignments using ClustalW from Friend
  5. Seting up path to MODELLER
  6. Writing your library for Friend
  7. Runing Friend from another java class
  8. Underlying organization of the application


Making automatic invocation of Friend to open alignment and PDB files on your system

  • Windows: Right after the installation the system recognizes files with extensions recognized by Friend (.fa .fasta .fst .ali .pir .aln .cea .sky .pdb .ent) and invokes it to veiw them.
  • Linux: The solution varies from one windows manager to another. Usually you can right click on a file and select 'Open with ...'. The windows manager will ask you about the application you want to use to open the file. You'll be able to browse your file system and specify Friend executable (please make sure to specify the executable rather then link to it). Please find details about 'File types' in the manual for the windows manager you are using.

Making automatic invocation of Friend to open alignment and PDB files from the web

The solution varies from browser to broser. The following procedure gives you guidelines how to find the proper way for your browser. The example page can be used to check your settings.

  • Check that after installation of Friend your browser invokes it for files with extensions: .fa .fasta .fst .ali .pir .aln .cea .sky .pdb .ent. You may need to restart your browser. Usually, this is all you need to do if you are working on Windows.
  • If your browser doesn't invoke Friend for files with the mentioned extensions it may ask you wich program to use to open a file. In this case you'll be able to browse your file system and specify Friend executable (please make sure to specify the executable rather then link to it). On Windows by default Friend is installed in C:\Program_Files\NEU\Friend.
  • If this still doesn't work you may need to specify a new mime-type for your browser describing association of Friend with particular file extension. Usually you can do it in the menu 'Preferences' or 'Configure', please read the documentation of your browser for more details. Also note, that the mime-type you are specifying must match the mime-type set for the file extensions on a web server's site. Our web server has mime-type 'application/friend' set for file extensions: .fa .fasta .fst .ali .pir .aln .cea .sky .pdb .ent. You may need to restart your browser after adding new mime-type.

Defining user menus for Friend

  • User's menus are to be described in XML file. The example menu file can be found here. The XML code is intuitevly clear. Tag MENU describes the menu: you have to specify name for it. Tag MENU_ITEM describes the menu item: you have to specify name and set of executed command for it. After you have created the menu file make sure to specify the right path to it in the field CUSTOM_MENU_FILE in the file friend.conf, which is usually located at C:\Documents_and_Settings\<you_user_name>\.friend\conf (on Windows) or /home/<your_user_name>/.friend/conf (on Linux). Please not that file with user defined menus is read at the start up of Friend, so each time you make changes to it you must restart Friend in order the changes to take effect.

Using ClustalW from Friend

  • In order to use the ClustalW from Friend you must first install ClustalW. Then you have to specify the path to ClustalW executable in the field CLUSTALWEXE in the file friend.conf, which is usually located at C:\Documents_and_Settings\<you_user_name>\.friend\conf (on Windows) or /home/<your_user_name>/.friend/conf (on Linux). After all Friend must be restarted. ClustalW can be run using menu. 'Tools->ClustalW'.

Seting up path to MODELLER

  • In case you want Friend to recall path to Modeller executable, specify it in Friend configuration file 'friend.conf' (key-word MODELLEREXE) located in /you_home_directory/.friend/conf (typically /home/user/.friend/conf) on Linux and \you_home_directory\.friend\conf on Windows (typically 'C:\Documents_and_Settings\user\.friend\conf'). For example for Windows system the configuration line shoud look like MODELLEREXE=C:\\Program_Files\\Modeller8v2\\bin\\mod8v2.exe. Please note that double back-slashes on Windows '\\' are required for proper path recognition.

Writing your library for Friend

  • Friend is distributed along with C++ description (files with extension .hh) of abstract classes providing API to the internal structure of the application. All the files are located in the directory includes inside your installation directory.  A user can write a C++ code using the instances of these classes.
  • The code must be compiled into dynamically loaded library having extension .dll on Windows and .so on Linux.
  • Functions in the library which can be called by the application must be described in the following way:

    extern "C" __declspec(dllexport) void yourFunction(AMoleculeBody *body,ACommandLineParser *parser,std::ostream &_fout) -- on Windows;

    extern "C" void yourFunction(AMoleculeBody *body,ACommandLineParser *parser,std::ostream &_fout) -- on Linux;

  • The call to the library can be made by typing the following command in the Friend Command Line:

lib yourLibrary yourFunction [parameters]

             "lib test1 function1" and "lib test1 function2 @0 A @1 B"
  • See API for more details but make sure that you are using the API distributed with Friend installed on your machine.

Running Friend from another java class

  • The distributive of Friend includes the friend.jar file with all java classes used. The file can be found in your installation directory (C:\Program_Files\NEU\Friend -- default installation place on Windows). A user can call Friend from another java application.
  • The file contains the java code with example of calling Friend initialization class.
  • The following lines compile the code and run it

    javac -classpath friend.jar test_run.java

    java -classpath friend.jar:./ test_run

 
Underlying organization of the application

  • Friend consist of two modules: C++ module, and Java module.
  • C++ module contains function to perform analysis and visualization of protein/DNA 3D structure.
  • Java module contains functions to prefrom analysis and visualization of protein/DNA sequences/alignments. Java module also handels GUI.
  • Each of modules can run independently. The communication between modules is organized using JNI.
  • Quiries to external application and databases can be implemented in any of the two modules.
Friend architecture






































Abyzov A, Errami M, Leslin CM, Ilyin VA. Friend, an integrated analytical front-end application for bioinformatics. Bioinformatics. 2005 Sep 15(18):3677-8. PubMed
neu-logo         neu-logo

Wednesday 14th of May 2008 03:12:18 AM