forked from sgusev/GERMLINE
-
Notifications
You must be signed in to change notification settings - Fork 0
/
HMIndividualsExtractor.h
43 lines (34 loc) · 1.07 KB
/
HMIndividualsExtractor.h
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
#ifndef HMINDIVIDUALSEXTRACTOR_H
#define HMINDIVIDUALSEXTRACTOR_H
#include "BasicDefinitions.h"
#include "NucleotideMap.h"
#include "PolymorphicIndividualsExtractor.h"
#include <string>
using namespace std;
class HMIndividualsExtractor : public PolymorphicIndividualsExtractor
{
public:
// HAPSIndividualsExtractor(): default constructor
// Precondition: None.
// Postcondition: inputFile has been obtained from user
// and snps has been populated.
HMIndividualsExtractor();
// getInput(): gets input from .haps file
// Precondition: Input is a .haps file in a valid format
// Postcondition: inds points to individuals from
// .haps file
void getInput();
void loadInput();
void getCompleteMarkerSet(Individual * p);
void getCompleteMarkerSet(Individual * p0 , Individual * p1 );
private:
void getIndividuals();
void loadMarkerSet( streamoff offset , MarkerSet ** ms );
void stripWhitespace();
NucleotideMap inp;
string fileLegend, filePhased, fileSample;
ifstream stream_phased , stream_sample;
int offset_buffer;
};
#endif
// end HAPSIndividualsExtractor.h