1#ifndef VIENNA_RNA_PACKAGE_ALN_UTIL_H
2#define VIENNA_RNA_PACKAGE_ALN_UTIL_H
4#ifdef VRNA_WARN_DEPRECATED
6# define DEPRECATED(func, msg) func __attribute__ ((deprecated("", msg)))
7# elif defined(__GNUC__)
8# define DEPRECATED(func, msg) func __attribute__ ((deprecated(msg)))
10# define DEPRECATED(func, msg) func
13# define DEPRECATED(func, msg) func
35#define VRNA_ALN_DEFAULT 0U
41#define VRNA_ALN_RNA 1U
47#define VRNA_ALN_DNA 2U
53#define VRNA_ALN_UPPERCASE 4U
59#define VRNA_ALN_LOWERCASE 8U
66#define VRNA_MEASURE_SHANNON_ENTROPY 1U
68#ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
129 const char *structure,
134vrna_aln_pscore(
const char **alignment,
146 const unsigned int *frequencies,
216 unsigned int options);
235 const char *structure,
259 unsigned int options);
289#ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
295DEPRECATED(
int read_clustal(FILE *clust,
298 "Use vrna_file_msa_read() and vrna_file_msa_read_record() instead");
304DEPRECATED(
char *consensus(
const char *AS[]),
305 "Use vrna_aln_consensus_sequence() instead!");
311DEPRECATED(
char *consens_mis(
const char *AS[]),
312 "Use vrna_aln_consensus_mis() instead!");
318DEPRECATED(
char *get_ungapped_sequence(
const char *seq),
319 "Use vrna_seq_ungapped() instead!");
333DEPRECATED(
int get_mpi(
char *Alseq[],
337 "Use vrna_aln_mpi() instead");
367 "This function is obsolete");
390 unsigned short ***a2s,
393 "This function is obsolete");
415 unsigned short ***a2s,
417 "This fucntion is obsolete");
The Basic Fold Compound API.
void free_sequence_arrays(unsigned int n_seq, short ***S, short ***S5, short ***S3, unsigned short ***a2s, char ***Ss)
Free the memory of the sequence arrays used to deal with aligned sequences.
void alloc_sequence_arrays(const char **sequences, short ***S, short ***S5, short ***S3, unsigned short ***a2s, char ***Ss, int circ)
Allocate memory for sequence array used to deal with aligned sequences.
int get_mpi(char *Alseq[], int n_seq, int length, int *mini)
Get the mean pairwise identity in steps from ?to?(ident)
void encode_ali_sequence(const char *sequence, short *S, short *s5, short *s3, char *ss, unsigned short *as, int circ)
Get arrays with encoded sequence of the alignment.
char comp
1 iff pair is in mfe structure
Definition: alignments.h:100
unsigned j
nucleotide position j
Definition: alignments.h:96
float ent
Pseudo entropy for .
Definition: alignments.h:98
float p
Probability.
Definition: alignments.h:97
short bp[8]
Frequencies of pair_types.
Definition: alignments.h:99
unsigned i
nucleotide position i
Definition: alignments.h:95
vrna_pinfo_t * vrna_aln_pinfo(vrna_fold_compound_t *vc, const char *structure, double threshold)
Retrieve an array of vrna_pinfo_t structures from precomputed pair probabilities.
char ** vrna_aln_copy(const char **alignment, unsigned int options)
Make a copy of a multiple sequence alignment.
float * vrna_aln_conservation_col(const char **alignment, const vrna_md_t *md_p, unsigned int options)
Compute nucleotide conservation in an alignment.
char ** vrna_aln_slice(const char **alignment, unsigned int i, unsigned int j)
Slice out a subalignment from a larger alignment.
char ** vrna_aln_toRNA(const char **alignment)
Create a copy of an alignment where DNA alphabet is replaced by RNA alphabet.
float * vrna_aln_conservation_struct(const char **alignment, const char *structure, const vrna_md_t *md)
Compute base pair conservation of a consensus structure.
void vrna_aln_free(char **alignment)
Free memory occupied by a set of aligned sequences.
char * vrna_aln_consensus_sequence(const char **alignment, const vrna_md_t *md_p)
Compute the consensus sequence for a given multiple sequence alignment.
char * vrna_aln_consensus_mis(const char **alignment, const vrna_md_t *md_p)
Compute the Most Informative Sequence (MIS) for a given multiple sequence alignment.
int vrna_aln_mpi(const char **alignment)
Get the mean pairwise identity in steps from ?to?(ident)
char ** vrna_aln_uppercase(const char **alignment)
Create a copy of an alignment with only uppercase letters in the sequences.
A base pair info structure.
Definition: alignments.h:94
The most basic data structure required by many functions throughout the RNAlib.
Definition: fold_compound.h:148
int circ
backward compatibility variable.. this does not effect anything
The data structure that contains the complete model details used throughout the calculations.
Definition: model.h:180
int pairs
contains the number of base pairs in the last parsed structure.
The model details data structure and its corresponding modifiers.