RNAlib-2.0.2
|
00001 #ifndef __VIENNA_RNA_PACKAGE_FOLD_H__ 00002 #define __VIENNA_RNA_PACKAGE_FOLD_H__ 00003 00004 #include "data_structures.h" 00005 00006 #ifdef __GNUC__ 00007 #define DEPRECATED(func) func __attribute__ ((deprecated)) 00008 #else 00009 #define DEPRECATED(func) func 00010 #endif 00011 00021 extern int logML; 00022 00024 extern int uniq_ML; 00025 00027 extern int cut_point; 00028 00030 extern int eos_debug; 00031 00059 float fold( const char *sequence, 00060 char *structure); 00061 00073 float energy_of_structure(const char *string, 00074 const char *structure, 00075 int verbosity_level); 00076 00077 00091 int energy_of_structure_pt( const char *string, 00092 short *ptable, 00093 short *s, 00094 short *s1, 00095 int verbosity_level); 00096 00100 void free_arrays(void); 00101 00102 00108 void parenthesis_structure(char *structure, 00109 bondT *bp, 00110 int length); 00111 00118 void parenthesis_zuker( char *structure, 00119 bondT *bp, 00120 int length); 00121 00122 void letter_structure(char *structure, 00123 bondT *bp, 00124 int length); 00125 00126 00130 void update_fold_params(void); 00131 00135 char *backtrack_fold_from_pair(char *sequence, 00136 int i, 00137 int j); 00138 00142 int loop_energy(short *ptable, 00143 short *s, 00144 short *s1, 00145 int i); 00146 00150 void export_fold_arrays( int **f5_p, 00151 int **c_p, 00152 int **fML_p, 00153 int **fM1_p, 00154 int **indx_p, 00155 char **ptype_p); 00165 float circfold( const char *string, 00166 char *structure); 00167 00178 float energy_of_circ_structure( const char *string, 00179 const char *structure, 00180 int verbosity_level); 00181 00185 void export_circfold_arrays( int *Fc_p, 00186 int *FcH_p, 00187 int *FcI_p, 00188 int *FcM_p, 00189 int **fM2_p, 00190 int **f5_p, 00191 int **c_p, 00192 int **fML_p, 00193 int **fM1_p, 00194 int **indx_p, 00195 char **ptype_p); 00196 00214 void assign_plist_from_db(plist **pl, 00215 const char *struc, 00216 float pr); 00217 00218 /* finally moved the loop energy function declarations to this header... */ 00219 /* BUT: The functions only exist for backward compatibility reasons! */ 00220 /* You better include "loop_energies.h" and call the functions: */ 00221 /* E_Hairpin() and E_IntLoop() which are (almost) threadsafe as they get */ 00222 /* a pointer to the energy parameter datastructure as additional argument */ 00223 00228 DEPRECATED(int LoopEnergy(int n1, 00229 int n2, 00230 int type, 00231 int type_2, 00232 int si1, 00233 int sj1, 00234 int sp1, 00235 int sq1)); 00236 00241 DEPRECATED(int HairpinE(int size, 00242 int type, 00243 int si1, 00244 int sj1, 00245 const char *string)); 00246 00252 DEPRECATED(void initialize_fold(int length)); 00253 00268 DEPRECATED(float energy_of_struct(const char *string, 00269 const char *structure)); 00270 00287 DEPRECATED(int energy_of_struct_pt( const char *string, 00288 short *ptable, 00289 short *s, 00290 short *s1)); 00291 00306 DEPRECATED(float energy_of_circ_struct( const char *string, 00307 const char *structure)); 00308 00309 #endif