Class GenomicRegion
Store information about a genomic region.

Defined in <seqan/seq_io.h>
Signature class GenomicRegion;

Member Function Overview

Interface Function Overview

Member Variable Overview

Detailed Description

A genomic region is a range on a chromosome. The chromosome is identified by its name (as text in seqName, optionally also as an integer in rID). The range is stored as a half-open interval [beginPos, endPos). If beginPos is set to -1 then the range spans the whole chromosome. If beginPos is set to a value >= 0 and endPos is set ot -1, then the chromosome is selected from beginPos to the end.

Examples for genomic regions are chr1, chr1:1,000, chr1:1,000-2,000.

The textual description of a genomic region has one of the formats NAME, NAME:START, NAME:START-END. The positions in the textual representation START and END are one-based. However, the representation in the members of GenomicRegion is zero-based.

Examples

Construct a GenomicRegion object and fill it from different region strings.

seqan::GenomicRegion genomicRegion;

parse(genomicRegion, "chr1");
// genomicRegion.seqName == "chr1"
// genomicRegion.rID == -1, genomicRegion.beginPos == -1, genomicRegion.beginPos == -1

parse(genomicRegion, "chr1:1000");
// genomicRegion.seqName == "chr1"
// genomicRegion.beginPos == 999
// genomicRegion.rID == -1, genomicRegion.beginPos == -1

parse(genomicRegion, "chr1:1000-2000");
// genomicRegion.seqName == "chr1"
// genomicRegion.beginPos == 999
// genomicRegion.beginPos == 2000
// genomicRegion.rID == -1

Member Functions Detail

GenomicRegion::GenomicRegion(); GenomicRegion::GenomicRegion(str);

Constructor.

Parameters

str The string to parse region from. Types: CharString

The default constructor sets all integer members to INVALID_POS, the seqName member is left empty.

Data Races

Thread safety unknown!

void GenomicRegion::toString(out);

Write string representation of interval to out.

Parameters

out Target to write textual interval description to.

Data Races

Thread safety unknown!

Interface Functions Detail

void clear(genomicRegion);

Reset a GenomicRegion object to the same state after default construction.

Parameters

genomicRegion The GenomicRegion object to reset. Types: GenomicRegion

Data Races

Thread safety unknown!

bool parse(genomicRegion, regionString);

Parse genomic region string store results in GenomicRegion.

Parameters

regionString The region string to prse. Types: CharString.
genomicRegion The GenomicRegion object to write the results to. Types: GenomicRegion

Returns

bool true indicates successful parsing.

Data Races

Thread safety unknown!

Member Variables Detail

int32_t GenomicRegion::beginPos

Begin position of the range on the chromosome. Default is -1.

int32_t GenomicRegion::endPos

End position of the range on the chromosome. Default is -1.

int32_t GenomicRegion::INVALID_ID

Constant for marking a position as invalid (static-const member).

int32_t GenomicRegion::INVALID_POS

Constant for marking a position as invalid (static-const member).

int32_t GenomicRegion::rID

An optional field storing an integer. Default is -1.

CharString GenomicRegion::seqName

Name of the sequence the region lies on, default is the empty string.