RNAlib-2.5.1
paths.h
Go to the documentation of this file.
1#ifndef VIENNA_RNA_PACKAGE_PATHS_H
2#define VIENNA_RNA_PACKAGE_PATHS_H
3
4#ifdef VRNA_WARN_DEPRECATED
5# if defined(__clang__)
6# define DEPRECATED(func, msg) func __attribute__ ((deprecated("", msg)))
7# elif defined(__GNUC__)
8# define DEPRECATED(func, msg) func __attribute__ ((deprecated(msg)))
9# else
10# define DEPRECATED(func, msg) func
11# endif
12#else
13# define DEPRECATED(func, msg) func
14#endif
15
42typedef struct vrna_path_s vrna_path_t;
43
44
49typedef struct vrna_path_options_s *vrna_path_options_t;
50
51
52#ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
53
59DEPRECATED(typedef struct vrna_path_s path_t,
60 "Use vrna_path_t instead!");
61
62#endif
63
66
71#define VRNA_PATH_TYPE_DOT_BRACKET 1U
72
77#define VRNA_PATH_TYPE_MOVES 2U
78
109 unsigned int type;
119 double en;
120 char *s;
122};
123
124
131void
133
134
141void
143
144
175 unsigned int type);
176
177
205 const char *s1,
206 const char *s2,
207 vrna_path_options_t options);
208
209
234 const char *s1,
235 const char *s2,
236 int maxE,
237 vrna_path_options_t options);
238
239
242#endif
The Basic Fold Compound API.
The most basic data structure required by many functions throughout the RNAlib.
Definition: fold_compound.h:148
An atomic representation of the transition / move from one structure to its neighbor.
Definition: move.h:73
vrna_path_options_t vrna_path_options_findpath(int width, unsigned int type)
Create options data structure for findpath direct (re-)folding path heuristic.
vrna_path_t * vrna_path_direct_ub(vrna_fold_compound_t *fc, const char *s1, const char *s2, int maxE, vrna_path_options_t options)
Determine an optimal direct (re-)folding path between two secondary structures.
vrna_path_t * vrna_path_direct(vrna_fold_compound_t *fc, const char *s1, const char *s2, vrna_path_options_t options)
Determine an optimal direct (re-)folding path between two secondary structures.
vrna_move_t move
Move that transforms the previous structure into it's next neighbor along the path.
Definition: paths.h:121
char * s
Secondary structure in dot-bracket notation.
Definition: paths.h:120
unsigned int type
The type of the path element.
Definition: paths.h:109
double en
Free energy of current structure.
Definition: paths.h:119
void vrna_path_free(vrna_path_t *path)
Release (free) memory occupied by a (re-)folding path.
void vrna_path_options_free(vrna_path_options_t options)
Release (free) memory occupied by an options data structure for (re-)folding path implementations.
struct vrna_path_options_s * vrna_path_options_t
Options data structure for (re-)folding path implementations.
Definition: paths.h:49
An element of a refolding path list.
Definition: paths.h:108
Methods to operate with structural neighbors of RNA secondary structures.