RNAlib-2.4.3
SWIG Wrapper Notes

Below, you find an enumeration of special note on how functions, structures, enums, and macro definitions are wrapped.

Global vrna_aln_conservation_col (const char **alignment, const vrna_md_t *md_p, unsigned int options)
This function is available in an overloaded form where the last two parameters may be omitted, indicating md = NULL, and options = VRNA_MEASURE_SHANNON_ENTROPY, respectively.
Global vrna_aln_conservation_struct (const char **alignment, const char *structure, const vrna_md_t *md)
This function is available in an overloaded form where the last parameter may be omitted, indicating md = NULL
Global vrna_commands_apply (vrna_fold_compound_t *vc, vrna_cmd_t *commands, unsigned int options)
This function is attached as method commands_apply() to objects of type fold_compound
Global vrna_db_flatten (char *structure, unsigned int options)

This function flattens an input structure string in-place! The second parameter is optional and defaults to VRNA_BRACKETS_DEFAULT.

An overloaded version of this function exists, where an additional second parameter can be passed to specify the target brackets, i.e. the type of matching pair characters all brackets will be flattened to. Therefore, in the scripting language interface this function is a replacement for vrna_db_flatten_to().

Global vrna_db_flatten_to (char *string, const char target[3], unsigned int options)
This function is available as an overloaded version of vrna_db_flatten()
Global vrna_enumerate_necklaces (const unsigned int *type_counts)
This function is available as global function enumerate_necklaces() which accepts lists input, an produces list of lists output.
Global vrna_eval_covar_structure (vrna_fold_compound_t *vc, const char *structure)
This function is attached as method eval_covar_structure() to objects of type fold_compound
Global vrna_eval_hp_loop (vrna_fold_compound_t *vc, int i, int j)
This function is attached as method eval_hp_loop() to objects of type fold_compound
Global vrna_eval_int_loop (vrna_fold_compound_t *vc, int i, int j, int k, int l)
This function is attached as method eval_int_loop() to objects of type fold_compound
Global vrna_eval_loop_pt (vrna_fold_compound_t *vc, int i, const short *pt)
This function is attached as method eval_loop_pt() to objects of type fold_compound
Global vrna_eval_move (vrna_fold_compound_t *vc, const char *structure, int m1, int m2)
This function is attached as method eval_move() to objects of type fold_compound
Global vrna_eval_move_pt (vrna_fold_compound_t *vc, short *pt, int m1, int m2)
This function is attached as method eval_move_pt() to objects of type fold_compound
Global vrna_eval_structure (vrna_fold_compound_t *vc, const char *structure)
This function is attached as method eval_structure() to objects of type fold_compound
Global vrna_eval_structure_pt (vrna_fold_compound_t *vc, const short *pt)
This function is attached as method eval_structure_pt() to objects of type fold_compound
Global vrna_eval_structure_pt_verbose (vrna_fold_compound_t *vc, const short *pt, FILE *file)
This function is attached as method eval_structure_pt_verbose() to objects of type fold_compound
Global vrna_eval_structure_verbose (vrna_fold_compound_t *vc, const char *structure, FILE *file)
This function is attached as method eval_structure_verbose() to objects of type fold_compound
Global vrna_exp_params_rescale (vrna_fold_compound_t *vc, double *mfe)

This function is attached to vrna_fc_s objects as overloaded exp_params_rescale() method.

When no parameter is passed to this method, the resulting action is the same as passing NULL as second parameter to vrna_exp_params_rescale(), i.e. default scaling of the partition function. Passing an energy in kcal/mol, e.g. as retrieved by a previous call to the mfe() method, instructs all subsequent calls to scale the partition function accordingly.

Global vrna_exp_params_reset (vrna_fold_compound_t *vc, vrna_md_t *md_p)

This function is attached to vrna_fc_s objects as overloaded exp_params_reset() method.

When no parameter is passed to this method, the resulting action is the same as passing NULL as second parameter to vrna_exp_params_reset(), i.e. global default model settings are used. Passing an object of type vrna_md_s resets the fold compound according to the specifications stored within the vrna_md_s object.

Class vrna_fc_s

This data structure is wrapped as an object fold_compound with several related functions attached as methods.

A new fold_compound can be obtained by calling one of its constructors:

  • fold_compound(seq) – Initialize with a single sequence, or two concatenated sequences separated by an ampersand character '&' (for cofolding)
  • fold_compound(aln) – Initialize with a sequence alignment aln stored as a list of sequences (with gap characters)

The resulting object has a list of attached methods which in most cases directly correspond to functions that mainly operate on the corresponding C data structure:

  • type() – Get the type of the fold_compound (See vrna_fc_type_e)
  • length() – Get the length of the sequence(s) or alignment stored within the fold_compound
Global vrna_file_commands_apply (vrna_fold_compound_t *vc, const char *filename, unsigned int options)
This function is attached as method file_commands_apply() to objects of type fold_compound
Global vrna_file_msa_detect_format (const char *filename, unsigned int options)
This function exists as an overloaded version where the options parameter may be omitted! In that case, the options parameter defaults to VRNA_FILE_FORMAT_MSA_DEFAULT.
Global vrna_file_msa_read (const char *filename, char ***names, char ***aln, char **id, char **structure, unsigned int options)

In the target scripting language, only the first and last argument, filename and options, are passed to the corresponding function. The other arguments, which serve as output in the C-library, are available as additional return values. Hence, a function call in python may look like this:

num_seq, names, aln, id, structure = RNA.file_msa_read("msa.stk", RNA.FILE_FORMAT_MSA_STOCKHOLM)

After successfully reading the first record, the variable num_seq contains the number of sequences in the alignment (the actual return value of the C-function), while the variables names, aln, id, and structure are lists of the sequence names and aligned sequences, as well as strings holding the alignment ID and the structure as stated in the SS_cons line, respectively. Note, the last two return values may be empty strings in case the alignment does not provide the required data.

This function exists as an overloaded version where the options parameter may be omitted! In that case, the options parameter defaults to VRNA_FILE_FORMAT_MSA_STOCKHOLM.

Global vrna_file_msa_read_record (FILE *fp, char ***names, char ***aln, char **id, char **structure, unsigned int options)

In the target scripting language, only the first and last argument, fp and options, are passed to the corresponding function. The other arguments, which serve as output in the C-library, are available as additional return values. Hence, a function call in python may look like this:

f = open('msa.stk', 'r')
num_seq, names, aln, id, structure = RNA.file_msa_read_record(f, RNA.FILE_FORMAT_MSA_STOCKHOLM)
f.close()

After successfully reading the first record, the variable num_seq contains the number of sequences in the alignment (the actual return value of the C-function), while the variables names, aln, id, and structure are lists of the sequence names and aligned sequences, as well as strings holding the alignment ID and the structure as stated in the SS_cons line, respectively. Note, the last two return values may be empty strings in case the alignment does not provide the required data.

This function exists as an overloaded version where the options parameter may be omitted! In that case, the options parameter defaults to VRNA_FILE_FORMAT_MSA_STOCKHOLM.

Global vrna_file_msa_write (const char *filename, const char **names, const char **aln, const char *id, const char *structure, const char *source, unsigned int options)
In the target scripting language, this function exists as a set of overloaded versions, where the last four parameters may be omitted. If the options parameter is missing the options default to (VRNA_FILE_FORMAT_MSA_STOCKHOLM | VRNA_FILE_FORMAT_MSA_APPEND).
Global vrna_hc_add_from_db (vrna_fold_compound_t *vc, const char *constraint, unsigned int options)
This function is attached as method hc_add_from_db() to objects of type fold_compound
Global vrna_hc_init (vrna_fold_compound_t *vc)
This function is attached as method hc_init() to objects of type fold_compound
Class vrna_md_s

This data structure is wrapped as an object md with multiple related functions attached as methods.

A new set of default parameters can be obtained by calling the constructure of md:

  • md() – Initialize with default settings

The resulting object has a list of attached methods which directly correspond to functions that mainly operate on the corresponding C data structure:

Note, that default parameters can be modified by directly setting any of the following global variables. Internally, getting/setting default parameters using their global variable representative translates into calls of the following functions, therefore these wrappers for these functions do not exist in the scripting language interface(s):

global variable C getter C setter
temperature vrna_md_defaults_temperature_get() vrna_md_defaults_temperature()
dangles vrna_md_defaults_dangles_get() vrna_md_defaults_dangles()
betaScale vrna_md_defaults_betaScale_get() vrna_md_defaults_betaScale()
tetra_loop this is an alias of special_hp
special_hp vrna_md_defaults_special_hp_get() vrna_md_defaults_special_hp()
noLonelyPairs this is an alias of noLP
noLP vrna_md_defaults_noLP_get() vrna_md_defaults_noLP()
noGU vrna_md_defaults_noGU_get() vrna_md_defaults_noGU()
no_closingGU this is an alias of noGUclosure
noGUclosure vrna_md_defaults_noGUclosure_get() vrna_md_defaults_noGUclosure()
logML vrna_md_defaults_logML_get() vrna_md_defaults_logML()
circ vrna_md_defaults_circ_get() vrna_md_defaults_circ()
gquad vrna_md_defaults_gquad_get() vrna_md_defaults_gquad()
uniq_ML vrna_md_defaults_uniq_ML_get() vrna_md_defaults_uniq_ML()
energy_set vrna_md_defaults_energy_set_get() vrna_md_defaults_energy_set()
backtrack vrna_md_defaults_backtrack_get() vrna_md_defaults_backtrack()
backtrack_type vrna_md_defaults_backtrack_type_get() vrna_md_defaults_backtrack_type()
do_backtrack this is an alias of compute_bpp
compute_bpp vrna_md_defaults_compute_bpp_get() vrna_md_defaults_compute_bpp()
max_bp_span vrna_md_defaults_max_bp_span_get() vrna_md_defaults_max_bp_span()
min_loop_size vrna_md_defaults_min_loop_size_get() vrna_md_defaults_min_loop_size()
window_size vrna_md_defaults_window_size_get() vrna_md_defaults_window_size()
oldAliEn vrna_md_defaults_oldAliEn_get() vrna_md_defaults_oldAliEn()
ribo vrna_md_defaults_ribo_get() vrna_md_defaults_ribo()
cv_fact vrna_md_defaults_cv_fact_get() vrna_md_defaults_cv_fact()
nc_fact vrna_md_defaults_nc_fact_get() vrna_md_defaults_nc_fact()
sfact vrna_md_defaults_sfact_get() vrna_md_defaults_sfact()
Global vrna_mean_bp_distance (vrna_fold_compound_t *vc)
This function is attached as method mean_bp_distance() to objects of type fold_compound
Global vrna_mfe (vrna_fold_compound_t *vc, char *structure)
This function is attached as method mfe() to objects of type fold_compound
Global vrna_mfe_dimer (vrna_fold_compound_t *vc, char *structure)
This function is attached as method mfe_dimer() to objects of type fold_compound
Global vrna_mfe_window (vrna_fold_compound_t *vc, FILE *file)
This function is attached as method mfe_window() to objects of type fold_compound
Global vrna_params_reset (vrna_fold_compound_t *vc, vrna_md_t *md_p)

This function is attached to vrna_fc_s objects as overloaded params_reset() method.

When no parameter is passed to this method, the resulting action is the same as passing NULL as second parameter to vrna_params_reset(), i.e. global default model settings are used. Passing an object of type vrna_md_s resets the fold compound according to the specifications stored within the vrna_md_s object.

Global vrna_params_subst (vrna_fold_compound_t *vc, vrna_param_t *par)
This function is attached to vrna_fc_s objects as params_subst() method.
Global vrna_pbacktrack (vrna_fold_compound_t *vc)
This function is attached as overloaded method pbacktrack() to objects of type fold_compound that accepts an optional length argument. Hence, it serves as a replacement for vrna_pbacktrack().
Global vrna_pbacktrack5 (vrna_fold_compound_t *vc, int length)
This function is attached as overloaded method pbacktrack() to objects of type fold_compound
Global vrna_pf (vrna_fold_compound_t *vc, char *structure)
This function is attached as method pf() to objects of type fold_compound
Global vrna_pf_dimer (vrna_fold_compound_t *vc, char *structure)
This function is attached as method pf_dimer() to objects of type fold_compound
Global vrna_sc_add_bp (vrna_fold_compound_t *vc, int i, int j, FLT_OR_DBL energy, unsigned int options)

This function is attached as an overloaded method sc_add_bp() to objects of type fold_compound. The method either takes arguments for a single base pair (i,j) with the corresponding energy value:

fold_compound.sc_add_bp(i, j, energy, options)

or an entire 2-dimensional matrix with dimensions n x n that stores free energy contributions for any base pair (i,j) with $ 1 \leq i < j \leq n $:

fold_compound.sc_add_bp(matrix, options)

In both variants, the options argument is optional can may be omitted.

Global vrna_sc_add_bt (vrna_fold_compound_t *vc, vrna_callback_sc_backtrack *f)
This function is attached as method sc_add_bt() to objects of type fold_compound
Global vrna_sc_add_data (vrna_fold_compound_t *vc, void *data, vrna_callback_free_auxdata *free_data)
This function is attached as method sc_add_data() to objects of type fold_compound
Global vrna_sc_add_exp_f (vrna_fold_compound_t *vc, vrna_callback_sc_exp_energy *exp_f)
This function is attached as method sc_add_exp_f() to objects of type fold_compound
Global vrna_sc_add_f (vrna_fold_compound_t *vc, vrna_callback_sc_energy *f)
This function is attached as method sc_add_f() to objects of type fold_compound
Global vrna_sc_add_hi_motif (vrna_fold_compound_t *vc, const char *seq, const char *structure, FLT_OR_DBL energy, unsigned int options)
This function is attached as method sc_add_hi_motif() to objects of type fold_compound
Global vrna_sc_add_SHAPE_deigan (vrna_fold_compound_t *vc, const double *reactivities, double m, double b, unsigned int options)
This function is attached as method sc_add_SHAPE_deigan() to objects of type fold_compound
Global vrna_sc_add_SHAPE_deigan_ali (vrna_fold_compound_t *vc, const char **shape_files, const int *shape_file_association, double m, double b, unsigned int options)
This function is attached as method sc_add_SHAPE_deigan_ali() to objects of type fold_compound
Global vrna_sc_add_SHAPE_zarringhalam (vrna_fold_compound_t *vc, const double *reactivities, double b, double default_value, const char *shape_conversion, unsigned int options)
This function is attached as method sc_add_SHAPE_zarringhalam() to objects of type fold_compound
Global vrna_sc_add_up (vrna_fold_compound_t *vc, int i, FLT_OR_DBL energy, unsigned int options)
This function is attached as an overloaded method sc_add_up() to objects of type fold_compound. The method either takes arguments for a single nucleotide $i $ with the corresponding energy value:
fold_compound.sc_add_up(i, energy, options)
or an entire vector that stores free energy contributions for each nucleotide $i $ with $ 1 \leq i \leq n $:
fold_compound.sc_add_bp(vector, options)
In both variants, the options argument is optional can may be omitted.
Global vrna_sc_init (vrna_fold_compound_t *vc)
This function is attached as method sc_init() to objects of type fold_compound
Global vrna_sc_remove (vrna_fold_compound_t *vc)
This function is attached as method sc_remove() to objects of type fold_compound
Global vrna_sc_set_bp (vrna_fold_compound_t *vc, const FLT_OR_DBL **constraints, unsigned int options)
This function is attached as method sc_set_bp() to objects of type fold_compound
Global vrna_sc_set_up (vrna_fold_compound_t *vc, const FLT_OR_DBL *constraints, unsigned int options)
This function is attached as method sc_set_up() to objects of type fold_compound
Global vrna_subopt (vrna_fold_compound_t *vc, int delta, int sorted, FILE *fp)
This function is attached as method subopt() to objects of type fold_compound
Global vrna_subopt_cb (vrna_fold_compound_t *vc, int delta, vrna_subopt_callback *cb, void *data)
This function is attached as method subopt_cb() to objects of type fold_compound
Global vrna_subopt_zuker (vrna_fold_compound_t *vc)
This function is attached as method subopt_zuker() to objects of type fold_compound
Global vrna_ud_add_motif (vrna_fold_compound_t *vc, const char *motif, double motif_en, unsigned int loop_type)
This function is attached as method ud_add_motif() to objects of type fold_compound
Global vrna_ud_remove (vrna_fold_compound_t *vc)
This function is attached as method ud_remove() to objects of type fold_compound
Global vrna_ud_set_data (vrna_fold_compound_t *vc, void *data, vrna_callback_free_auxdata *free_cb)
This function is attached as method ud_set_data() to objects of type fold_compound
Global vrna_ud_set_exp_prod_rule_cb (vrna_fold_compound_t *vc, vrna_callback_ud_exp_production *pre_cb, vrna_callback_ud_exp_energy *exp_e_cb)
This function is attached as method ud_set_exp_prod_rule_cb() to objects of type fold_compound
Global vrna_ud_set_prob_cb (vrna_fold_compound_t *vc, vrna_callback_ud_probs_add *setter, vrna_callback_ud_probs_get *getter)
This function is attached as method ud_set_prob_cb() to objects of type fold_compound
Global vrna_ud_set_prod_rule_cb (vrna_fold_compound_t *vc, vrna_callback_ud_production *pre_cb, vrna_callback_ud_energy *e_cb)
This function is attached as method ud_set_prod_rule_cb() to objects of type fold_compound