#include <assert.h>#include "clustal-omega.h"#include "clustal-omega-config.h"#include "hhalign/general.h"#include "hhalign/hhfunc.h"#include "clustal/log.h"#include "clustal/util.h"#include "clustal/symmatrix.h"#include "clustal/tree.h"#include "clustal/seq.h"#include "clustal/mbed.h"#include "clustal/weights.h"#include "clustal/pair_dist.h"#include "clustal/hhalign_wrapper.h"| Defines | |
| #define | INDIRECT_HMM 0 | 
| #define | USEHMMER 1 | 
| #define | USEHHMAKE (!USEHMMER) | 
| #define | SHUFFLE_INPUT_SEQ_ORDER 0 | 
| #define | SORT_INPUT_SEQS 0 | 
| #define | PRINT_TAIL 5 | 
| Functions | |
| void | PrintLongVersion (char *pcStr, int iSize) | 
| Print Long version information to pre-allocated char. | |
| void | FreeAlnOpts (opts_t *prAlnOpts) | 
| free aln opts members | |
| void | SetDefaultAlnOpts (opts_t *prOpts) | 
| Sets members of given user opts struct to default values. | |
| void | AlnOptsLogicCheck (opts_t *prOpts) | 
| Check logic of parsed user options. Will exit (call Log(&rLog, LOG_FATAL, )) on Fatal logic error. | |
| void | PrintAlnOpts (FILE *prFile, opts_t *prOpts) | 
| FIXME doc. | |
| int | HmmerVersion () | 
| Returns major version of HMMER. Whichever hmmbuild version is found first in your PATH will be used. | |
| int | AlnToHHMFile (mseq_t *prMSeq, char *pcHMMOut) | 
| Create a HHM file from aligned sequences. | |
| int | AlnToHMMFile (mseq_t *prMSeq, const char *pcHMMOut) | 
| Create a HMM file from aligned sequences. | |
| int | AlnToHMM (hmm_light *prHMM, mseq_t *prMSeq) | 
| Convert a multiple sequence structure into a HMM. | |
| void | InitClustalOmega (int iNumThreadsRequested) | 
| FIXME. | |
| void | SequentialAlignmentOrder (int **piOrderLR_p, int iNumSeq) | 
| Defines an alignment order, which adds sequences sequentially, i.e. one at a time starting with seq 1 & 2. | |
| int | AlignmentOrder (int **piOrderLR_p, double **pdSeqWeights_p, mseq_t *prMSeq, int iPairDistType, char *pcDistmatInfile, char *pcDistmatOutfile, int iClusteringType, char *pcGuidetreeInfile, char *pcGuidetreeOutfile, bool bUseMbed) | 
| Defines the alignment order by calculating a guide tree. In a first-step pairwise distances will be calculated (or read from a file). In a second step those distances will be clustered and a guide-tree created. Steps 1 and 2 will be skipped if a guide-tree file was given, in which case the guide-tree will be just read from the file. | |
| void | SetAutoOptions (opts_t *prOpts, int iNumSeq) | 
| Set some options automatically based on number of sequences. Might overwrite some user-set options. | |
| int | Align (mseq_t *prMSeq, mseq_t *prMSeqProfile, opts_t *prOpts) | 
| The main alignment function which wraps everything else. | |
| int | AlignProfiles (mseq_t *prMSeqProfile1, mseq_t *prMSeqProfile2, hhalign_para rHhalignPara) | 
| Align two profiles, ie two sets of prealigned sequences. Already aligned columns won't be changed. | |
| Variables | |
| int | iNumberOfThreads | 
| #define INDIRECT_HMM 0 | 
| #define PRINT_TAIL 5 | 
| #define SHUFFLE_INPUT_SEQ_ORDER 0 | 
| #define SORT_INPUT_SEQS 0 | 
| #define USEHHMAKE (!USEHMMER) | 
| #define USEHMMER 1 | 
The main alignment function which wraps everything else.
| [out] | prMSeq | *the* multiple sequences structure | 
| [in] | prMSeqProfile | optional profile to align against | 
| [in] | prOpts | alignment options to use | 
| int AlignmentOrder | ( | int ** | piOrderLR_p, | |
| double ** | pdSeqWeights_p, | |||
| mseq_t * | prMSeq, | |||
| int | iPairDistType, | |||
| char * | pcDistmatInfile, | |||
| char * | pcDistmatOutfile, | |||
| int | iClusteringType, | |||
| char * | pcGuidetreeInfile, | |||
| char * | pcGuidetreeOutfile, | |||
| bool | bUseMbed | |||
| ) | 
Defines the alignment order by calculating a guide tree. In a first-step pairwise distances will be calculated (or read from a file). In a second step those distances will be clustered and a guide-tree created. Steps 1 and 2 will be skipped if a guide-tree file was given, in which case the guide-tree will be just read from the file.
| [out] | piOrderLR_p | order in which nodes/profiles are to be merged/aligned | 
| [out] | pdSeqWeights_p | Sequence weights | 
| [out] | pdSeqWeights_p | Sequence weights | 
| [in] | prMSeq | The sequences from which the alignment order is to be calculated | 
| [in] | iPairDistType | Method of pairwise distance comparison | 
| [in] | pcDistmatInfile | If not NULL distances will be read from this file instead of being calculated | 
| [in] | pcDistmatOutfile | If not NULL computed pairwise distances will be written to this file | 
| [in] | iClusteringType | Clustering method to be used to cluster the pairwise distances | 
| [in] | pcGuidetreeInfile | If not NULL guidetree will be read from this file. Skips pairwise distance and guidetree computation | 
| [in] | pcGuidetreeOutfile | If not NULL computed guidetree will be written to this file | 
| [in] | bUseMbed | If TRUE, fast mBed guidetree computation will be employed | 
Align two profiles, ie two sets of prealigned sequences. Already aligned columns won't be changed.
| [out] | prMSeqProfile1 | First profile/aligned set of sequences. Merged alignment will be found in here. | 
| [in] | prMSeqProfile2 | First profile/aligned set of sequences | 
| [in] | rHhalignPara | FIXME | 
| void AlnOptsLogicCheck | ( | opts_t * | prOpts | ) | 
Check logic of parsed user options. Will exit (call Log(&rLog, LOG_FATAL, )) on Fatal logic error.
| [in] | prOpts | Already parsed user options | 
| int AlnToHHMFile | ( | mseq_t * | prMSeq, | |
| char * | pcHMMOut | |||
| ) | 
Create a HHM file from aligned sequences.
| [in] | prMSeq | Aligned mseq_t | 
| [in] | pcHMMOut | HMM output file name | 
| int AlnToHMM | ( | hmm_light * | prHMM, | |
| mseq_t * | prMSeq | |||
| ) | 
Convert a multiple sequence structure into a HMM.
| [out] | prHMM | Pointer to preallocted HMM which will be set here | 
| [in] | prMSeq | Pointer to an alignment | 
| int AlnToHMMFile | ( | mseq_t * | prMSeq, | |
| const char * | pcHMMOut | |||
| ) | 
Create a HMM file from aligned sequences.
| [in] | prMSeq | Aligned mseq_t | 
| [in] | pcHMMOut | HMM output file name | 
| void FreeAlnOpts | ( | opts_t * | prAlnOpts | ) | 
free aln opts members
| int HmmerVersion | ( | ) | 
Returns major version of HMMER. Whichever hmmbuild version is found first in your PATH will be used.
| void InitClustalOmega | ( | int | iNumThreadsRequested | ) | 
FIXME.
| void PrintAlnOpts | ( | FILE * | prFile, | |
| opts_t * | prOpts | |||
| ) | 
FIXME doc.
| void PrintLongVersion | ( | char * | pcStr, | |
| int | iSize | |||
| ) | 
Print Long version information to pre-allocated char.
| [out] | pcStr | char pointer to write to preallocated to hold iSize chars. | 
| [in] | iSize | size of pcStr | 
| void SequentialAlignmentOrder | ( | int ** | piOrderLR_p, | |
| int | iNumSeq | |||
| ) | 
Defines an alignment order, which adds sequences sequentially, i.e. one at a time starting with seq 1 & 2.
| [out] | piOrderLR_p | order in which nodes/profiles are to be merged/aligned | 
| [in] | iNumSeq | Number of sequences | 
| void SetAutoOptions | ( | opts_t * | prOpts, | |
| int | iNumSeq | |||
| ) | 
Set some options automatically based on number of sequences. Might overwrite some user-set options.
| [out] | prOpts | Pointer to alignment options structure | 
| [in] | iNumSeq | Number of sequences to align | 
| void SetDefaultAlnOpts | ( | opts_t * | prOpts | ) | 
Sets members of given user opts struct to default values.
| [out] | prOpts | User opt struct to initialise | 
| int iNumberOfThreads | 
 1.6.3
 1.6.3