RNAlib-2.4.14
neighbor.h
Go to the documentation of this file.
1 #ifndef VIENNA_RNA_PACKAGE_NEIGHBOR_H
2 #define VIENNA_RNA_PACKAGE_NEIGHBOR_H
3 
111 #include <ViennaRNA/fold_compound.h>
113 
125  vrna_move_t neighbor,
126  unsigned int state,
127  void *data);
128 
129 
135 #define VRNA_NEIGHBOR_CHANGE 1
136 
137 
143 #define VRNA_NEIGHBOR_INVALID 2
144 
145 
151 #define VRNA_NEIGHBOR_NEW 3
152 
153 
165 void
166 vrna_loopidx_update(int *loopidx,
167  const short *pt,
168  int length,
169  const vrna_move_t *m);
170 
171 
187 vrna_move_t *
189  const short *pt,
190  unsigned int options);
191 
192 
214 vrna_move_t *
216  const vrna_move_t *curr_move,
217  const short *prev_pt,
218  const vrna_move_t *prev_neighbors,
219  int size_prev_neighbors,
220  int *size_neighbors,
221  unsigned int options);
222 
223 
245 int
247  short *ptable,
248  vrna_move_t move,
250  void *data,
251  unsigned int options);
252 
253 
270 vrna_move_t *
272  short *ptable,
273  vrna_move_t move,
274  vrna_move_t **invalid_moves,
275  unsigned int options);
276 
277 
281 #endif /* VIENNA_RNA_PACKAGE_NEIGHBOR_H */
int vrna_move_neighbor_diff_cb(vrna_fold_compound_t *fc, short *ptable, vrna_move_t move, vrna_callback_move_update *cb, void *data, unsigned int options)
Apply a move to a secondary structure and indicate which neighbors have changed consequentially.
void vrna_loopidx_update(int *loopidx, const short *pt, int length, const vrna_move_t *m)
Alters the loopIndices array that was constructed with vrna_loopidx_from_ptable().
The most basic data structure required by many functions throughout the RNAlib.
Definition: fold_compound.h:132
vrna_move_t * vrna_neighbors(vrna_fold_compound_t *vc, const short *pt, unsigned int options)
Generate neighbors of a secondary structure.
vrna_move_t * vrna_neighbors_successive(const vrna_fold_compound_t *vc, const vrna_move_t *curr_move, const short *prev_pt, const vrna_move_t *prev_neighbors, int size_prev_neighbors, int *size_neighbors, unsigned int options)
Generate neighbors of a secondary structure (the fast way)
void( vrna_callback_move_update)(vrna_fold_compound_t *fc, vrna_move_t neighbor, unsigned int state, void *data)
Prototype of the neighborhood update callback.
Definition: neighbor.h:124
Methods to operate with structural neighbors of RNA secondary structures.
vrna_move_t * vrna_move_neighbor_diff(vrna_fold_compound_t *fc, short *ptable, vrna_move_t move, vrna_move_t **invalid_moves, unsigned int options)
Apply a move to a secondary structure and indicate which neighbors have changed consequentially.
The Basic Fold Compound API.
An atomic representation of the transition / move from one structure to its neighbor.
Definition: move.h:73