RNAlib-2.5.0
subopt.h
Go to the documentation of this file.
1 /* subopt.h */
2 #ifndef VIENNA_RNA_PACKAGE_SUBOPT_H
3 #define VIENNA_RNA_PACKAGE_SUBOPT_H
4 
5 #ifdef VRNA_WARN_DEPRECATED
6 # if defined(__clang__)
7 # define DEPRECATED(func, msg) func __attribute__ ((deprecated("", msg)))
8 # elif defined(__GNUC__)
9 # define DEPRECATED(func, msg) func __attribute__ ((deprecated(msg)))
10 # else
11 # define DEPRECATED(func, msg) func
12 # endif
13 #else
14 # define DEPRECATED(func, msg) func
15 #endif
16 
32 
48 typedef void (vrna_subopt_callback)(const char *stucture,
49  float energy,
50  void *data);
51 
52 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
53 
58 typedef struct vrna_subopt_sol_s SOLUTION;
59 
60 #endif
61 
62 #include <stdio.h>
63 
66 #include <ViennaRNA/params/basic.h>
67 
68 
73  float energy;
74  char *structure;
75 };
76 
80 #define MAXDOS 1000
81 
89 #define VRNA_UNSORTED 0
90 #define VRNA_SORT_BY_ENERGY_LEXICOGRAPHIC_ASC 1
91 #define VRNA_SORT_BY_ENERGY_ASC 2
92 
125  int delta,
126  int sorted,
127  FILE *fp);
128 
129 
164 void
166  int delta,
168  void *data);
169 
170 
177 extern double print_energy;
178 
185 extern int subopt_sorted;
186 
203 extern int density_of_states[MAXDOS + 1];
204  /* End of group dos */
206 
207 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
208 
226 DEPRECATED(SOLUTION * subopt(char *seq, char *structure, int delta, FILE * fp),
227  "Use vrna_subopt() or vrna_subopt_cb() instead");
228 
234 DEPRECATED(SOLUTION *
235  subopt_par(char *seq, char *structure, vrna_param_t * parameters, int delta,
236  int is_constrained,
237  int is_circular, FILE * fp),
238  "Use vrna_subopt() or vrna_subopt_cb() instead");
239 
254 DEPRECATED(SOLUTION * subopt_circ(char *seq, char *sequence, int delta, FILE * fp),
255  "Use vrna_subopt() or vrna_subopt_cb() instead");
256 
271 DEPRECATED(SOLUTION * zukersubopt(const char *string),
272  "Use vrna_subopt_zuker() instead");
273 
282 DEPRECATED(SOLUTION * zukersubopt_par(const char *string, vrna_param_t * parameters),
283  "Use vrna_subopt_zuker() instead");
284 
285 
286 #endif
287 
288 #endif
Various data structures and pre-processor macros.
The Basic Fold Compound API.
int density_of_states[MAXDOS+1]
The Density of States.
The datastructure that contains temperature scaled energy parameters.
Definition: basic.h:57
The most basic data structure required by many functions throughout the RNAlib.
Definition: fold_compound.h:137
double print_energy
printing threshold for use with logML
SOLUTION * subopt(char *seq, char *structure, int delta, FILE *fp)
Returns list of subopt structures or writes to fp.
SOLUTION * subopt_circ(char *seq, char *sequence, int delta, FILE *fp)
Returns list of circular subopt structures or writes to fp.
int subopt_sorted
Sort output by energy.
void() vrna_subopt_callback(const char *stucture, float energy, void *data)
Callback for vrna_subopt_cb()
Definition: subopt.h:48
SOLUTION * subopt_par(char *seq, char *structure, vrna_param_t *parameters, int delta, int is_constrained, int is_circular, FILE *fp)
Returns list of subopt structures or writes to fp.
void vrna_subopt_cb(vrna_fold_compound_t *fc, int delta, vrna_subopt_callback *cb, void *data)
Generate suboptimal structures within an energy band arround the MFE.
vrna_subopt_solution_t * vrna_subopt(vrna_fold_compound_t *fc, int delta, int sorted, FILE *fp)
Returns list of subopt structures or writes to fp.
SOLUTION * zukersubopt(const char *string)
Compute Zuker type suboptimal structures.
SOLUTION * zukersubopt_par(const char *string, vrna_param_t *parameters)
Compute Zuker type suboptimal structures.
Functions to deal with sets of energy parameters.
Solution element from subopt.c.
Definition: subopt.h:72
char * structure
Structure in dot-bracket notation.
Definition: subopt.h:74
float energy
Free Energy of structure in kcal/mol.
Definition: subopt.h:73
#define MAXDOS
Maximum density of states discretization for subopt.
Definition: subopt.h:80