SW#
All Files Functions Variables Typedefs Macros
cpu_module.h
Go to the documentation of this file.
1 /*
2 swsharp - CUDA parallelized Smith Waterman with applying Hirschberg's and
3 Ukkonen's algorithm and dynamic cell pruning.
4 Copyright (C) 2013 Matija Korpar, contributor Mile Šikić
5 
6 This program is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10 
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15 
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
18 
19 Contact the author by mkorpar@gmail.com.
20 */
27 #ifndef __SW_SHARP_CPU_MODULEH__
28 #define __SW_SHARP_CPU_MODULEH__
29 
30 #include "alignment.h"
31 #include "chain.h"
32 #include "scorer.h"
33 
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37 
49 extern void alignPairCpu(Alignment** alignment, int type, Chain* query,
50  Chain* target, Scorer* scorer);
51 
67 extern void alignScoredPairCpu(Alignment** alignment, int type, Chain* query,
68  Chain* target, Scorer* scorer, int score);
69 
85 extern void nwFindScoreCpu(int* queryStart, int* targetStart, Chain* query,
86  Chain* target, Scorer* scorer, int score);
87 
108 extern void nwReconstructCpu(char** path, int* pathLen, int* outScore,
109  Chain* query, int queryFrontGap, int queryBackGap, Chain* target,
110  int targetFrontGap, int targetBackGap, Scorer* scorer, int score);
111 
126 extern void ovFindScoreCpu(int* queryStart, int* targetStart, Chain* query,
127  Chain* target, Scorer* scorer, int score);
128 
140 extern int scorePairCpu(int type, Chain* query, Chain* target, Scorer* scorer);
141 
142 #ifdef __cplusplus
143 }
144 #endif
145 #endif // __SW_SHARP_CPU_MODULEH__
int scorePairCpu(int type, Chain *query, Chain *target, Scorer *scorer)
Pairwise scoring function.
void nwFindScoreCpu(int *queryStart, int *targetStart, Chain *query, Chain *target, Scorer *scorer, int score)
Score finding function.
Provides object used for alignment scoring.
Pairwise sequnce alignment result storage header.
void alignScoredPairCpu(Alignment **alignment, int type, Chain *query, Chain *target, Scorer *scorer, int score)
Pairwise alignment function.
struct Scorer Scorer
Scorer object used for alignment scoring.
Definition: scorer.h:42
void alignPairCpu(Alignment **alignment, int type, Chain *query, Chain *target, Scorer *scorer)
Pairwise alignment function.
struct Alignment Alignment
Pairwise sequnce alignment result storage object.
Definition: alignment.h:79
Provides object for storing named sequnces.
void ovFindScoreCpu(int *queryStart, int *targetStart, Chain *query, Chain *target, Scorer *scorer, int score)
Implementation of score finding function.
void nwReconstructCpu(char **path, int *pathLen, int *outScore, Chain *query, int queryFrontGap, int queryBackGap, Chain *target, int targetFrontGap, int targetBackGap, Scorer *scorer, int score)
Needleman-Wunsch reconstruction implementation.
struct Chain Chain
Chain object used for storing named sequnces.
Definition: chain.h:43