ContextSV 0.0.1
Integrative SV calling.
All Classes Files Functions Variables Typedefs Macros
types.h
Go to the documentation of this file.
1// This file contains all the type definitions used in the project
2
3#ifndef TYPES_H
4#define TYPES_H
5
7#include <string>
8#include <vector>
9#include <map>
11
12// CNV candidate location map
13// (chr, snp_pos) : cnv_type
14using SNPLocation = std::pair<std::string, int>;
15using SNPToCNVMap = std::map<SNPLocation, int>;
16
17// SV candidate read depth map. An SV is defined by its location, type, and
18// alternate allele.
19// (chr, start, end, sv_type, alt_allele) : (ref_allele, num_reads)
20using SVCandidate = std::tuple<std::string, int, int, std::string>; // chr, start, end, alt_allele
21using SVInfo = std::pair<int, int>; // SV type, read depth
22using SVDepthMap = std::map<SVCandidate, SVInfo>; // Map for getting type and read depth of SV candidates
23
24// SV calling:
25// Alignment location (chr, start, end, depth)
26using AlignmentData = std::tuple<std::string, int, int, int>;
27using AlignmentVector = std::vector<AlignmentData>;
28
29// Query map (query name, alignment vector)
30using QueryMap = std::map<std::string, AlignmentVector>;
31
32#endif // TYPES_H
std::map< SNPLocation, int > SNPToCNVMap
Definition types.h:15
std::map< SVCandidate, SVInfo > SVDepthMap
Definition types.h:22
std::pair< std::string, int > SNPLocation
Definition types.h:14
std::tuple< std::string, int, int, int > AlignmentData
Definition types.h:26
std::map< std::string, AlignmentVector > QueryMap
Definition types.h:30
std::tuple< std::string, int, int, std::string > SVCandidate
Definition types.h:20
std::vector< AlignmentData > AlignmentVector
Definition types.h:27
std::pair< int, int > SVInfo
Definition types.h:21