#include <ncbi_pch.hpp>
#include <serial/enumvalues.hpp>
#include <objects/seqfeat/SubSource.hpp>
#include <math.h>
#include <objects/misc/sequence_util_macros.hpp>
#include <util/row_reader_ncbi_tsv.hpp>
#include <corelib/ncbi_safe_static.hpp>
#include <util/compile_time.hpp>
#include "cell_line.inc"
#include "isolation_sources.inc"
#include "lat_lon_country.inc"
#include "lat_lon_water.inc"
Go to the source code of this file.
Go to the SVN repository for this file.
typedef CStaticArraySet< const char *, PCase_CStr > TCStrSet typedef SStaticPair< const char *, const char * > TWaterPairElem typedef CStaticArrayMap< const char *, const char *, PNocase_CStr > TWaterPairMap typedef pair< string, string > TContaminatingCellLine typedef map< string, TContaminatingCellLine > TSpeciesContaminant typedef map< string, TSpeciesContaminant > TCellLineContaminationMap typedef CStaticPairArrayMap< const char *, const char *, PCase_CStr > TCStringPairsMap typedef SStaticPair< const char *, const char * > TParishMapEntry typedef CStaticPairArrayMap< const char *, const char *, PNocase_CStr > TParishMap typedef SStaticPair< const char *, const char * > TStateMapEntry typedef CStaticPairArrayMap< const char *, const char *, PNocase_CStr > TStateMap typedef CRowReader< CRowReaderStream_NCBI_TSV > TNCBITSVStream typedef SStaticPair< const char *, const char * > TStaticQualFixPair typedef CStaticPairArrayMap< const char *, const char *, PNocase_CStr > TStaticQualFixMap typedef map< string, string, PNocase > TQualFixMap static bool s_init_UseGeoLocNameForCountry (void) MAKE_CONST_SET (s_Null_CollectionDatesSet, ct::tagStrCase, { "missing", "missing: control sample", "missing: data agreement established pre-2023", "missing: endangered species", "missing: human-identifiable", "missing: lab stock", "missing: sample group", "missing: synthetic construct", "missing: third party data", "not applicable", "not collected", "not provided", "restricted access", }) string CSubSource bool s_ChooseMonthAndDay (const string &token1, const string &token2, bool month_first, string &month, int &day, bool &month_ambiguous) static string RepairSingleDigitMonth (const string &orig_date) static string s_InsertSpacesBetweenTokens (const string &old_str) static string s_RemoveSpacesWithinNumbers (const string &old_str) static bool s_IsNumber (const string &token, double *result=NULL) static string s_NormalizeTokens (vector< string > &tokens, vector< double > &numbers, vector< string > &anum, vector< int > &precision, vector< string > &lat_long, vector< string > &nsew) static void s_ReorderNorthSouthEastWest (vector< double > &numbers, vector< int > &precision, const vector< string > &lat_long, vector< string > &nsew) static void s_GetLatLong (const string &new_str, vector< double > &numbers, vector< int > &precision) string s_ShortenLatLon (string &subname) DEFINE_STATIC_ARRAY_MAP (TWaterPairMap, sc_WaterPairMap, k_water_pair_map) static string x_FindSurroundingOcean (string &water) bool s_IsValidSexQualifierPhrase (const string &value) void s_CollectNumberAndUnits (const string &value, string &number, string &units) static bool s_FailsGenusOrSpeciesTest (const string &value, const string &taxname) DEFINE_STATIC_FAST_MUTEX (s_CellLineContaminationMutex) static void s_ProcessCellLineLine (const CTempString &line) static void s_InitializeCellLineContaminationMap (void) DEFINE_STATIC_ARRAY_MAP (TCStringPairsMap, k_whole_country_fixes, s_map_whole_country_fixes) DEFINE_STATIC_ARRAY_MAP (TCStringPairsMap, k_country_name_fixes, s_map_country_name_fixes) DEFINE_STATIC_ARRAY_MAP (TCStringPairsMap, k_old_country_name_fixes, s_map_old_country_name_fixes) DEFINE_STATIC_ARRAY_MAP (TCStringPairsMap, k_subregion_fixes, s_map_subregion_fixes) bool s_ContainsWholeWord (const CTempString test, const CTempString word, NStr::ECase case_sense) bool s_SuppressCountryFix (const string &test) bool s_CompressRunsOfSpaces (string &val) DEFINE_STATIC_ARRAY_MAP (TParishMap, parishAbbrevMap, parish_abbrev_array) bool s_IsParish (string &parish) DEFINE_STATIC_ARRAY_MAP (TStateMap, stateAbbrevMap, state_abbrev_array) bool s_IsState (string &state, bool &modified) CCountries::EStateCleanup s_DoUSAStateCleanup (string &country) DEFINE_STATIC_ARRAY_MAP (TStaticQualFixMap, sc_DevStagePairs, kDevStagePairs) DEFINE_STATIC_ARRAY_MAP (TStaticQualFixMap, sc_CellTypePairs, kCellTypePairs) DEFINE_STATIC_FAST_MUTEX (s_QualFixMutex) static void s_ProcessQualMapLine (const CTempString &line, TQualFixMap &qual_map) void s_AddOneDataFile (const string &file_name, const string &data_name, const char **built_in, size_t num_built_in, TQualFixMap &qual_map) static void s_InitializeQualMaps (void) static double DegreesToRadians (double degrees) static double DistanceOnGlobe (double latA, double lonA, double latB, double lonB) double ErrorDistance (double latA, double lonA, double scale) static const TWaterPairElem k_water_pair_map [] const char * sm_ValidSexQualifierTokens [] const char * sm_ValidSexQualifierPhrases [] static TCellLineContaminationMap s_CellLineContaminationMap static bool s_CellLineContaminationMapInitialized = false static const char *const s_Countries [] static const TCStrSet s_CountriesSet (s_Countries, sizeof(s_Countries), __FILE__, __LINE__) static const char *const s_Former_Countries [] static const TCStrSet s_Former_CountriesSet (s_Former_Countries, sizeof(s_Former_Countries), __FILE__, __LINE__) static const char *const s_Null_Countries [] static const TCStrSet s_Null_CountriesSet (s_Null_Countries, sizeof(s_Null_Countries), __FILE__, __LINE__) static const SStaticPair< const char *, const char * > s_map_whole_country_fixes [] static const SStaticPair< const char *, const char * > s_map_country_name_fixes [] static const SStaticPair< const char *, const char * > s_map_old_country_name_fixes [] static const SStaticPair< const char *, const char * > s_map_subregion_fixes [] static const char * s_USAStates [] static const TParishMapEntry parish_abbrev_array [] static const TStateMapEntry state_abbrev_array [] static CSafeStatic< CCountries::TUsaExceptionMap > exception_map static bool exceptions_initialized = false static const TStaticQualFixPair kDevStagePairs [] static const TStaticQualFixPair kCellTypePairs [] static CSafeStatic< TQualFixMap > s_IsolationSourceMap static bool s_QualFixupMapsInitialized = false static const char * s_RemovableCultureNotes [] static const char * s_ReplaceableCultureNotes [] static const size_t k_NumLatLonCountryText = ArraySize(s_DefaultLatLonCountryText) static const size_t k_NumLatLonWaterText = ArraySize(s_DefaultLatLonWaterText) ◆ CONST_PI ◆ EARTH_RADIUS #define EARTH_RADIUS 6371.0 /* average radius of non-spherical earth in kilometers */Definition at line 6038 of file SubSource.cpp.
◆ EPSILON ◆ TCellLineContaminationMap ◆ TContaminatingCellLine ◆ TCStringPairsMap ◆ TCStrSet ◆ TNCBITSVStream ◆ TParishMap ◆ TParishMapEntry ◆ TQualFixMap ◆ TSpeciesContaminant ◆ TStateMap ◆ TStateMapEntry ◆ TStaticQualFixMap ◆ TStaticQualFixPair ◆ TWaterPairElem ◆ TWaterPairMap ◆ DEFINE_STATIC_ARRAY_MAP() [1/9] ◆ DEFINE_STATIC_ARRAY_MAP() [2/9] ◆ DEFINE_STATIC_ARRAY_MAP() [3/9] ◆ DEFINE_STATIC_ARRAY_MAP() [4/9] ◆ DEFINE_STATIC_ARRAY_MAP() [5/9] ◆ DEFINE_STATIC_ARRAY_MAP() [6/9] ◆ DEFINE_STATIC_ARRAY_MAP() [7/9] ◆ DEFINE_STATIC_ARRAY_MAP() [8/9] ◆ DEFINE_STATIC_ARRAY_MAP() [9/9] ◆ DEFINE_STATIC_FAST_MUTEX() [1/2] DEFINE_STATIC_FAST_MUTEX ( s_CellLineContaminationMutex ) ◆ DEFINE_STATIC_FAST_MUTEX() [2/2] DEFINE_STATIC_FAST_MUTEX ( s_QualFixMutex ) ◆ DegreesToRadians() static double DegreesToRadians ( double degrees ) static ◆ DistanceOnGlobe() static double DistanceOnGlobe ( double latA, double lonA, double latB, double lonB ) static ◆ ErrorDistance() double ErrorDistance ( double latA, double lonA, double scale ) ◆ MAKE_CONST_SET() MAKE_CONST_SET ( s_Null_CollectionDatesSet , ct::tagStrCase , { "missing", "missing: control sample", "missing: data agreement established pre-2023", "missing: endangered species", "missing: human-identifiable", "missing: lab stock", "missing: sample group", "missing: synthetic construct", "missing: third party data", "not applicable", "not collected", "not provided", "restricted access", } ) ◆ RepairSingleDigitMonth() ◆ s_AddOneDataFile()Definition at line 4959 of file SubSource.cpp.
References ERR_POST, file, file_name, g_FindDataFile(), i, lr(), NCBI_CATCH, ILineReader::New(), Note, NULL, and s_ProcessQualMapLine().
Referenced by s_InitializeQualMaps().
◆ s_ChooseMonthAndDay() ◆ s_CollectNumberAndUnits() ◆ s_CompressRunsOfSpaces() ◆ s_ContainsWholeWord() ◆ s_DoUSAStateCleanup()Definition at line 4507 of file SubSource.cpp.
References CCountries::e_Ambiguous, CCountries::e_Corrected, CCountries::e_Missing, CCountries::e_NoResult, CCountries::e_NotUSA, CCountries::e_Valid, NStr::EndsWith(), NStr::eNocase, NStr::Equal(), NStr::EqualNocase(), match(), CCountries::NewFixCountry(), s_CompressRunsOfSpaces(), s_IsParish(), s_IsState(), NStr::Split(), NStr::SplitInTwo(), NStr::StartsWith(), and NStr::TruncateSpacesInPlace().
Referenced by CCountries::USAStateCleanup().
◆ s_FailsGenusOrSpeciesTest() ◆ s_GetLatLong() static void s_GetLatLong ( const string & new_str, vector< double > & numbers, vector< int > & precision ) static ◆ s_init_UseGeoLocNameForCountry() static bool s_init_UseGeoLocNameForCountry ( void ) static ◆ s_InitializeCellLineContaminationMap() static void s_InitializeCellLineContaminationMap ( void ) static ◆ s_InitializeQualMaps() static void s_InitializeQualMaps ( void ) static ◆ s_InsertSpacesBetweenTokens() ◆ s_IsNumber() ◆ s_IsParish() ◆ s_IsState() ◆ s_IsValidSexQualifierPhrase() ◆ s_NormalizeTokens() static string s_NormalizeTokens ( vector< string > & tokens, vector< double > & numbers, vector< string > & anum, vector< int > & precision, vector< string > & lat_long, vector< string > & nsew ) staticDefinition at line 1492 of file SubSource.cpp.
References NStr::EndsWith(), NStr::EqualNocase(), NStr::Find(), i, NStr::Join(), kEmptyStr, NPOS, precision, s_IsNumber(), NStr::Split(), and tmp.
Referenced by s_GetLatLong().
◆ s_ProcessCellLineLine() ◆ s_ProcessQualMapLine() ◆ s_RemoveSpacesWithinNumbers() ◆ s_ReorderNorthSouthEastWest() static void s_ReorderNorthSouthEastWest ( vector< double > & numbers, vector< int > & precision, const vector< string > & lat_long, vector< string > & nsew ) static ◆ s_ShortenLatLon() ◆ s_SuppressCountryFix() ◆ x_FindSurroundingOcean() ◆ exception_map ◆ exceptions_initialized ◆ k_NumLatLonCountryText const size_t k_NumLatLonCountryText = ArraySize(s_DefaultLatLonCountryText) static ◆ k_NumLatLonWaterText const size_t k_NumLatLonWaterText = ArraySize(s_DefaultLatLonWaterText) static ◆ k_water_pair_map ◆ kCellTypePairs Initial value:= {
{ "hemocyte", "hemocyte" },
{ "hepatocyte", "hepatocyte" },
{ "lymphocyte", "lymphocyte" },
{ "neuroblast", "neuroblast" }
}
Definition at line 4923 of file SubSource.cpp.
◆ kDevStagePairs Initial value:= {
{ "adult", "adult" },
{ "egg", "egg" },
{ "juvenile", "juvenile" },
{ "larva", "larva" }
}
Definition at line 4902 of file SubSource.cpp.
◆ parish_abbrev_array ◆ s_CellLineContaminationMap ◆ s_CellLineContaminationMapInitialized bool s_CellLineContaminationMapInitialized = false static ◆ s_Countries ◆ s_CountriesSet ◆ s_Former_Countries Initial value:= {
"Belgian Congo",
"British Guiana",
"Burma",
"Czech Republic",
"Czechoslovakia",
"East Timor",
"Korea",
"Macedonia",
"Micronesia",
"Netherlands Antilles",
"Serbia and Montenegro",
"Siam",
"Swaziland",
"The former Yugoslav Republic of Macedonia",
"USSR",
"Yugoslavia",
"Zaire"
}
Definition at line 3308 of file SubSource.cpp.
◆ s_Former_CountriesSet ◆ s_IsolationSourceMap ◆ s_map_country_name_fixes ◆ s_map_old_country_name_fixes Initial value:= {
{"Burma", "Myanmar"},
{"Siam", "Thailand"}
}
Definition at line 3786 of file SubSource.cpp.
◆ s_map_subregion_fixes ◆ s_map_whole_country_fixes Initial value:=
{
{"england", "United Kingdom: England"},
{"great britain", "United Kingdom: Great Britain"},
{"new jersey, usa", "USA: New Jersey"}
}
Definition at line 3474 of file SubSource.cpp.
◆ s_Null_Countries Initial value:= {
"missing",
"missing: control sample",
"missing: data agreement established pre-2023",
"missing: endangered species",
"missing: human-identifiable",
"missing: lab stock",
"missing: sample group",
"missing: synthetic construct",
"missing: third party data",
"not applicable",
"not collected",
"not provided",
"restricted access"
}
Definition at line 3330 of file SubSource.cpp.
◆ s_Null_CountriesSet ◆ s_QualFixupMapsInitialized ◆ s_RemovableCultureNotes const char* s_RemovableCultureNotes[] static ◆ s_ReplaceableCultureNotes const char* s_ReplaceableCultureNotes[] static Initial value:= {
"[BankIt_uncultured16S_wizard]; [species_specific primers]; [tgge]",
"[BankIt_uncultured16S_wizard]; [species_specific primers]; [dgge]",
"[BankIt_uncultured16S_wizard]; [species_specific primers]",
"[uncultured (with species-specific primers)]",
"[uncultured]; [amplified with species-specific primers]",
"[uncultured (using species-specific primers) bacterial source]",
"[amplified with species-specific primers]",
}
Definition at line 5258 of file SubSource.cpp.
Referenced by CSubSource::HasCultureNotes(), and CSubSource::RemoveCultureNotes().
◆ s_USAStates const char* s_USAStates[] static ◆ sm_ValidSexQualifierPhrases const char* sm_ValidSexQualifierPhrases[] ◆ sm_ValidSexQualifierTokens const char* sm_ValidSexQualifierTokens[] Initial value:= {
"asexual",
"bisexual",
"diecious",
"dioecious",
"f",
"female",
"gelding",
"hermaphrodite",
"intersex",
"m",
"male",
"mixed",
"monecious",
"monoecious",
"neuter",
"unisexual",
}
Definition at line 2492 of file SubSource.cpp.
Referenced by CSubSource::FixIsolationSourceCapitalization(), CSubSource::FixSexQualifierValue(), CSubSource::FixTissueTypeCapitalization(), and CSubSource::IsValidSexQualifierValue().
◆ state_abbrev_arrayRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4