forked from simonwhelan/prequal
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathZorroInterface.h
More file actions
31 lines (24 loc) · 976 Bytes
/
ZorroInterface.h
File metadata and controls
31 lines (24 loc) · 976 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/*
* ZorroInterface.h
*
* Created on: Oct 13, 2017
* Author: simon
*
* // Isolates all the mess in Zorro globals the here
*/
#ifndef ZORROINTERFACE_H_
#define ZORROINTERFACE_H_
extern "C" {
#define EXTERN extern
#include "hmm.h"
#undef EXTERN
}
void InitialiseZorro(std::vector <CSequence> *cpp_seq); // Get the memory that Zorro wants
double ** RunHMM(std::vector <CSequence> *cpp_seqs, std::string outFile, bool forceOverwrite = false); // C++ interaction function with Zorro
// Kmer stuff from PaHMM-Tree by Marcin Bogusz (https://github.com/marbogusz/paHMM-Tree)
void MakeKmers(std::vector <CSequence> *cpp_seqs);
void extractKmers(std::string& seq, std::unordered_map<std::string,short>* umap);
std::vector <double> MakeKmerDistanceRow(int CurSeq, std::vector <CSequence> *data);
unsigned int commonKmerCount(unsigned int i, unsigned int j);
std::vector <int> GetClosest(int Sequence, std::vector <CSequence> *data);
#endif /* ZORROINTERFACE_H_ */