vg
tools for working with variation graphs
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
haplo::linear_haplo_structure Struct Reference

#include <haplotypes.hpp>

Classes

class  linearUnrepresentable
 
struct  SNVvector
 

Public Types

enum  nodeType { ref_span, snv, invalid }
 
typedef enum haplo::linear_haplo_structure::nodeType nodeType
 

Public Member Functions

 linear_haplo_structure (istream &slls_index, double log_mut_penalty, double log_recomb_penalty, const vg::PathPositionHandleGraph &graph, vg::path_handle_t ref_path_handle)
 
 ~linear_haplo_structure ()
 
haplo_score_type score (const vg::Path &path) const
 
inputHaplotype * path_to_input_haplotype (const vg::Path &path) const
 
size_t position_assuming_acyclic (int64_t node_id) const
 
nodeType get_type (int64_t node_id) const
 
int64_t path_mapping_node_id (const vg::Path &path, size_t i) const
 
size_t path_mapping_offset (const vg::Path &path, size_t i) const
 
int64_t get_SNP_ref_position (size_t node_id) const
 
SNVvector SNVs (const vg::Path &path) const
 
bool is_snv (int64_t node_id) const
 
bool is_solitary_ref (int64_t node_id) const
 
bool sn_deletion_between_ref (int64_t left, int64_t right) const
 
int64_t get_ref_following (int64_t node_id) const
 
alleleValue get_SNV_allele (int64_t node_id) const
 

Private Attributes

siteIndex * index = nullptr
 
haplotypeCohort * cohort = nullptr
 
penaltySet * penalties = nullptr
 
const vg::PathPositionHandleGraphgraph
 
vg::path_handle_t ref_path_handle
 

Member Typedef Documentation

◆ nodeType

Member Enumeration Documentation

◆ nodeType

Enumerator
ref_span 
snv 
invalid 

Constructor & Destructor Documentation

◆ linear_haplo_structure()

haplo::linear_haplo_structure::linear_haplo_structure ( istream &  slls_index,
double  log_mut_penalty,
double  log_recomb_penalty,
const vg::PathPositionHandleGraph graph,
vg::path_handle_t  ref_path_handle 
)

Make a new linear_haplo_structure with the given indexes, mutation and recombination scoring parameters, and reference path in the graph. Penalties must be negative, and ought to be something like -9*2.3 mutation and -6*2.3 recombination.

◆ ~linear_haplo_structure()

haplo::linear_haplo_structure::~linear_haplo_structure ( )

Member Function Documentation

◆ get_ref_following()

int64_t haplo::linear_haplo_structure::get_ref_following ( int64_t  node_id) const

◆ get_SNP_ref_position()

int64_t haplo::linear_haplo_structure::get_SNP_ref_position ( size_t  node_id) const

◆ get_SNV_allele()

alleleValue haplo::linear_haplo_structure::get_SNV_allele ( int64_t  node_id) const

◆ get_type()

linear_haplo_structure::nodeType haplo::linear_haplo_structure::get_type ( int64_t  node_id) const

◆ is_snv()

bool haplo::linear_haplo_structure::is_snv ( int64_t  node_id) const

◆ is_solitary_ref()

bool haplo::linear_haplo_structure::is_solitary_ref ( int64_t  node_id) const

◆ path_mapping_node_id()

int64_t haplo::linear_haplo_structure::path_mapping_node_id ( const vg::Path path,
size_t  i 
) const

◆ path_mapping_offset()

size_t haplo::linear_haplo_structure::path_mapping_offset ( const vg::Path path,
size_t  i 
) const

◆ path_to_input_haplotype()

inputHaplotype * haplo::linear_haplo_structure::path_to_input_haplotype ( const vg::Path path) const

◆ position_assuming_acyclic()

size_t haplo::linear_haplo_structure::position_assuming_acyclic ( int64_t  node_id) const

◆ score()

haplo_score_type haplo::linear_haplo_structure::score ( const vg::Path path) const

◆ sn_deletion_between_ref()

bool haplo::linear_haplo_structure::sn_deletion_between_ref ( int64_t  left,
int64_t  right 
) const

◆ SNVs()

linear_haplo_structure::SNVvector haplo::linear_haplo_structure::SNVs ( const vg::Path path) const

Member Data Documentation

◆ cohort

haplotypeCohort* haplo::linear_haplo_structure::cohort = nullptr
private

◆ graph

const vg::PathPositionHandleGraph& haplo::linear_haplo_structure::graph
private

◆ index

siteIndex* haplo::linear_haplo_structure::index = nullptr
private

◆ penalties

penaltySet* haplo::linear_haplo_structure::penalties = nullptr
private

◆ ref_path_handle

vg::path_handle_t haplo::linear_haplo_structure::ref_path_handle
private

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