1 #ifndef __VIENNA_RNA_PACKAGE_PROFILEDIST_H__
2 #define __VIENNA_RNA_PACKAGE_PROFILEDIST_H__
5 #define DEPRECATED(func) func __attribute__ ((deprecated))
7 #define DEPRECATED(func) func
10 #include "data_structures.h"
12 /** \file profiledist.h */
15 * \brief Align the 2 probability profiles T1, T2\n
17 * This is like a Needleman-Wunsch alignment,
18 * we should really use affine gap-costs ala Gotoh
20 float profile_edit_distance(const float *T1,
24 * \brief condense pair probability matrix into a vector containing probabilities
25 * for unpaired, upstream paired and downstream paired.
27 * This resulting probability profile is used as input for profile_edit_distance
29 * \param bppm A pointer to the base pair probability matrix
30 * \param length The length of the sequence
31 * \returns The bp profile
33 float *Make_bp_profile_bppm(FLT_OR_DBL *bppm,
37 * \brief print string representation of probability profile
39 void print_bppm(const float *T);
42 * \brief free space allocated in Make_bp_profile
44 * Backward compatibility only. You can just use plain free()
46 void free_profile(float *T);
49 * \note This function is NOT threadsafe
51 * \see Make_bp_profile_bppm()
53 * \deprecated This function is deprecated and will be removed soon! See \ref Make_bp_profile_bppm() for a replacement
56 DEPRECATED(float *Make_bp_profile(int length));