libStatGen Software 1
Loading...
Searching...
No Matches
Chromosome Class Reference

Public Member Functions

 Chromosome (GenomeSequence *gs, unsigned int chrosomeIndex)
 Chromosome (GenomeSequence *gs, const char *chromosomeName)
 Chromosome (const char *genomseSequenceFileName, unsigned int chromosomeIndex, bool isColorSpace)
 Chromosome (const std::string &genomseSequenceFileName, unsigned int chromosomeIndex, bool isColorSpace)
genomeIndex_t Length () const
char operator[] (genomeIndex_t index) const
const char * Name () const

Detailed Description

Definition at line 6 of file Chromosome.h.

Constructor & Destructor Documentation

◆ Chromosome() [1/4]

Chromosome::Chromosome ( GenomeSequence * gs,
unsigned int chrosomeIndex )
explicit

Definition at line 4 of file Chromosome.cpp.

5{
6 assert(gs);
7 assert(chromosomeIndex < (unsigned int)gs->getChromosomeCount());
8
9 this->gs = gs;
10 this->chromosomeIndex = chromosomeIndex;
11 this->offset = gs->getChromosomeStart((int)chromosomeIndex);
12 this->chromosomeSize = gs->getChromosomeSize((int)chromosomeIndex);
13}

◆ Chromosome() [2/4]

Chromosome::Chromosome ( GenomeSequence * gs,
const char * chromosomeName )
explicit

Definition at line 15 of file Chromosome.cpp.

16{
17 assert(gs);
18 this->gs = gs;
19
20 this->chromosomeIndex = gs->getChromosome(chromosomeName);
21 assert(chromosomeIndex != INVALID_CHROMOSOME_INDEX);
22
23 this->offset = gs->getChromosomeStart((int)chromosomeIndex);
24 this->chromosomeSize = gs->getChromosomeSize((int)chromosomeIndex);
25}

◆ Chromosome() [3/4]

Chromosome::Chromosome ( const char * genomseSequenceFileName,
unsigned int chromosomeIndex,
bool isColorSpace )
explicit

Definition at line 27 of file Chromosome.cpp.

28{
29 std::string s(genomseSequenceFileName);
30 gs = new GenomeSequence;
31 assert(gs);
32 gs->setReferenceName(s);
33 assert(!gs->open(isColorSpace));
34 this->chromosomeIndex = chromosomeIndex;
35 this->offset = gs->getChromosomeStart((int)chromosomeIndex);
36 this->chromosomeSize = gs->getChromosomeSize((int)chromosomeIndex);
37}

◆ Chromosome() [4/4]

Chromosome::Chromosome ( const std::string & genomseSequenceFileName,
unsigned int chromosomeIndex,
bool isColorSpace )
explicit

Definition at line 39 of file Chromosome.cpp.

40{
41 gs = new GenomeSequence;
42 assert(gs);
43 gs->setReferenceName(genomseSequenceFileName);
44 assert(!gs->open(isColorSpace));
45 this->chromosomeIndex = chromosomeIndex;
46 this->offset = gs->getChromosomeStart((int)chromosomeIndex);
47 this->chromosomeSize = gs->getChromosomeSize((int)chromosomeIndex);
48}

Member Function Documentation

◆ Length()

genomeIndex_t Chromosome::Length ( ) const
inline

Definition at line 12 of file Chromosome.h.

13 {
14 return chromosomeSize;
15 }

◆ Name()

const char * Chromosome::Name ( ) const
inline

Definition at line 22 of file Chromosome.h.

22 {
23 return gs->getChromosomeName(this->chromosomeIndex);
24 }

◆ operator[]()

char Chromosome::operator[] ( genomeIndex_t index) const
inline

Definition at line 17 of file Chromosome.h.

18 {
19 index += offset;
20 return (*gs)[index];
21 }

The documentation for this class was generated from the following files: