#include <ViennaRNA/constraints_hard.h>
The hard constraints data structure. More…
// fields vrna_hc_type_e type unsigned int n unsigned char* matrix unsigned char** matrix_local unsigned char* up_storage vrna_hc_bp_storage_t** bp_storage int* up_ext int* up_hp int* up_int int* up_ml vrna_callback_hc_evaluate* f void* data vrna_callback_free_auxdata* free_data
The content of this data structure determines the decomposition pattern used in the folding recursions. Attribute ‘matrix’ is used as source for the branching pattern of the decompositions during all folding recursions. Any entry in matrix[i,j] consists of the 6 LSB that allows one to distinguish the following types of base pairs:
The four linear arrays ‘up_xxx’ provide the number of available unpaired nucleotides (including position i) 3’ of each position in the sequence.
unsigned char* matrix
int* up_ext
int* up_hp
int* up_int
int* up_ml
vrna_callback_hc_evaluate* f
void* data
vrna_callback_free_auxdata* free_data