RNAlib-2.2.7

Functions and data structures for handling of secondary structure hard constraints. More...

+ Include dependency graph for constraints_hard.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  vrna_hc_s
 The hard constraints data structure. More...
 
struct  vrna_hc_up_s
 A single hard constraint for a single nucleotide. More...
 

Macros

#define VRNA_CONSTRAINT_NO_HEADER   0
 do not print the header information line More...
 
#define VRNA_CONSTRAINT_DB   16384U
 Flag for vrna_constraints_add() to indicate that constraint is passed in pseudo dot-bracket notation. More...
 
#define VRNA_CONSTRAINT_DB_ENFORCE_BP   32768U
 Switch for dot-bracket structure constraint to enforce base pairs. More...
 
#define VRNA_CONSTRAINT_DB_PIPE   65536U
 Flag that is used to indicate the pipe '|' sign in pseudo dot-bracket notation of hard constraints. More...
 
#define VRNA_CONSTRAINT_DB_DOT   131072U
 dot '.' switch for structure constraints (no constraint at all) More...
 
#define VRNA_CONSTRAINT_DB_X   262144U
 'x' switch for structure constraint (base must not pair) More...
 
#define VRNA_CONSTRAINT_DB_ANG_BRACK   524288U
 angle brackets '<', '>' switch for structure constraint (paired downstream/upstream) More...
 
#define VRNA_CONSTRAINT_DB_RND_BRACK   1048576U
 round brackets '(',')' switch for structure constraint (base i pairs base j) More...
 
#define VRNA_CONSTRAINT_DB_INTRAMOL   2097152U
 Flag that is used to indicate the character 'l' in pseudo dot-bracket notation of hard constraints. More...
 
#define VRNA_CONSTRAINT_DB_INTERMOL   4194304U
 Flag that is used to indicate the character 'e' in pseudo dot-bracket notation of hard constraints. More...
 
#define VRNA_CONSTRAINT_DB_GQUAD   8388608U
 '+' switch for structure constraint (base is involved in a gquad) More...
 
#define VRNA_CONSTRAINT_DB_DEFAULT
 Switch for dot-bracket structure constraint with default symbols. More...
 
#define VRNA_CONSTRAINT_CONTEXT_EXT_LOOP   (char)0x01
 Hard constraints flag, base pair in the exterior loop.
 
#define VRNA_CONSTRAINT_CONTEXT_HP_LOOP   (char)0x02
 Hard constraints flag, base pair encloses hairpin loop.
 
#define VRNA_CONSTRAINT_CONTEXT_INT_LOOP   (char)0x04
 Hard constraints flag, base pair encloses an interior loop.
 
#define VRNA_CONSTRAINT_CONTEXT_INT_LOOP_ENC   (char)0x08
 Hard constraints flag, base pair encloses a multi branch loop.
 
#define VRNA_CONSTRAINT_CONTEXT_MB_LOOP   (char)0x10
 Hard constraints flag, base pair is enclosed in an interior loop.
 
#define VRNA_CONSTRAINT_CONTEXT_MB_LOOP_ENC   (char)0x20
 Hard constraints flag, base pair is enclosed in a multi branch loop.
 
#define VRNA_CONSTRAINT_CONTEXT_ALL_LOOPS
 Hard constraints flag, shortcut for all base pairs.
 

Typedefs

typedef struct vrna_hc_s vrna_hc_t
 Typename for the hard constraints data structure vrna_hc_s.
 
typedef struct vrna_hc_up_s vrna_hc_up_t
 Typename for the single nucleotide hard constraint data structure vrna_hc_up_s.
 
typedef char( vrna_callback_hc_evaluate) (int i, int j, int k, int l, char d, void *data)
 Callback to evaluate whether or not a particular decomposition step is contributing to the solution space. More...
 

Functions

void vrna_message_constraint_options (unsigned int option)
 Print a help message for pseudo dot-bracket structure constraint characters to stdout. (constraint support is specified by option parameter) More...
 
void vrna_message_constraint_options_all (void)
 Print structure constraint characters to stdout (full constraint support) More...
 
void vrna_hc_init (vrna_fold_compound_t *vc)
 Initialize/Reset hard constraints to default values. More...
 
void vrna_hc_add_up (vrna_fold_compound_t *vc, int i, char option)
 Make a certain nucleotide unpaired. More...
 
int vrna_hc_add_up_batch (vrna_fold_compound_t *vc, vrna_hc_up_t *constraints)
 Apply a list of hard constraints for single nucleotides. More...
 
void vrna_hc_add_bp (vrna_fold_compound_t *vc, int i, int j, char option)
 Favorize/Enforce a certain base pair (i,j) More...
 
void vrna_hc_add_bp_nonspecific (vrna_fold_compound_t *vc, int i, int d, char option)
 Enforce a nucleotide to be paired (upstream/downstream) More...
 
void vrna_hc_free (vrna_hc_t *hc)
 Free the memory allocated by a vrna_hc_t data structure. More...
 
int vrna_hc_add_from_db (vrna_fold_compound_t *vc, const char *constraint, unsigned int options)
 Add hard constraints from pseudo dot-bracket notation. More...
 
void print_tty_constraint (unsigned int option)
 Print structure constraint characters to stdout. (constraint support is specified by option parameter) More...
 
void print_tty_constraint_full (void)
 Print structure constraint characters to stdout (full constraint support) More...
 
void constrain_ptypes (const char *constraint, unsigned int length, char *ptype, int *BP, int min_loop_size, unsigned int idx_type)
 Insert constraining pair types according to constraint structure string. More...
 

Detailed Description

Functions and data structures for handling of secondary structure hard constraints.

Macro Definition Documentation

#define VRNA_CONSTRAINT_NO_HEADER   0

do not print the header information line

Deprecated:
This mode is not supported anymore!
#define VRNA_CONSTRAINT_DB_ANG_BRACK   524288U

angle brackets '<', '>' switch for structure constraint (paired downstream/upstream)

See also
vrna_hc_add_from_db(), vrna_constraints_add(), vrna_message_constraint_options(), vrna_message_constraint_options_all()

Function Documentation

void print_tty_constraint ( unsigned int  option)

Print structure constraint characters to stdout. (constraint support is specified by option parameter)

Deprecated:
Use vrna_message_constraints() instead!
Parameters
optionOption switch that tells which constraint help will be printed
void print_tty_constraint_full ( void  )

Print structure constraint characters to stdout (full constraint support)

Deprecated:
Use vrna_message_constraint_options_all() instead!
void constrain_ptypes ( const char *  constraint,
unsigned int  length,
char *  ptype,
int *  BP,
int  min_loop_size,
unsigned int  idx_type 
)

Insert constraining pair types according to constraint structure string.

Deprecated:
Do not use this function anymore! Structure constraints are now handled through vrna_hc_t and related functions.
Parameters
constraintThe structure constraint string
lengthThe actual length of the sequence (constraint may be shorter)
ptypeA pointer to the basepair type array
BP(not used anymore)
min_loop_sizeThe minimal loop size (usually TURN )
idx_typeDefine the access type for base pair type array (0 = indx, 1 = iindx)