File: Variation.h

package info (click to toggle)
rna-star 2.7.8a%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 3,076 kB
  • sloc: cpp: 20,429; awk: 483; ansic: 470; makefile: 181; sh: 31
file content (53 lines) | stat: -rw-r--r-- 1,397 bytes parent folder | download | duplicates (2)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#ifndef CODE_Variation
#define CODE_Variation

#include "IncludeDefine.h"
#include "Parameters.h"
#include <array>

// struct SNPnt
// {
//     char ref;
//     char a1;
//     char a2;
// };

class SNP
{
public:
    uint32 N; //number of snps
    uint* loci; //snp coordinates
    vector<uint> lociV; //snp coordinates vector
//     SNPnt* nt; //reference and alternative bases
//     char **nt; //reference and alternative bases
//     char *nt1; //1D array to store nt
    vector<array<char,3>> nt;//reference and alternative bases

    //methods
    void snpOnBlocks(uint blockStart, uint blockL, int blockShift, vector<vector<array<int,2>>> &snpV);
};

class Variation
{
public:
    //methods
    Variation (Parameters &Pin, vector <uint> &chrStart, map <string,uint> &chrNameIndex); //create transcriptome structure, load and initialize parameters
    void loadVCF(string fileIn); //load VCF file
    vector<vector<array<int,2>>> sjdbSnp(uint sjStart, uint sjEnd, uint sjdbOverhang1); //calculates snp loci in sjdb sequences

    //variables
    bool yes;
    SNP snp;

    Parameters &P; //TODO: make this private

private:
    string vcfFile;
    //string varOutFileName;
    //ofstream varOutStream;//output file for variations

    vector <uint> &chrStart; //this needs to be replaced with a structure that contains basic genome variables
    map <string,uint> &chrNameIndex;
};

#endif