34 #ifndef VALIDATOR___VALIDERROR_FEAT__HPP
35 #define VALIDATOR___VALIDERROR_FEAT__HPP
117 void ValidateSeqFeat(
122 eInferenceValidCode_valid = 0,
134 eInferenceValidCode_unrecognized_database
137 static vector<string> GetAccessionsFromInferenceString (
string inference,
string &prefix,
string &remainder,
bool &same_species);
138 static bool GetPrefixAndAccessionFromInferenceAccession (
string inf_accession,
string &prefix,
string &accession);
139 static EInferenceValidCode ValidateInferenceAccession (
string accession,
bool fetch_accession,
bool is_similar_to,
CScope* scope =
nullptr);
140 static EInferenceValidCode ValidateInference(
string inference,
bool fetch_accession,
CScope* scope =
nullptr);
143 bool DoesCDSHaveShortIntrons(
const CSeq_feat& feat);
144 bool IsIntronShort(
const CSeq_feat& feat);
145 bool GetTSACDSOnMinusStrandErrors(
const CSeq_feat& feat,
const CBioseq& seq);
155 void ValidateSeqFeatXref(
const CSeq_feat& feat);
157 void x_ValidateSeqFeatExceptXref(
const CSeq_feat& feat);
164 bool IsOverlappingGenePseudo(
const CSeq_feat& feat);
static CRef< CScope > m_Scope
@Auth_list.hpp User-defined methods of the data storage class.
@Imp_feat.hpp User-defined methods of the data storage class.
@Pubdesc.hpp User-defined methods of the data storage class.
@RNA_ref.hpp User-defined methods of the data storage class.
namespace ncbi::objects::
static bool HasNonReciprocalXref(const CSeq_feat &feat, const CFeat_id &id, CSeqFeatData::ESubtype subtype, const CTSE_Handle &tse)
void SetScope(CScope &scope)
@ eInferenceValidCode_bad_prefix
@ eInferenceValidCode_spaces
@ eInferenceValidCode_bad_accession_version
@ eInferenceValidCode_comment
@ eInferenceValidCode_same_species_misused
@ eInferenceValidCode_empty
@ eInferenceValidCode_bad_body
@ eInferenceValidCode_single_field
@ eInferenceValidCode_bad_accession
@ eInferenceValidCode_bad_accession_type
@ eInferenceValidCode_accession_version_not_public
Cache various information for one validation run.
Include a standard set of the NCBI C++ Toolkit most basic headers.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
#define NCBI_VALIDATOR_EXPORT