19 #ifndef CLUSTALO_SEQ_H
20 #define CLUSTALO_SEQ_H
22 #include "squid/squid.h"
32 #define SEQTYPE_UNKNOWN kOtherSeq
33 #define SEQTYPE_DNA kDNA
34 #define SEQTYPE_RNA kRNA
35 #define SEQTYPE_PROTEIN kAmino
40 #define AMINOACID_ANY 'X'
41 #define NUCLEOTIDE_ANY 'N'
120 AddSeq(
mseq_t **prMSeqDest_p,
char *pcSeqName,
char *pcSeqRes);
133 int iSeqType,
int iSeqFmt,
bool bIsProfile,
bool bDealignInputSeqs,
134 int iMaxNumSeq,
int iMaxSeqLen);
152 WriteAlignment(
mseq_t *mseq,
const char *aln_outfile,
int msafile_format,
int iWrap,
bool bResno);
void NewMSeq(mseq_t **mseq)
allocate and initialise new mseq_t
Definition: seq.c:636
void AddSeq(mseq_t **prMSeqDest_p, char *pcSeqName, char *pcSeqRes)
Creates a new sequence entry and appends it to an existing mseq structure.
Definition: seq.c:1129
SQINFO * sqinfo
Squid's sequence info structure. Index range: 0–nseq-1.
Definition: seq.h:113
int seqtype
Definition: seq.h:49
int ReadSequences(mseq_t *prMSeq_p, char *pcSeqFile, int iSeqType, int iSeqFmt, bool bIsProfile, bool bDealignInputSeqs, int iMaxNumSeq, int iMaxSeqLen)
reads sequences from file
Definition: seq.c:420
bool aligned
Definition: seq.h:51
void AliStat(mseq_t *prMSeq, bool bSampling, bool bReportAll)
Stripped down version of squid's alistat.
Definition: seq.c:60
int WriteAlignment(mseq_t *mseq, const char *aln_outfile, int msafile_format, int iWrap, bool bResno)
Write alignment to file.
Definition: seq.c:796
char ** seq
Definition: seq.h:57
const char * SeqTypeToStr(int seqtype)
convert int-encoded iSeqType to string
Definition: seq.c:376
void LogSqInfo(SQINFO *sqinfo)
debug output of sqinfo struct
Definition: seq.c:327
void FreeMSeq(mseq_t **mseq)
Frees an mseq_t and it's members and zeros all members.
Definition: seq.c:737
int * tree_order
Definition: seq.h:67
void SeqSwap(mseq_t *mseq, int i, int j)
Swap two sequences in an mseq_t structure.
Definition: seq.c:262
void DealignMSeq(mseq_t *mseq)
Dealigns all sequences in mseq structure, updates the sequence length info and sets aligned to FALSE...
Definition: seq.c:302
void SortMSeqByLength(mseq_t *prMSeq, const char cOrder)
Sort sequences by length.
Definition: seq.c:969
char * filename
Definition: seq.h:50
int FindSeqName(char *seqname, mseq_t *mseq)
Definition: seq.c:711
int nseqs
Definition: seq.h:48
char ** orig_seq
Definition: seq.h:63
void ShuffleMSeq(mseq_t *prMSeq)
Shuffle mseq order.
Definition: seq.c:228
structure for storing multiple sequences
Definition: seq.h:47
void DealignSeq(char *seq)
Removes all gap-characters from a sequence.
Definition: seq.c:937
bool SeqsAreAligned(mseq_t *prMSeq, bool bIsProfile, bool bDealignInputSeqs)
Checks if sequences in given mseq structure are aligned. By definition this is only true...
Definition: seq.c:1024
void CopyMSeq(mseq_t **prMSeqDest_p, mseq_t *prMSeqSrc)
copies an mseq structure
Definition: seq.c:664
void JoinMSeqs(mseq_t **prMSeqDest_p, mseq_t *prMSeqToAdd)
Appends an mseq structure to an already existing one. filename will be left untouched.
Definition: seq.c:1187