NCBI C++ ToolKit
|
Search Toolkit Book for CValidError_feat
#include <objtools/validator/validerror_feat.hpp>
Public Member Functions | |
CValidError_feat (CValidError_imp &imp) | |
~CValidError_feat () override | |
void | SetScope (CScope &scope) |
void | SetTSE (CSeq_entry_Handle seh) |
void | ValidateSeqFeat (const CSeq_feat &feat) |
void | ValidateSeqFeatContext (const CSeq_feat &feat, const CBioseq &seq) |
bool | DoesCDSHaveShortIntrons (const CSeq_feat &feat) |
bool | IsIntronShort (const CSeq_feat &feat) |
bool | GetTSACDSOnMinusStrandErrors (const CSeq_feat &feat, const CBioseq &seq) |
Static Public Member Functions | |
static vector< string > | GetAccessionsFromInferenceString (string inference, string &prefix, string &remainder, bool &same_species) |
static bool | GetPrefixAndAccessionFromInferenceAccession (string inf_accession, string &prefix, string &accession) |
static EInferenceValidCode | ValidateInferenceAccession (string accession, bool fetch_accession, bool is_similar_to, CScope *scope=nullptr) |
static EInferenceValidCode | ValidateInference (string inference, bool fetch_accession, CScope *scope=nullptr) |
Private Member Functions | |
CBioseq_Handle | x_GetCachedBsh (const CSeq_loc &loc) |
void | ValidateSeqFeatXref (const CSeq_feat &feat) |
void | ValidateSeqFeatXref (const CSeqFeatXref &xref, const CSeq_feat &feat) |
void | x_ValidateSeqFeatExceptXref (const CSeq_feat &feat) |
void | ValidateOneFeatXrefPair (const CSeq_feat &feat, const CSeq_feat &far_feat) |
bool | IsOverlappingGenePseudo (const CSeq_feat &feat) |
bool | x_HasNonReciprocalXref (const CSeq_feat &feat, const CFeat_id &id, CSeqFeatData::ESubtype subtype) |
Static Private Member Functions | |
static bool | HasNonReciprocalXref (const CSeq_feat &feat, const CFeat_id &id, CSeqFeatData::ESubtype subtype, const CTSE_Handle &tse) |
Private Attributes | |
CSeq_entry_Handle | m_TSE |
CGeneCache | m_GeneCache |
CCacheImpl | m_SeqCache |
Definition at line 108 of file validerror_feat.hpp.
Definition at line 121 of file validerror_feat.hpp.
CValidError_feat::CValidError_feat | ( | CValidError_imp & | imp | ) |
Definition at line 107 of file validerror_feat.cpp.
|
override |
Definition at line 113 of file validerror_feat.cpp.
Definition at line 506 of file validerror_feat.cpp.
References abs, CSeq_id::Assign(), CScope::GetBioseqHandle(), CSeq_feat_Base::GetData(), CBioseq_Handle::GetId(), CSeq_feat_Base::GetLocation(), CSeqFeatData_Base::IsCdregion(), CSeq_feat_Base::IsSetData(), CSeq_feat_Base::IsSetLocation(), and m_Scope.
|
static |
Definition at line 406 of file validerror_feat.cpp.
References NStr::eNocase, NStr::Equal(), CInferencePrefixList::GetPrefixAndRemainder(), NStr::IsBlank(), NStr::Split(), NStr::StartsWith(), and NStr::TruncateSpacesInPlace().
Referenced by CValidError_imp::Validate(), and ValidateInference().
|
static |
Definition at line 264 of file validerror_feat.cpp.
References NStr::Find(), and NStr::TruncateSpacesInPlace().
Referenced by CValidError_imp::Validate(), and ValidateInferenceAccession().
Definition at line 167 of file validerror_feat.cpp.
References CSeqdesc_Base::e_Molinfo, CMolInfo_Base::eBiomol_transcribed_RNA, eDiag_Warning, eErr_SEQ_FEAT_CDSonMinusStrandTranscribedRNA, eNa_strand_minus, CMolInfo_Base::eTech_tsa, CMolInfo_Base::GetBiomol(), CScope::GetBioseqHandle(), CSeq_feat_Base::GetData(), CSeq_feat_Base::GetLocation(), CSeqdesc_Base::GetMolinfo(), CSeq_loc::GetStrand(), CMolInfo_Base::GetTech(), CSeqFeatData_Base::IsCdregion(), CMolInfo_Base::IsSetBiomol(), CSeq_feat_Base::IsSetData(), CSeq_feat_Base::IsSetLocation(), CMolInfo_Base::IsSetTech(), and m_Scope.
Referenced by CValidError_imp::GetTSACDSOnMinusStrandErrors(), and ValidateSeqFeatContext().
|
staticprivate |
Definition at line 571 of file validerror_feat.cpp.
References eExtreme_Positional, CSeqFeatData::eSubtype_intron, CBioseq_Handle::GetBioseqLength(), CSeq_feat_Base::GetData(), GetLength(), CSeq_feat_Base::GetLocation(), CSeqFeatData::GetSubtype(), IsOrganelle(), IsOverlappingGenePseudo(), CSeq_feat_Base::IsSetData(), CSeq_feat_Base::IsSetLocation(), CSeq_feat_Base::IsSetPseudo(), m_Scope, and x_GetCachedBsh().
Definition at line 554 of file validerror_feat.cpp.
References CGeneCache::GetGeneFromCache(), CSeq_feat::GetGeneXref(), m_GeneCache, m_Scope, and CSingleFeatValidator::s_IsPseudo().
Referenced by IsIntronShort().
|
inline |
Definition at line 114 of file validerror_feat.hpp.
References m_Scope.
Referenced by CValidError_imp::Validate(), CValidError_bioseq::ValidateBioseq(), and CValidError_annot::ValidateSeqAnnot().
void CValidError_feat::SetTSE | ( | CSeq_entry_Handle | seh | ) |
Definition at line 118 of file validerror_feat.cpp.
References CValidator::CCacheImpl::Clear(), CGeneCache::Clear(), m_GeneCache, m_SeqCache, and m_TSE.
Referenced by CValidError_imp::Validate(), CValidError_bioseq::ValidateBioseq(), and CValidError_annot::ValidateSeqAnnot().
|
static |
Definition at line 452 of file validerror_feat.cpp.
References eInferenceValidCode_bad_body, eInferenceValidCode_bad_prefix, eInferenceValidCode_comment, eInferenceValidCode_empty, eInferenceValidCode_same_species_misused, eInferenceValidCode_spaces, eInferenceValidCode_valid, FOR_EACH_CHAR_IN_STRING, GetAccessionsFromInferenceString(), i, NStr::IsBlank(), NStr::StartsWith(), NStr::TruncateSpacesInPlace(), and ValidateInferenceAccession().
Referenced by CSingleFeatValidator::x_ValidateGbQual().
|
static |
Definition at line 320 of file validerror_feat.cpp.
References eInferenceValidCode_accession_version_not_public, eInferenceValidCode_bad_accession, eInferenceValidCode_bad_accession_type, eInferenceValidCode_bad_accession_version, eInferenceValidCode_empty, eInferenceValidCode_single_field, eInferenceValidCode_spaces, eInferenceValidCode_unrecognized_database, eInferenceValidCode_valid, NStr::eNocase, NStr::EqualNocase(), NStr::Find(), GetPrefixAndAccessionFromInferenceAccession(), NStr::IsBlank(), isdigit(), CGb_qual::IsLegalInferenceDatabase(), IsSequenceFetchable(), s_IsAllDigitsOrPeriods(), s_IsSraPrefix(), NStr::StartsWith(), and ValidateAccessionFormat().
Referenced by ValidateInference().
|
private |
Definition at line 668 of file validerror_feat.cpp.
References CSeqFeatData::AllowXref(), Compare(), eContained, eDiag_Error, eDiag_Warning, eErr_SEQ_FEAT_CDSmRNAXrefLocationProblem, eErr_SEQ_FEAT_SeqFeatXrefNotReciprocal, eErr_SEQ_FEAT_SeqFeatXrefProblem, eSame, CSeqFeatData::eSubtype_cdregion, CSeqFeatData::eSubtype_gene, CSeqFeatData::eSubtype_mRNA, CSeqFeatData::eVocabulary_genbank, fCompareOverlapping, FeaturePairIsTwoTypes(), GeneXrefConflicts(), CSeq_feat_Base::GetData(), CSeq_feat_Base::GetId(), CSeqFeatData::GetKey(), CSeq_feat_Base::GetLocation(), CSeqFeatData::GetSubtype(), CSeq_feat::HasSeqFeatXref(), CSeqFeatData_Base::IsCdregion(), CSeqFeatData_Base::IsGene(), CSeq_feat_Base::IsSetId(), CSeq_feat_Base::IsSetXref(), m_Scope, CSeqFeatData::ProhibitXref(), and x_HasNonReciprocalXref().
Referenced by ValidateSeqFeatXref().
Definition at line 157 of file validerror_feat.cpp.
References ValidateSeqFeatXref(), and x_ValidateSeqFeatExceptXref().
Referenced by CValidError_imp::Validate(), and CValidError_annot::ValidateSeqAnnot().
Definition at line 193 of file validerror_feat.cpp.
References CSeqFeatData_Base::e_Cdregion, CSeqFeatData_Base::e_Prot, CSeqFeatData_Base::e_Psec_str, CSeqFeatData_Base::e_Rna, CSeqFeatData_Base::e_Rsite, CSeqFeatData_Base::e_Txinit, eDiag_Error, eDiag_Warning, eErr_SEQ_FEAT_InvalidFeatureForNucleotide, eErr_SEQ_FEAT_InvalidFeatureForProtein, eErr_SEQ_FEAT_InvalidForType, CProt_ref_Base::eProcessed_mature, CProt_ref_Base::eProcessed_preprotein, CProt_ref_Base::eProcessed_signal_peptide, CProt_ref_Base::eProcessed_transit_peptide, CSeq_feat_Base::GetData(), CProt_ref_Base::GetProcessed(), CSeqFeatData_Base::GetProt(), GetTSACDSOnMinusStrandErrors(), CBioseq::IsAa(), CSeqFeatData_Base::IsProt(), CSeq_feat_Base::IsSetData(), CProt_ref_Base::IsSetProcessed(), and CSeqFeatData_Base::Which().
Referenced by CValidError_bioseq::ValidateSeqFeatContext().
Definition at line 749 of file validerror_feat.cpp.
References CSeq_feat_Base::GetXref(), and CSeq_feat_Base::IsSetXref().
Referenced by ValidateSeqFeat().
|
private |
Definition at line 760 of file validerror_feat.cpp.
References eDiag_Error, eDiag_Warning, eErr_SEQ_FEAT_SeqFeatXrefFeatureMissing, eErr_SEQ_FEAT_SeqFeatXrefProblem, eErr_SEQ_FEAT_UnnecessaryGeneXref, CSeqFeatData::eSubtype_any, CSeq_feat_Base::GetData(), CSeqFeatXref_Base::GetData(), CTSE_Handle::GetFeaturesWithId(), CSeqFeatXref_Base::GetId(), CFeat_id_Base::GetLocal(), CSeq_entry_Handle::GetTSE_Handle(), CSeqFeatData_Base::IsGene(), CFeat_id_Base::IsLocal(), CSeqFeatXref_Base::IsSetData(), CSeqFeatXref_Base::IsSetId(), m_TSE, s_HasId(), ValidateOneFeatXrefPair(), and CSeqFeatData_Base::Which().
|
private |
Definition at line 128 of file validerror_feat.cpp.
References ctll::empty(), CValidator::CCacheImpl::GetBioseqHandleFromLocation(), CSeq_entry_Handle::GetTSE_Handle(), m_Scope, m_SeqCache, and m_TSE.
Referenced by IsIntronShort().
|
private |
Definition at line 643 of file validerror_feat.cpp.
References CTSE_Handle::GetFeaturesWithId(), CObject_id_Base::GetId(), CSeq_entry_Handle::GetTSE_Handle(), CSeq_feat_Base::GetXref(), CSeq_feat_Base::IsSetXref(), ITERATE, and m_TSE.
Referenced by ValidateOneFeatXrefPair().
Definition at line 138 of file validerror_feat.cpp.
References eDiag_Fatal, eErr_INTERNAL_Exception, FeatValidatorFactory(), and m_Scope.
Referenced by ValidateSeqFeat().
|
private |
Definition at line 150 of file validerror_feat.hpp.
Referenced by IsOverlappingGenePseudo(), and SetTSE().
|
private |
Definition at line 151 of file validerror_feat.hpp.
Referenced by SetTSE(), and x_GetCachedBsh().
|
private |
Definition at line 149 of file validerror_feat.hpp.
Referenced by SetTSE(), ValidateSeqFeatXref(), x_GetCachedBsh(), and x_HasNonReciprocalXref().