Clustal Omega
1.1.0
Main Page
Data Structures
Files
File List
Globals
src
clustal-omega.h
Go to the documentation of this file.
1
/* -*- mode: c; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2
3
/*********************************************************************
4
* Clustal Omega - Multiple sequence alignment
5
*
6
* Copyright (C) 2010 University College Dublin
7
*
8
* Clustal-Omega is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License as
10
* published by the Free Software Foundation; either version 2 of the
11
* License, or (at your option) any later version.
12
*
13
* This file is part of Clustal-Omega.
14
*
15
********************************************************************/
16
17
/*
18
* RCS $Id: clustal-omega.h 212 2011-03-10 15:09:46Z andreas $
19
*/
20
21
#ifndef CLUSTALO_H
22
#define CLUSTALO_H
23
24
25
26
#ifdef HAVE_OPENMP
27
#include <omp.h>
28
#endif
29
30
#include "clustal-omega-config.h"
31
32
/* the following needs to be kept in sync with library_include_HEADERS of all
33
* subdir Makefile.am's
34
*/
35
36
/* hhalign */
37
#include "hhalign/general.h"
38
#include "hhalign/hhfunc.h"
39
40
41
/* clustal */
42
#include "
clustal/log.h
"
43
#include "
clustal/util.h
"
44
#include "
clustal/symmatrix.h
"
45
#include "
clustal/tree.h
"
46
#include "
clustal/seq.h
"
47
#include "
clustal/mbed.h
"
48
#include "
clustal/weights.h
"
49
#include "
clustal/pair_dist.h
"
50
#include "
clustal/hhalign_wrapper.h
"
51
52
53
54
#define CLUSTERING_UNKNOWN 0
55
#define CLUSTERING_UPGMA 1
56
57
/* weights will be computed if 1. but are not really used for now and they
58
* might slow things down. also, mbed's screws up branch lengths which will
59
* have a negative effect on weights
60
*/
61
#define USE_WEIGHTS 0
62
63
extern
int
iNumberOfThreads
;
64
65
72
typedef
struct
{
73
/* auto: Clustal (know what) is good for you
74
*/
75
bool
bAutoOptions
;
76
77
/* Distance matrix
78
*/
80
char
*
pcDistmatInfile
;
82
char
*
pcDistmatOutfile
;
83
84
/* Clustering / guide-tree
85
*/
87
int
iClusteringType
;
89
int
iPairDistType
;
91
bool
bUseMbed
;
93
bool
bUseMbedForIteration
;
95
char
*
pcGuidetreeOutfile
;
97
char
*
pcGuidetreeInfile
;
98
99
/* HMMs
100
*/
102
char
**
ppcHMMInput
;
105
int
iHMMInputFiles
;
106
107
/* Iteration
108
*/
110
int
iNumIterations
;
112
bool
bIterationsAuto
;
114
int
iMaxHMMIterations
;
116
int
iMaxGuidetreeIterations
;
117
118
hhalign_para
rHhalignPara
;
119
120
/* changes here will have to be reflected in FreeAlnOpts(),
121
* SetDefaultAlnOpts(), AlnOptsLogicCheck() etc
122
*/
123
}
opts_t
;
124
125
126
127
extern
void
128
PrintLongVersion
(
char
*pcStr,
int
iSize);
129
130
extern
void
131
SetDefaultAlnOpts
(
opts_t
*opts);
132
133
extern
void
134
FreeAlnOpts
(
opts_t
*aln_opts);
135
136
extern
void
137
AlnOptsLogicCheck
(
opts_t
*opts);
138
139
extern
void
140
PrintAlnOpts
(FILE *prFile,
opts_t
*opts);
141
142
extern
void
143
InitClustalOmega
(
int
iNumThreadsToUse);
144
145
extern
void
146
SequentialAlignmentOrder
(
int
**piOrderLR_p,
int
iNumSeq);
147
148
extern
int
149
AlignmentOrder
(
int
**piOrderLR_p,
double
**pdSeqWeights_p,
mseq_t
*prMSeq,
150
int
iPairDistType,
char
*pcDistmatInfile,
char
*pcDistmatOutfile,
151
int
iClusteringType,
char
*pcGuidetreeInfile,
char
*pcGuidetreeOutfile,
152
bool
bUseMBed);
153
154
extern
int
155
Align
(
mseq_t
*prMSeq,
156
mseq_t
*prMSeqProfile,
157
opts_t
*prOpts);
158
159
extern
int
160
AlignProfiles
(
mseq_t
*prMSeqProfile1,
161
mseq_t
*prMSeqProfile2, hhalign_para rHhalignPara);
162
163
#endif
Generated on Mon Mar 17 2014 12:54:43 for Clustal Omega by
1.8.1.2