BamRecordView

#include <pbbam/BamRecord.h>
class PacBio::BAM::BamRecordView

Provides a re-usable “view” onto a BamRecord.

This class acts a convenience wrapper for working with per-base BamRecord data. Most of these BamRecord methods take a list of parameters, to adjust how the underlying data are presented to client code. Often these parameters will be re-used for each BamRecord method call. Thus, to simplify such client code, a BamRecordView can be used to state those parameters once, and then simply request the desired fields.

Public Functions

BamRecordView(const BamRecord &record, const Orientation orientation, const bool aligned, const bool exciseSoftClips, const PulseBehavior pulseBehavior = PulseBehavior::ALL)

Constructs a view onto record using the supplied parameters.

For frame or QV data, if aligned is true, a value of 0 (Accuracy or QualityValue) will be used at each inserted or padded base location.

Parameters
  • record: BamRecord data source.
  • orientation: Orientation of output.
  • aligned: if true, gaps/padding will be inserted, per Cigar info.
  • exciseSoftClips: if true, any soft-clipped positions will be removed from query ends

QualityValues AltLabelQVs() const

Return
BamRecord::AltLabelQV with this view’s parameters applied

std::string AltLabelTags() const

Return
BamRecord::AltLabelTag with this view’s parameters applied

QualityValues DeletionQVs() const

Return
BamRecord::DeletionQV with this view’s parameters applied

std::string DeletionTags() const

Return
BamRecord::DeletionTag with this view’s parameters applied

QualityValues InsertionQVs() const

Return
BamRecord::InsertionQV with this view’s parameters applied

Frames IPD() const

Return
BamRecord::IPD with this view’s parameters applied

QualityValues LabelQVs() const

Return
BamRecord::LabelQV with this view’s parameters applied

QualityValues MergeQVs() const

Return
BamRecord::MergeQV with this view’s parameters applied

QualityValues PulseMergeQVs() const

Return
BamRecord::PulseMergeQV with this view’s parameters applied

std::vector<float> Pkmean() const

Return
BamRecord::Pkmean with this view’s parameters applied

std::vector<float> Pkmid() const

Return
BamRecord::Pkmid with this view’s parameters applied

std::vector<float> Pkmean2() const

Return
BamRecord::Pkmean2 with this view’s parameters applied

std::vector<float> Pkmid2() const

Return
BamRecord::Pkmid2 with this view’s parameters applied

Frames PrebaseFrames() const

Return
BamRecord::PreBaseFrames with this view’s parameters applied

Frames PrePulseFrames() const

Return
BamRecord::PrePulseFrames with this view’s parameters applied

std::string PulseCalls() const

Return
BamRecord::PulseCalls with this view’s parameters applied

Frames PulseCallWidth() const

Return
BamRecord::PulseCallWidth with this view’s parameters applied

Frames PulseWidths() const

Return
BamRecord::PulseWidths with this view’s parameters applied

QualityValues Qualities() const

Return
BamRecord::Qualities with this view’s parameters applied

std::string Sequence() const

Return
BamRecord::Sequence with this view’s parameters applied

std::vector<uint32_t> StartFrames() const

Return
BamRecord::StartFrame with this view’s parameters applied

QualityValues SubstitutionQVs() const

Return
BamRecord::SubstitutionQV with this view’s parameters applied

std::string SubstitutionTags() const

Return
BamRecord::SubstitutionTag with this view’s parameters applied