Edlib  1.1.2.
Lightweight, super fast C/C++ library for sequence alignment using edit distance.
edlib.h
Go to the documentation of this file.
1 #ifndef EDLIB_H
2 #define EDLIB_H
3 
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13 
14 // Status codes
15 #define EDLIB_STATUS_OK 0
16 #define EDLIB_STATUS_ERROR 1
17 
21 typedef enum {
48 
52 typedef enum {
57 
63 typedef enum {
67 
68 // Edit operations.
69 #define EDLIB_EDOP_MATCH 0
70 #define EDLIB_EDOP_INSERT 1
71 #define EDLIB_EDOP_DELETE 2
72 #define EDLIB_EDOP_MISMATCH 3
73 
74 
75 
79  typedef struct {
86  int k;
87 
94  EdlibAlignMode mode;
95 
102  EdlibAlignTask task;
104 
109  EdlibAlignConfig edlibNewAlignConfig(int k, EdlibAlignMode mode, EdlibAlignTask task);
110 
116 
117 
121  typedef struct {
157  unsigned char* alignment;
167 
173 
174 
190  EdlibAlignResult edlibAlign(const char* query, int queryLength,
191  const char* target, int targetLength,
192  const EdlibAlignConfig config);
193 
194 
214  char* edlibAlignmentToCigar(const unsigned char* alignment, int alignmentLength,
215  EdlibCigarFormat cigarFormat);
216 
217 
218 
219 #ifdef __cplusplus
220 }
221 #endif
222 
223 #endif // EDLIB_H
int numLocations
Definition: edlib.h:144
Definition: edlib.h:46
Find edit distance, end locations and start locations and alignment path.
Definition: edlib.h:55
void edlibFreeAlignResult(EdlibAlignResult result)
int k
Definition: edlib.h:86
EdlibAlignTask
Definition: edlib.h:52
EdlibAlignMode mode
Definition: edlib.h:94
Match: 'M', Insertion: 'I', Deletion: 'D', Mismatch: 'M'.
Definition: edlib.h:64
int * startLocations
Definition: edlib.h:140
Definition: edlib.h:26
Find edit distance, end locations and start locations.
Definition: edlib.h:54
int editDistance
Definition: edlib.h:125
unsigned char * alignment
Definition: edlib.h:157
Match: '=', Insertion: 'I', Deletion: 'D', Mismatch: 'X'.
Definition: edlib.h:65
EdlibAlignResult edlibAlign(const char *query, int queryLength, const char *target, int targetLength, const EdlibAlignConfig config)
int alignmentLength
Definition: edlib.h:161
Definition: edlib.h:121
int * endLocations
Definition: edlib.h:132
EdlibAlignConfig edlibNewAlignConfig(int k, EdlibAlignMode mode, EdlibAlignTask task)
EdlibAlignMode
Definition: edlib.h:21
Find edit distance and end locations.
Definition: edlib.h:53
Configuration object for edlibAlign() function.
Definition: edlib.h:79
char * edlibAlignmentToCigar(const unsigned char *alignment, int alignmentLength, EdlibCigarFormat cigarFormat)
EdlibAlignTask task
Definition: edlib.h:102
Definition: edlib.h:34
EdlibCigarFormat
Definition: edlib.h:63
EdlibAlignConfig edlibDefaultAlignConfig(void)
int alphabetLength
Definition: edlib.h:165