NCBI C++ ToolKit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
variation::CVariationUtil Class Reference

Search Toolkit Book for variation::CVariationUtil

#include <misc/hgvs/variation_util2.hpp>

+ Inheritance diagram for variation::CVariationUtil:
+ Collaboration diagram for variation::CVariationUtil:

Classes

class  CCdregionIndex
 Cache seq-data in the CDS regions and the cds features by location. More...
 
class  CVariantPropertiesIndex
 Given a seq-loc, compute CVariantProperties::TGene_location from annotation. More...
 
struct  SFlankLocs
 Calculate upstream (first) and downstream(second) flanks for loc. More...
 

Public Types

enum  EOptions { fOpt_cache_exon_sequence = 1 , fOpt_default = 0 }
 
enum  EAA2NAFlags { fAA2NA_truncate_common_prefix_and_suffix = 1 , fAA2NA_default = 0 }
 
enum  { kMaxAttachSeqLen = 100000 }
 
enum  ETestStatus { eFail , ePass , eNotApplicable }
 
enum  ESOTerm {
  eSO_intergenic_variant =1628 , eSO_2KB_upstream_variant =1636 , eSO_500B_downstream_variant =1634 , eSO_splice_donor_variant =1575 ,
  eSO_splice_acceptor_variant =1574 , eSO_intron_variant =1627 , eSO_5_prime_UTR_variant =1623 , eSO_3_prime_UTR_variant =1624 ,
  eSO_coding_sequence_variant =1580 , eSO_nc_transcript_variant =1619 , eSO_initiator_codon_variant =1582 , eSO_terminator_codon_variant =1590 ,
  eSO_synonymous_variant =1819 , eSO_missense_variant =1583 , eSO_inframe_indel =1820 , eSO_frameshift_variant =1589 ,
  eSO_stop_gained =1587 , eSO_stop_lost =1578
}
 Supported SO-terms. More...
 
typedef int TOptions
 
typedef int TAA2NAFlags
 Methods to convert between nucleotide and protein. More...
 
typedef vector< ESOTermTSOTerms
 
- Public Types inherited from CObject
enum  EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern }
 Control filling of newly allocated memory. More...
 
typedef CObjectCounterLocker TLockerType
 Default locker type for CRef. More...
 
typedef atomic< Uint8TCounter
 Counter type is CAtomiCounter. More...
 
typedef Uint8 TCount
 Alias for value type of counter. More...
 

Public Member Functions

 CVariationUtil (CScope &scope, TOptions options=fOpt_default)
 
void ClearCache ()
 
CRef< CVariationAsVariation (const CSeq_feat &variation_ref)
 
void AsVariation_feats (const CVariation &v, CSeq_annot::TData::TFtable &feats)
 
CRef< CVariantPlacementRemap (const CVariantPlacement &p, const CSeq_align &aln, bool check_placements=true)
 Methods to remap a VariantPlacement. More...
 
CRef< CVariantPlacementRemap (const CVariantPlacement &p, CSeq_loc_Mapper &mapper)
 
CRef< CVariantPlacementRemapToAnnotatedTarget (const CVariation &v, const CSeq_id &target)
 Remap variation from product coordinates onto a nucleotide sequence on which this product is annotated. More...
 
CRef< CVariationInferNAfromAA (const CVariation &prot_variation, TAA2NAFlags flags=fAA2NA_default)
 
CRef< CVariationTranslateNAtoAA (const CVariation_inst &nuc_inst, const CVariantPlacement &p, const CSeq_feat &cds_feat)
 Evaluate protein effect of a single-inst @ single-placement. More...
 
void AttachProteinConsequences (CVariation &nuc_variation, const CSeq_id *=NULL, bool ignore_genomic=false)
 Find the CDSes for the first placement; Compute prot consequence using TranslateNAtoAA for each and attach results to nuc_variation.consequnece. More...
 
void FlipStrand (CVariation &v) const
 Other utility methods: More...
 
void FlipStrand (CVariantPlacement &vp) const
 Flipping a placement involves flipping strand on the seq-loc and swapping the offsets (and signs). More...
 
void FlipStrand (CVariation_inst &vi) const
 Flip strand on delta-items and reverse the order. More...
 
void FlipStrand (CDelta_item &di) const
 Reverse-complement seq-literals, flip strand on the seq-locs. More...
 
bool AttachSeq (CVariantPlacement &p, TSeqPos max_len=kMaxAttachSeqLen)
 If have offsets (intronic) or too long, return false; else set seq field on the placement and return true. More...
 
bool AttachSeq (CVariation &v, TSeqPos max_len=kMaxAttachSeqLen)
 
CVariantPlacement::TMol GetMolType (const CSeq_id &id)
 
ETestStatus CheckExonBoundary (const CVariantPlacement &p, const CSeq_align &aln)
 
ETestStatus CheckExonBoundary (const CVariantPlacement &p)
 
bool CheckPlacement (CVariantPlacement &p)
 if placement is invalid SeqLocCheck fails, or offsets out of order, attach VariationException and return true otherwise return false; More...
 
bool CheckAmbiguitiesInLiterals (CVariation &v)
 if variation.data contains a seq-literal with non-ACGT residues, attach VariationException to the first placement (if exists) and return true. More...
 
SFlankLocs CreateFlankLocs (const CSeq_loc &loc, TSeqPos len)
 
void SetPlacementProperties (CVariantPlacement &placement)
 Methods to compute properties. More...
 
void SetVariantProperties (CVariation &v)
 
void AsSOTerms (const CVariantProperties &p, TSOTerms &terms)
 
void FindLocationProperties (const CSeq_align &transcript_aln, const CSeq_loc &query_loc, TSOTerms &terms)
 Find location properties based on alignment. More...
 
TSeqPos GetEffectiveTranscriptLength (const CBioseq_Handle &bsh)
 Length up to last position of the last exon (i.e. More...
 
CRef< CSeq_literalGetLiteralAtLoc (const CSeq_loc &loc)
 
- Public Member Functions inherited from CObject
 CObject (void)
 Constructor. More...
 
 CObject (const CObject &src)
 Copy constructor. More...
 
virtual ~CObject (void)
 Destructor. More...
 
CObjectoperator= (const CObject &src) THROWS_NONE
 Assignment operator. More...
 
bool CanBeDeleted (void) const THROWS_NONE
 Check if object can be deleted. More...
 
bool IsAllocatedInPool (void) const THROWS_NONE
 Check if object is allocated in memory pool (not system heap) More...
 
bool Referenced (void) const THROWS_NONE
 Check if object is referenced. More...
 
bool ReferencedOnlyOnce (void) const THROWS_NONE
 Check if object is referenced only once. More...
 
void AddReference (void) const
 Add reference to object. More...
 
void RemoveReference (void) const
 Remove reference to object. More...
 
void ReleaseReference (void) const
 Remove reference without deleting object. More...
 
virtual void DoNotDeleteThisObject (void)
 Mark this object as not allocated in heap – do not delete this object. More...
 
virtual void DoDeleteThisObject (void)
 Mark this object as allocated in heap – object can be deleted. More...
 
void * operator new (size_t size)
 Define new operator for memory allocation. More...
 
void * operator new[] (size_t size)
 Define new[] operator for 'array' memory allocation. More...
 
void operator delete (void *ptr)
 Define delete operator for memory deallocation. More...
 
void operator delete[] (void *ptr)
 Define delete[] operator for memory deallocation. More...
 
void * operator new (size_t size, void *place)
 Define new operator. More...
 
void operator delete (void *ptr, void *place)
 Define delete operator. More...
 
void * operator new (size_t size, CObjectMemoryPool *place)
 Define new operator using memory pool. More...
 
void operator delete (void *ptr, CObjectMemoryPool *place)
 Define delete operator. More...
 
virtual void DebugDump (CDebugDumpContext ddc, unsigned int depth) const
 Define method for dumping debug information. More...
 
- Public Member Functions inherited from CDebugDumpable
 CDebugDumpable (void)
 
virtual ~CDebugDumpable (void)
 
void DebugDumpText (ostream &out, const string &bundle, unsigned int depth) const
 
void DebugDumpFormat (CDebugDumpFormatter &ddf, const string &bundle, unsigned int depth) const
 
void DumpToConsole (void) const
 

Static Public Member Functions

static string AsString (ESOTerm term)
 
static void s_FindLocationProperties (CConstRef< CSeq_loc > rna_loc, CConstRef< CSeq_loc > cds_loc, const CSeq_loc &query_loc, TSOTerms &terms)
 
static TSeqPos s_GetLength (const CVariantPlacement &p, CScope *scope)
 
static void s_FactorOutPlacements (CVariation &v)
 If at any level in variation-set all variations have all same placements, move them to the parent level. More...
 
static const CVariation::TPlacementss_GetPlacements (const CVariation &v)
 
static CConstRef< CVariations_FindConsequenceForPlacement (const CVariation &v, const CVariantPlacement &p)
 Find attached consequence variation in v that corresponds to p (has same seq-id). More...
 
- Static Public Member Functions inherited from CObject
static NCBI_XNCBI_EXPORT void ThrowNullPointerException (void)
 Define method to throw null pointer exception. More...
 
static NCBI_XNCBI_EXPORT void ThrowNullPointerException (const type_info &type)
 
static EAllocFillMode GetAllocFillMode (void)
 
static void SetAllocFillMode (EAllocFillMode mode)
 
static void SetAllocFillMode (const string &value)
 Set mode from configuration parameter value. More...
 
- Static Public Member Functions inherited from CDebugDumpable
static void EnableDebugDump (bool on)
 

Private Member Functions

CRef< CVariantPlacementx_Remap (const CVariantPlacement &p, CSeq_loc_Mapper &mapper)
 
void ChangeToDelins (CVariation &v)
 
void x_SetVariantProperties (CVariantProperties &p, const CVariation_inst &vi, const CSeq_loc &loc)
 
void x_SetVariantPropertiesForIntronic (CVariantPlacement &p, int offset, const CSeq_loc &loc, CBioseq_Handle &bsh)
 
void x_ChangeToDelins (CVariation &v)
 
void x_InferNAfromAA (CVariation &v, TAA2NAFlags flags)
 
void x_TranslateNAtoAA (CVariation &prot_variation)
 
CRef< CVariationx_CreateUnknownVariation (const CSeq_id &id, CVariantPlacement::TMol mol)
 
CRef< CSeq_literalx_GetLiteralAtLoc (const CSeq_loc &loc)
 
CConstRef< CSeq_literalx_FindOrCreateLiteral (const CVariation &v)
 
void s_CalcPrecursorVariationCodon (const string &codon_from, const string &prot_to, vector< string > &codons_to)
 
void x_AdjustDelinsToInterval (CVariation &v, const CSeq_loc &loc)
 
CRef< CVariationx_AsVariation (const CVariation_ref &vr)
 
CRef< CVariation_refx_AsVariation_ref (const CVariation &v, const CVariantPlacement &p)
 

Static Private Member Functions

static bool s_IsInstStrandFlippable (const CVariation &v, const CVariation_inst &inst)
 
static CRef< CSeq_literals_CatLiterals (const CSeq_literal &a, const CSeq_literal &b)
 join two seq-literals More...
 
static CRef< CSeq_literals_SpliceLiterals (const CSeq_literal &payload, const CSeq_literal &ref, TSeqPos pos)
 insert seq-literal payload into ref before pos (pos=0 -> prepend; pos=ref.len -> append) More...
 
static void s_AttachGeneIDdbxref (CVariantPlacement &p, int gene_id)
 
static void s_UntranslateProt (const string &prot_str, vector< string > &codons)
 
static size_t s_CountMatches (const string &a, const string &b)
 
static string s_CollapseAmbiguities (const vector< string > &seqs)
 
static void s_ResolveIntronicOffsets (CVariantPlacement &p)
 
static void s_AddIntronicOffsets (CVariantPlacement &p, const CSpliced_seg &ss, CScope *scope)
 
static const CConstRef< CSeq_literals_FindFirstLiteral (const CVariation &v)
 
static const CConstRef< CSeq_literals_FindAssertedLiteral (const CVariation &v)
 
static void s_ConvertInstOffsetsToPlacementOffsets (CVariation &v, CVariantPlacement &p)
 
static void s_AddInstOffsetsFromPlacementOffsets (CVariation_inst &vi, const CVariantPlacement &p)
 

Private Attributes

CRef< CScopem_scope
 
CVariantPropertiesIndex m_variant_properties_index
 
CCdregionIndex m_cdregion_index
 

Additional Inherited Members

- Static Public Attributes inherited from CObject
static const TCount eCounterBitsCanBeDeleted = 1 << 0
 Define possible object states. More...
 
static const TCount eCounterBitsInPlainHeap = 1 << 1
 Heap signature was found. More...
 
static const TCount eCounterBitsPlaceMask
 Mask for 'in heap' state flags. More...
 
static const int eCounterStep = 1 << 2
 Skip over the "in heap" bits. More...
 
static const TCount eCounterValid = TCount(1) << (sizeof(TCount) * 8 - 2)
 Minimal value for valid objects (reference counter is zero) Must be a single bit value. More...
 
static const TCount eCounterStateMask
 Valid object, and object in heap. More...
 
- Protected Member Functions inherited from CObject
virtual void DeleteThis (void)
 Virtual method "deleting" this object. More...
 

Detailed Description

Definition at line 67 of file variation_util2.hpp.

Member Typedef Documentation

◆ TAA2NAFlags

Methods to convert between nucleotide and protein.

Convert protein-variation (single-AA missense/nonsense) to nuc-variation on the precursor in the parent nuc-prot.

Definition at line 120 of file variation_util2.hpp.

◆ TOptions

Definition at line 75 of file variation_util2.hpp.

◆ TSOTerms

Definition at line 255 of file variation_util2.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
kMaxAttachSeqLen 

Definition at line 168 of file variation_util2.hpp.

◆ EAA2NAFlags

Enumerator
fAA2NA_truncate_common_prefix_and_suffix 
fAA2NA_default 

Definition at line 121 of file variation_util2.hpp.

◆ EOptions

Enumerator
fOpt_cache_exon_sequence 

Use when there will be many calls to calculate protein consequnece per sequence.

fOpt_default 

Definition at line 70 of file variation_util2.hpp.

◆ ESOTerm

Supported SO-terms.

Enumerator
eSO_intergenic_variant 
eSO_2KB_upstream_variant 
eSO_500B_downstream_variant 
eSO_splice_donor_variant 
eSO_splice_acceptor_variant 
eSO_intron_variant 
eSO_5_prime_UTR_variant 
eSO_3_prime_UTR_variant 
eSO_coding_sequence_variant 
eSO_nc_transcript_variant 
eSO_initiator_codon_variant 
eSO_terminator_codon_variant 
eSO_synonymous_variant 
eSO_missense_variant 
eSO_inframe_indel 
eSO_frameshift_variant 
eSO_stop_gained 
eSO_stop_lost 

Definition at line 231 of file variation_util2.hpp.

◆ ETestStatus

If placement is not intronic, or alignment is not spliced-seg -> eNotApplicable Else if variation is intronic but location is not at exon boundary -> eFail Else -> ePass

Enumerator
eFail 
ePass 
eNotApplicable 

Definition at line 186 of file variation_util2.hpp.

Constructor & Destructor Documentation

◆ CVariationUtil()

variation::CVariationUtil::CVariationUtil ( CScope scope,
TOptions  options = fOpt_default 
)
inline

Definition at line 77 of file variation_util2.hpp.

Member Function Documentation

◆ AsSOTerms()

void variation::CVariationUtil::AsSOTerms ( const CVariantProperties p,
TSOTerms terms 
)

◆ AsString()

string variation::CVariationUtil::AsString ( ESOTerm  term)
static

◆ AsVariation()

CRef< CVariation > variation::CVariationUtil::AsVariation ( const CSeq_feat variation_ref)

◆ AsVariation_feats()

void variation::CVariationUtil::AsVariation_feats ( const CVariation v,
CSeq_annot::TData::TFtable feats 
)

◆ AttachProteinConsequences()

void variation::CVariationUtil::AttachProteinConsequences ( CVariation nuc_variation,
const CSeq_id target_id = NULL,
bool  ignore_genomic = false 
)

Find the CDSes for the first placement; Compute prot consequence using TranslateNAtoAA for each and attach results to nuc_variation.consequnece.

If seq-id specified, use only the placement with the specified id. If ignore_genomic set to true, then consequences will be evaluated for cDNA or MT placements only. Note: Alternatively, the API could be "create and return consequence protein variation(s)", rather than attach, but that for hierarchical input it would be hard to tell which consequence corresponds to which node.

Definition at line 1899 of file variation_util2.cpp.

References CVariantPlacement_Base::eMol_cdna, CVariantPlacement_Base::eMol_genomic, CVariantPlacement_Base::eMol_mitochondrion, CVariation_inst_Base::eObservation_variant, variation::CVariationUtil::CCdregionIndex::Get(), CVariation_Base::GetData(), GetId(), CSeq_loc::GetId(), CVariation_Base::C_Data::GetInstance(), CVariantPlacement_Base::GetLoc(), CVariantPlacement_Base::GetMol(), CVariation_inst_Base::GetObservation(), CVariation::Index(), CVariation_Base::C_Data::IsInstance(), CSeq_loc_Base::IsPnt(), IsSameBioseq(), CVariation_Base::C_Data::IsSet(), CVariation_inst_Base::IsSetObservation(), CVariantPlacement_Base::IsSetStart_offset(), CVariantPlacement_Base::IsSetStop_offset(), ITERATE, m_cdregion_index, m_scope, NON_CONST_ITERATE, NULL, s_GetPlacements(), CVariation_Base::SetConsequence(), CVariation_Base::SetData(), and TranslateNAtoAA().

◆ AttachSeq() [1/2]

bool variation::CVariationUtil::AttachSeq ( CVariantPlacement p,
TSeqPos  max_len = kMaxAttachSeqLen 
)

◆ AttachSeq() [2/2]

bool variation::CVariationUtil::AttachSeq ( CVariation v,
TSeqPos  max_len = kMaxAttachSeqLen 
)

◆ ChangeToDelins()

void variation::CVariationUtil::ChangeToDelins ( CVariation v)
private

◆ CheckAmbiguitiesInLiterals()

bool variation::CVariationUtil::CheckAmbiguitiesInLiterals ( CVariation v)

if variation.data contains a seq-literal with non-ACGT residues, attach VariationException to the first placement (if exists) and return true.

otherwise return false;

Definition at line 786 of file variation_util2.cpp.

References variation::ContainsIupacNaAmbiguities(), variation::CreateException(), CVariationException_Base::eCode_ambiguous_sequence, CVariation_Base::GetData(), CVariation_Base::GetPlacements(), CVariation_Base::C_Data::IsSet(), CVariation_Base::IsSetPlacements(), NON_CONST_ITERATE, CVariation_Base::SetData(), CVariation_Base::SetPlacements(), and v2.

Referenced by InferNAfromAA().

◆ CheckExonBoundary() [1/2]

CVariationUtil::ETestStatus variation::CVariationUtil::CheckExonBoundary ( const CVariantPlacement p)

◆ CheckExonBoundary() [2/2]

CVariationUtil::ETestStatus variation::CVariationUtil::CheckExonBoundary ( const CVariantPlacement p,
const CSeq_align aln 
)

◆ CheckPlacement()

bool variation::CVariationUtil::CheckPlacement ( CVariantPlacement p)

◆ ClearCache()

void variation::CVariationUtil::ClearCache ( )
inline

◆ CreateFlankLocs()

CVariationUtil::SFlankLocs variation::CVariationUtil::CreateFlankLocs ( const CSeq_loc loc,
TSeqPos  len 
)

◆ FindLocationProperties()

void variation::CVariationUtil::FindLocationProperties ( const CSeq_align transcript_aln,
const CSeq_loc query_loc,
TSOTerms terms 
)

◆ FlipStrand() [1/4]

void variation::CVariationUtil::FlipStrand ( CDelta_item di) const

◆ FlipStrand() [2/4]

void variation::CVariationUtil::FlipStrand ( CVariantPlacement vp) const

◆ FlipStrand() [3/4]

void variation::CVariationUtil::FlipStrand ( CVariation v) const

Other utility methods:

Flipping strand involves flipping all placements, and insts. Note: for insertions, the placement(s) must be dinucleotide where insertion occurs, such that semantic correctness is maintained.

Definition at line 2138 of file variation_util2.cpp.

References eUnknown, CVariation_Base::GetData(), CVariation_Base::C_Data::GetInstance(), CVariation::Index(), CVariation_Base::C_Data::IsInstance(), CVariation_Base::C_Data::IsSet(), CVariation_Base::IsSetPlacements(), NCBI_THROW, NON_CONST_ITERATE, s_IsInstStrandFlippable(), CVariation_Base::SetData(), and CVariation_Base::SetPlacements().

Referenced by ChangeToDelins(), FlipStrand(), and TranslateNAtoAA().

◆ FlipStrand() [4/4]

void variation::CVariationUtil::FlipStrand ( CVariation_inst vi) const

Flip strand on delta-items and reverse the order.

Definition at line 2182 of file variation_util2.cpp.

References FlipStrand(), CVariation_inst_Base::IsSetDelta(), NON_CONST_ITERATE, and CVariation_inst_Base::SetDelta().

◆ GetEffectiveTranscriptLength()

TSeqPos variation::CVariationUtil::GetEffectiveTranscriptLength ( const CBioseq_Handle bsh)

◆ GetLiteralAtLoc()

CRef< CSeq_literal > variation::CVariationUtil::GetLiteralAtLoc ( const CSeq_loc loc)

Definition at line 1617 of file variation_util2.cpp.

References x_GetLiteralAtLoc().

◆ GetMolType()

CVariantPlacement::TMol variation::CVariationUtil::GetMolType ( const CSeq_id id)

Definition at line 1163 of file variation_util2.cpp.

References CSeq_id::eAcc_refseq_chromosome, CSeq_id::eAcc_refseq_contig, CSeq_id::eAcc_refseq_genomic, CSeq_id::eAcc_refseq_mrna, CSeq_id::eAcc_refseq_mrna_predicted, CSeq_id::eAcc_refseq_ncrna, CSeq_id::eAcc_refseq_ncrna_predicted, CSeq_id::eAcc_refseq_prot, CSeq_id::eAcc_refseq_prot_predicted, CSeq_id::eAcc_refseq_wgs_intermed, CMolInfo_Base::eBiomol_cRNA, CMolInfo_Base::eBiomol_genomic, CMolInfo_Base::eBiomol_genomic_mRNA, CMolInfo_Base::eBiomol_mRNA, CMolInfo_Base::eBiomol_ncRNA, CMolInfo_Base::eBiomol_other_genetic, CMolInfo_Base::eBiomol_peptide, CMolInfo_Base::eBiomol_pre_RNA, CMolInfo_Base::eBiomol_rRNA, CMolInfo_Base::eBiomol_scRNA, CMolInfo_Base::eBiomol_snoRNA, CMolInfo_Base::eBiomol_snRNA, CMolInfo_Base::eBiomol_tmRNA, CMolInfo_Base::eBiomol_transcribed_RNA, CMolInfo_Base::eBiomol_tRNA, CBioSource_Base::eGenome_mitochondrion, CVariantPlacement_Base::eMol_cdna, CVariantPlacement_Base::eMol_genomic, CVariantPlacement_Base::eMol_mitochondrion, CVariantPlacement_Base::eMol_protein, CVariantPlacement_Base::eMol_rna, CVariantPlacement_Base::eMol_unknown, CSeq_descr_Base::Get(), GetAccession(), CMolInfo_Base::GetBiomol(), CScope::GetBioseqHandle(), CSeq_entry_Handle::GetDescr(), CBioSource_Base::GetGenome(), GetMolInfo(), CSeqdesc_Base::GetSource(), CBioseq_Handle::GetTopLevelEntry(), CSeq_entry_Handle::IsSetDescr(), CBioSource_Base::IsSetGenome(), CSeqdesc_Base::IsSource(), ITERATE, m_scope, and NStr::StartsWith().

Referenced by AsVariation(), GetEffectiveTranscriptLength(), TranslateNAtoAA(), x_InferNAfromAA(), and x_Remap().

◆ InferNAfromAA()

CRef< CVariation > variation::CVariationUtil::InferNAfromAA ( const CVariation prot_variation,
TAA2NAFlags  flags = fAA2NA_default 
)

◆ Remap() [1/2]

CRef< CVariantPlacement > variation::CVariationUtil::Remap ( const CVariantPlacement p,
const CSeq_align aln,
bool  check_placements = true 
)

Methods to remap a VariantPlacement.

Remap using provided alignment. Ids of at least one row must match. When remapping between transcript/genomic coordiane systems, this method should be used instead of the mapper-based, as if the location is intronic, the method will use the spliced-alignment to create or resolve offset-placement as appropriate.

RSNP-2558 - Sometimes we don't need to check the validity of resulting placements, so this costly step can be skipped

Definition at line 492 of file variation_util2.cpp.

References CSeq_id::AsFastaString(), CSerialObject::Assign(), AttachSeq(), CheckExonBoundary(), CheckPlacement(), variation::CreateException(), CVariationException_Base::eCode_hgvs_exon_boundary, CVariationException_Base::eCode_hgvs_exon_boundary_induced, CVariationException_Base::eCode_mismatches_in_mapping, CVariationException_Base::eCode_source_location_overhang, eExtreme_Biological, eFail, CVariantPlacement_Base::ePlacement_method_projected, CSerialObject::Equals(), eUnknown, CSpliced_seg_Base::GetGenomic_id(), CSeq_loc::GetId(), CSeq_literal_Base::GetLength(), CVariantPlacement_Base::GetLoc(), CVariantPlacement_Base::GetPlacement_method(), CSeq_align_Base::GetSegs(), CVariantPlacement_Base::GetSeq(), CSeq_literal_Base::GetSeq_data(), CSeq_align::GetSeq_id(), CSeq_align::GetSeqStart(), CSeq_align::GetSeqStop(), CSeq_align_Base::C_Segs::GetSpliced(), CSeq_loc::GetStart(), CVariantPlacement_Base::GetStart_offset(), CSeq_loc::GetStop(), CVariantPlacement_Base::GetStop_offset(), i, IsSameBioseq(), CVariantPlacement_Base::IsSetPlacement_method(), CVariantPlacement_Base::IsSetSeq(), CSeq_literal_Base::IsSetSeq_data(), CVariantPlacement_Base::IsSetStart_offset(), CVariantPlacement_Base::IsSetStop_offset(), CSeq_align_Base::C_Segs::IsSpliced(), msg(), NCBI_THROW, NULL, s_AddIntronicOffsets(), s_ResolveIntronicOffsets(), CVariantPlacement_Base::SetExceptions(), CSeq_loc_Mapper_Base::SetMergeAll(), thr, CSeq_data_Base::Which(), and x_Remap().

Referenced by RemapToAnnotatedTarget().

◆ Remap() [2/2]

CRef< CVariantPlacement > variation::CVariationUtil::Remap ( const CVariantPlacement p,
CSeq_loc_Mapper mapper 
)

◆ RemapToAnnotatedTarget()

CRef< CVariantPlacement > variation::CVariationUtil::RemapToAnnotatedTarget ( const CVariation v,
const CSeq_id target 
)

Remap variation from product coordinates onto a nucleotide sequence on which this product is annotated.

e.g. {NM,NR,NP} -> {NG,NT,NW,AC,NC}. Use annotated seq-align, if available; otherwise use spliced rna or cdregion. If starting from NP, remap to the parent mRNA first.

Definition at line 633 of file variation_util2.cpp.

References CSeq_loc::Assign(), variation::ChangeIdsInPlace(), variation::CreateSplicedSeqAlignFromFeat(), CSeqFeatData_Base::e_Rna, CSeq_id::eAcc_refseq_contig, CSeq_id::eAcc_refseq_contig_ncbo, CSeq_id::eAcc_refseq_wgs_intermed, CSeq_id::eAcc_refseq_wgs_nuc, eGetId_ForceAcc, eGetId_ForceGi, CVariantPlacement_Base::eMol_genomic, CVariantPlacement_Base::eMol_protein, CVariantPlacement_Base::eMol_unknown, CSerialObject::Equals(), CSeq_loc_Mapper::eSeqMap_Up, CSeq_loc::fSortAndMerge_All, CScope::GetBioseqHandle(), CVariation_Base::GetData(), GetId(), CSeq_loc::GetId(), CVariantPlacement_Base::GetLoc(), CMappedFeat::GetLocation(), CMappedFeat::GetMappedFeature(), CVariantPlacement_Base::GetMol(), CVariation_Base::GetPlacements(), CMappedFeat::GetProduct(), CBioseq_Handle::GetRangeSeq_loc(), CSeq_align::GetSeq_id(), CSeq_id_Handle::GetSeqId(), CVariation_Base::C_Data::GetSet(), CVariation_Base::C_Data::C_Set::GetVariations(), CSeq_id_Handle::IdentifyAccession(), SAnnotSelector::IncludeFeatType(), InferNAfromAA(), IsSameBioseq(), CVariation_Base::C_Data::IsSet(), CVariation_Base::IsSetPlacements(), CSeq_feat_Handle::IsSetProduct(), ITERATE, m_scope, NULL, Remap(), CRef< C, Locker >::Reset(), result, Seq_loc_Merge(), SAnnotSelector::SetAdaptiveDepth(), SAnnotSelector::SetResolveAll(), and v2.

◆ s_AddInstOffsetsFromPlacementOffsets()

void variation::CVariationUtil::s_AddInstOffsetsFromPlacementOffsets ( CVariation_inst vi,
const CVariantPlacement p 
)
staticprivate

◆ s_AddIntronicOffsets()

void variation::CVariationUtil::s_AddIntronicOffsets ( CVariantPlacement p,
const CSpliced_seg ss,
CScope scope 
)
staticprivate

◆ s_AttachGeneIDdbxref()

void variation::CVariationUtil::s_AttachGeneIDdbxref ( CVariantPlacement p,
int  gene_id 
)
staticprivate

◆ s_CalcPrecursorVariationCodon()

void variation::CVariationUtil::s_CalcPrecursorVariationCodon ( const string codon_from,
const string prot_to,
vector< string > &  codons_to 
)
private

Definition at line 1335 of file variation_util2.cpp.

References ITERATE, s_CountMatches(), and s_UntranslateProt().

Referenced by x_InferNAfromAA().

◆ s_CatLiterals()

CRef< CSeq_literal > variation::CVariationUtil::s_CatLiterals ( const CSeq_literal a,
const CSeq_literal b 
)
staticprivate

◆ s_CollapseAmbiguities()

string variation::CVariationUtil::s_CollapseAmbiguities ( const vector< string > &  seqs)
staticprivate

Definition at line 1373 of file variation_util2.cpp.

References eUnknown, i, ITERATE, and NCBI_THROW.

Referenced by x_InferNAfromAA().

◆ s_ConvertInstOffsetsToPlacementOffsets()

void variation::CVariationUtil::s_ConvertInstOffsetsToPlacementOffsets ( CVariation v,
CVariantPlacement p 
)
staticprivate

◆ s_CountMatches()

size_t variation::CVariationUtil::s_CountMatches ( const string a,
const string b 
)
staticprivate

Definition at line 1324 of file variation_util2.cpp.

References a, b, count, i, and min().

Referenced by s_CalcPrecursorVariationCodon().

◆ s_FactorOutPlacements()

void variation::CVariationUtil::s_FactorOutPlacements ( CVariation v)
static

If at any level in variation-set all variations have all same placements, move them to the parent level.

Definition at line 2945 of file variation_util2.cpp.

References variation::Equals(), CVariation_Base::GetData(), CVariation_Base::C_Data::IsSet(), NON_CONST_ITERATE, NULL, ok, CVariation_Base::SetData(), CVariation_Base::SetPlacements(), and v2.

Referenced by InferNAfromAA(), and variation::CHgvsParser::x_root().

◆ s_FindAssertedLiteral()

const CConstRef< CSeq_literal > variation::CVariationUtil::s_FindAssertedLiteral ( const CVariation v)
staticprivate

◆ s_FindConsequenceForPlacement()

CConstRef< CVariation > variation::CVariationUtil::s_FindConsequenceForPlacement ( const CVariation v,
const CVariantPlacement p 
)
static

◆ s_FindFirstLiteral()

const CConstRef< CSeq_literal > variation::CVariationUtil::s_FindFirstLiteral ( const CVariation v)
staticprivate

Call s_GetPlacements and find first seq-literal in any of them.

Definition at line 2886 of file variation_util2.cpp.

References CVariantPlacement_Base::GetSeq(), CVariantPlacement_Base::IsSetSeq(), ITERATE, NULL, and s_GetPlacements().

Referenced by x_FindOrCreateLiteral().

◆ s_FindLocationProperties()

void variation::CVariationUtil::s_FindLocationProperties ( CConstRef< CSeq_loc rna_loc,
CConstRef< CSeq_loc cds_loc,
const CSeq_loc query_loc,
CVariationUtil::TSOTerms terms 
)
static

◆ s_GetLength()

TSeqPos variation::CVariationUtil::s_GetLength ( const CVariantPlacement p,
CScope scope 
)
static

◆ s_GetPlacements()

const CVariation::TPlacements * variation::CVariationUtil::s_GetPlacements ( const CVariation v)
static

If this variation has placements defined, return it; otherwise, recursively try parent all the way to the root; return NULL if nothing found. Precondition: root Variation must have been indexed (links to parents defined as necessary)

Definition at line 2875 of file variation_util2.cpp.

References CVariation::GetParent(), CVariation_Base::GetPlacements(), CVariation_Base::IsSetPlacements(), and NULL.

Referenced by AttachProteinConsequences(), s_FindFirstLiteral(), s_IsInstStrandFlippable(), variation::CHgvsParser::x_AsHgvsExpression(), x_FindOrCreateLiteral(), and x_InferNAfromAA().

◆ s_IsInstStrandFlippable()

bool variation::CVariationUtil::s_IsInstStrandFlippable ( const CVariation v,
const CVariation_inst inst 
)
staticprivate

◆ s_ResolveIntronicOffsets()

void variation::CVariationUtil::s_ResolveIntronicOffsets ( CVariantPlacement p)
staticprivate

◆ s_SpliceLiterals()

CRef< CSeq_literal > variation::CVariationUtil::s_SpliceLiterals ( const CSeq_literal payload,
const CSeq_literal ref,
TSeqPos  pos 
)
staticprivate

insert seq-literal payload into ref before pos (pos=0 -> prepend; pos=ref.len -> append)

Definition at line 1719 of file variation_util2.cpp.

References CSerialObject::Assign(), CSeq_literal_Base::GetLength(), CSeqportUtil::Keep(), result, s_CatLiterals(), CSeq_literal_Base::SetLength(), and CSeq_literal_Base::SetSeq_data().

Referenced by ChangeToDelins().

◆ s_UntranslateProt()

void variation::CVariationUtil::s_UntranslateProt ( const string prot_str,
vector< string > &  codons 
)
staticprivate

◆ SetPlacementProperties()

void variation::CVariationUtil::SetPlacementProperties ( CVariantPlacement placement)

◆ SetVariantProperties()

void variation::CVariationUtil::SetVariantProperties ( CVariation v)

◆ TranslateNAtoAA()

CRef< CVariation > variation::CVariationUtil::TranslateNAtoAA ( const CVariation_inst nuc_inst,
const CVariantPlacement p,
const CSeq_feat cds_feat 
)

Evaluate protein effect of a single-inst @ single-placement.

Two placements will be added: The protein placement, and an additional placement on the original nucleotide level, representing the location and sequence of affected codons.

The inst will be at the nucleotide level (describe variant codons). Rationale: the user may want to know the codons, or translate it to AA if necessary.

Only a subset of sequence edits is supported (mismatch, ins, del, indel) Nuc-variation's placement must fall within cds-feat location.

Definition at line 2387 of file variation_util2.cpp.

References abs, CSerialObject::Assign(), AttachSeq(), variation::CalcEffectForProt(), variation::CalcInstTypeForAA(), variation::CalcSOTermsForProt(), variation::ChangeIdsInPlace(), ChangeToDelins(), variation::Contains(), copy(), CreateFlankLocs(), variation::CreateUnknownProtConsequenceVariation(), variation::CVariationUtil::SFlankLocs::downstream, CDelta_item_Base::eAction_del_at, CDelta_item_Base::eAction_ins_before, CVariantProperties_Base::eEffect_frameshift, eExtreme_Biological, eGetId_ForceAcc, CSeq_loc_Mapper_Base::eLocationToProduct, CVariantPlacement_Base::eMol_mitochondrion, CSeq_loc_Mapper_Base::eProductToLocation, eUnknown, FlipStrand(), CSeq_loc::fMerge_SingleRange, CSeq_loc::fSortAndMerge_All, CAliasBase< TPrim >::Get(), variation::GetCommonPrefixLen(), variation::GetCommonSuffixLen(), GetId(), CSeq_data_Base::GetIupacna(), GetLength(), CSeq_literal_Base::GetLength(), CDelta_item_Base::C_Seq::GetLiteral(), CVariantPlacement_Base::GetLoc(), CSeq_feat_Base::GetLocation(), CVariantPlacement_Base::GetMol(), GetMolType(), CDelta_item_Base::GetSeq(), CSeq_literal_Base::GetSeq_data(), CSeq_loc::GetStart(), GetStrand(), variation::HasProblematicExceptions(), CSeq_loc::Intersect(), CDelta_item_Base::C_Seq::IsLiteral(), CSeq_loc_Base::IsNull(), CRef< C, Locker >::IsNull(), IsSameBioseq(), CSeq_literal_Base::IsSetSeq_data(), CVariantPlacement_Base::IsSetStart_offset(), CVariantPlacement_Base::IsSetStop_offset(), literal(), m_scope, CSeq_loc_Mapper_Base::Map(), min(), MSerial_AsnText, NCBI_THROW, NcbiCerr, NULL, CRef< C, Locker >::Reset(), CVariantPlacement_Base::ResetSeq(), SameOrientation(), Seq_loc_Add(), Seq_loc_Merge(), CVariantPlacement_Base::SetFrame(), CSeq_loc::SetId(), CSeq_loc::SetInt(), CVariantPlacement_Base::SetLoc(), CVariantPlacement_Base::SetMol(), CVariantPlacement_Base::SetSeq(), variation::Translate(), x_AdjustDelinsToInterval(), and x_GetLiteralAtLoc().

Referenced by AttachProteinConsequences().

◆ x_AdjustDelinsToInterval()

void variation::CVariationUtil::x_AdjustDelinsToInterval ( CVariation v,
const CSeq_loc loc 
)
private

◆ x_AsVariation()

CRef< CVariation > variation::CVariationUtil::x_AsVariation ( const CVariation_ref vr)
private

Definition at line 4477 of file variation_util2.cpp.

References CSerialObject::Assign(), eUnknown, CVariation_ref_Base::GetConsequence(), CVariation_ref_Base::GetData(), CVariation_ref_Base::GetDescription(), CVariation_ref_Base::GetId(), CVariation_ref_Base::C_Data::GetInstance(), CVariation_ref_Base::GetMethod(), CVariation_ref_Base::C_Data::C_Set::GetName(), CVariation_ref_Base::GetName(), CVariation_ref_Base::C_Data::GetNote(), CVariation_ref_Base::GetOther_ids(), CVariation_ref_Base::GetParent_id(), CVariation_ref_Base::GetPhenotype(), CVariation_ref_Base::GetSample_id(), CVariation_ref_Base::C_Data::GetSet(), CVariation_ref_Base::GetSomatic_origin(), CVariation_ref_Base::GetSynonyms(), CVariation_ref_Base::C_Data::C_Set::GetType(), CVariation_ref_Base::GetVariant_prop(), CVariation_ref_Base::C_Data::C_Set::GetVariations(), CVariation_ref_Base::C_Data::IsComplex(), CVariation_ref_Base::C_Data::IsInstance(), CVariation_ref_Base::C_Data::IsNote(), CVariation_ref_Base::C_Data::IsSet(), CVariation_ref_Base::IsSetConsequence(), CVariation_ref_Base::IsSetDescription(), CVariation_ref_Base::IsSetId(), CVariation_ref_Base::IsSetMethod(), CVariation_ref_Base::C_Data::C_Set::IsSetName(), CVariation_ref_Base::IsSetName(), CVariation_ref_Base::IsSetOther_ids(), CVariation_ref_Base::IsSetParent_id(), CVariation_ref_Base::IsSetPhenotype(), CVariation_ref_Base::IsSetSample_id(), CVariation_ref_Base::IsSetSomatic_origin(), CVariation_ref_Base::IsSetSynonyms(), CVariation_ref_Base::IsSetVariant_prop(), CVariation_ref_Base::C_Data::IsUniparental_disomy(), CVariation_ref_Base::C_Data::IsUnknown(), ITERATE, NCBI_THROW, SerialClone(), CVariation_Base::SetFrameshift(), CVariation_Base::C_Data::C_Set::SetName(), CVariation_Base::C_Data::C_Set::SetType(), and CVariation_Base::C_Data::C_Set::SetVariations().

Referenced by AsVariation().

◆ x_AsVariation_ref()

CRef< CVariation_ref > variation::CVariationUtil::x_AsVariation_ref ( const CVariation v,
const CVariantPlacement p 
)
private

Definition at line 4242 of file variation_util2.cpp.

References CSerialObject::Assign(), eUnknown, CVariation_Base::GetConsequence(), CVariation_Base::GetData(), CVariation_Base::GetDescription(), CVariation_Base::GetFrameshift(), CVariation_Base::GetId(), CVariation_Base::C_Data::GetInstance(), CVariation_Base::GetMethod(), CVariationMethod_Base::GetMethod(), CVariation_Base::C_Data::C_Set::GetName(), CVariation_Base::GetName(), CVariation_Base::C_Data::GetNote(), CVariation_Base::GetOther_ids(), CVariation_Base::GetParent_id(), CVariation_Base::C_Frameshift::GetPhase(), CVariation_Base::GetPhenotype(), CVariation_Base::GetSample_id(), CVariation_Base::C_Data::GetSet(), CVariation_Base::GetSomatic_origin(), CVariation_Base::GetSynonyms(), CVariation_Base::C_Data::C_Set::GetType(), CVariation_Base::GetVariant_prop(), CVariation_Base::C_Data::C_Set::GetVariations(), CVariation_Base::C_Frameshift::GetX_length(), CVariation_Base::C_Data::IsComplex(), CVariation_Base::C_Data::IsInstance(), CVariation_Base::C_Data::IsNote(), CVariation_Base::C_Data::IsSet(), CVariation_Base::IsSetConsequence(), CVariation_Base::IsSetDescription(), CVariation_Base::IsSetFrameshift(), CVariation_Base::IsSetId(), CVariation_Base::IsSetMethod(), CVariation_Base::C_Data::C_Set::IsSetName(), CVariation_Base::IsSetName(), CVariation_Base::IsSetOther_ids(), CVariation_Base::IsSetParent_id(), CVariation_Base::C_Frameshift::IsSetPhase(), CVariation_Base::IsSetPhenotype(), CVariation_Base::IsSetSample_id(), CVariation_Base::IsSetSomatic_origin(), CVariation_Base::IsSetSynonyms(), CVariation_Base::IsSetVariant_prop(), CVariation_Base::C_Frameshift::IsSetX_length(), CVariation_Base::C_Data::IsUniparental_disomy(), CVariation_Base::C_Data::IsUnknown(), ITERATE, NCBI_THROW, s_AddInstOffsetsFromPlacementOffsets(), SerialClone(), CVariation_ref_Base::C_Data::C_Set::SetName(), CVariation_ref_Base::C_Data::C_Set::SetType(), and CVariation_ref_Base::C_Data::C_Set::SetVariations().

Referenced by AsVariation_feats().

◆ x_ChangeToDelins()

void variation::CVariationUtil::x_ChangeToDelins ( CVariation v)
private

◆ x_CreateUnknownVariation()

CRef< CVariation > variation::CVariationUtil::x_CreateUnknownVariation ( const CSeq_id id,
CVariantPlacement::TMol  mol 
)
private

◆ x_FindOrCreateLiteral()

CConstRef< CSeq_literal > variation::CVariationUtil::x_FindOrCreateLiteral ( const CVariation v)
private

◆ x_GetLiteralAtLoc()

CRef< CSeq_literal > variation::CVariationUtil::x_GetLiteralAtLoc ( const CSeq_loc loc)
private

◆ x_InferNAfromAA()

void variation::CVariationUtil::x_InferNAfromAA ( CVariation v,
TAA2NAFlags  flags 
)
private

Definition at line 1410 of file variation_util2.cpp.

References CSerialObject::Assign(), AttachSeq(), CSeqVector::begin(), variation::ChangeIdsInPlace(), CSeqportUtil::Convert(), delta(), CSeqFeatData_Base::e_Cdregion, CSeq_data_Base::e_Iupacaa, CDelta_item_Base::eAction_morph, CBioseq_Handle::eCoding_Iupac, eGetId_ForceAcc, CVariantPlacement_Base::eMol_protein, CVariantPlacement_Base::eMol_unknown, eNa_strand_minus, CSeqVector::end(), CVariation_inst_Base::eObservation_asserted, CVariation_inst_Base::eObservation_variant, CSeq_loc_Mapper_Base::eProductToLocation, CVariation_inst_Base::eType_mnp, CVariation_inst_Base::eType_snv, eUnknown, fAA2NA_truncate_common_prefix_and_suffix, flags, CSeq_loc::fSortAndMerge_All, CVariation_Base::GetData(), CVariation_inst_Base::GetDelta(), GetId(), CSeq_loc::GetId(), CVariation_Base::C_Data::GetInstance(), CSeq_data_Base::GetIupacaa(), GetLength(), CVariantPlacement_Base::GetLoc(), CVariantPlacement_Base::GetMol(), GetMolType(), CVariation_inst_Base::GetObservation(), CSeqVector::GetSeqData(), CVariation_Base::C_Data::GetSet(), CSeq_loc::GetStrand(), CVariation_Base::C_Data::C_Set::GetVariations(), CVariation_Base::C_Data::IsInstance(), CSeq_loc_Base::IsInt(), CVariation_Base::C_Data::IsSet(), CVariation_Base::IsSetFrameshift(), CVariantPlacement_Base::IsSetMol(), CVariation_inst_Base::IsSetObservation(), CVariantPlacement_Base::IsSetStart_offset(), CVariantPlacement_Base::IsSetStop_offset(), m_scope, CSeq_loc_Mapper_Base::Map(), NCBI_THROW, NON_CONST_ITERATE, NULL, CRef< C, Locker >::Reset(), CVariation_Base::ResetPlacements(), s_CalcPrecursorVariationCodon(), s_CollapseAmbiguities(), s_GetPlacements(), s_UntranslateProt(), Seq_loc_Merge(), CVariation_Base::SetData(), CVariation_inst_Base::SetDelta(), CSeq_loc::SetInt(), CVariantPlacement_Base::SetLoc(), CVariantPlacement_Base::SetMol(), CVariation_inst_Base::SetObservation(), CVariation_inst_Base::SetType(), and v2.

Referenced by InferNAfromAA().

◆ x_Remap()

CRef< CVariantPlacement > variation::CVariationUtil::x_Remap ( const CVariantPlacement p,
CSeq_loc_Mapper mapper 
)
private

Definition at line 898 of file variation_util2.cpp.

References variation::ChangeIdsInPlace(), variation::CreateException(), CVariationException_Base::eCode_no_mapping, CVariationException_Base::eCode_partial_mapping, CVariationException_Base::eCode_source_location_overhang, CVariationException_Base::eCode_split_mapping, eGetId_ForceAcc, CVariantPlacement_Base::eMol_genomic, CVariantPlacement_Base::eMol_mitochondrion, CVariantPlacement_Base::eMol_unknown, CVariantPlacement_Base::ePlacement_method_projected, CSeq_loc::fMerge_SingleRange, CSeq_loc::fSortAndMerge_All, CSeq_interval_Base::GetFrom(), GetId(), CSeq_loc::GetId(), CSeq_loc_Base::GetInt(), GetLength(), CVariantPlacement_Base::GetLoc(), CVariantPlacement_Base::GetMol(), GetMolType(), CVariantPlacement_Base::GetStart_offset(), CVariantPlacement_Base::GetStart_offset_fuzz(), CVariantPlacement_Base::GetStop_offset(), CVariantPlacement_Base::GetStop_offset_fuzz(), CSeq_loc_Base::IsEmpty(), CSeq_loc_Base::IsInt(), CSeq_loc_Base::IsMix(), CSeq_loc_Base::IsNull(), CSeq_loc_Base::IsPacked_int(), CSeq_loc_Base::IsPnt(), CSeq_interval_Base::IsSetFuzz_from(), CSeq_interval_Base::IsSetFuzz_to(), CVariantPlacement_Base::IsSetStart_offset(), CVariantPlacement_Base::IsSetStart_offset_fuzz(), CVariantPlacement_Base::IsSetStop_offset(), CVariantPlacement_Base::IsSetStop_offset_fuzz(), m_scope, CSeq_loc_Mapper_Base::Map(), NULL, CRef< C, Locker >::Reset(), s_GetLength(), Seq_loc_Merge(), CSeq_loc::SetEmpty(), CVariantPlacement_Base::SetExceptions(), CSeq_loc::SetInt(), CVariantPlacement_Base::SetLoc(), CVariantPlacement_Base::SetMol(), CVariantPlacement_Base::SetPlacement_method(), CVariantPlacement_Base::SetStart_offset(), CVariantPlacement_Base::SetStart_offset_fuzz(), CVariantPlacement_Base::SetStop_offset(), CVariantPlacement_Base::SetStop_offset_fuzz(), and CSeq_loc_Base::Which().

Referenced by Remap().

◆ x_SetVariantProperties()

void variation::CVariationUtil::x_SetVariantProperties ( CVariantProperties p,
const CVariation_inst vi,
const CSeq_loc loc 
)
private

◆ x_SetVariantPropertiesForIntronic()

void variation::CVariationUtil::x_SetVariantPropertiesForIntronic ( CVariantPlacement p,
int  offset,
const CSeq_loc loc,
CBioseq_Handle bsh 
)
private

◆ x_TranslateNAtoAA()

void variation::CVariationUtil::x_TranslateNAtoAA ( CVariation prot_variation)
private

Member Data Documentation

◆ m_cdregion_index

CCdregionIndex variation::CVariationUtil::m_cdregion_index
private

Definition at line 491 of file variation_util2.hpp.

Referenced by AttachProteinConsequences(), ClearCache(), and x_GetLiteralAtLoc().

◆ m_scope

CRef<CScope> variation::CVariationUtil::m_scope
private

◆ m_variant_properties_index

CVariantPropertiesIndex variation::CVariationUtil::m_variant_properties_index
private

Definition at line 490 of file variation_util2.hpp.

Referenced by ClearCache(), and SetPlacementProperties().


The documentation for this class was generated from the following files:
Modified on Wed Sep 04 15:02:21 2024 by modify_doxy.py rev. 669887