110 "culture-collection",
148 const FIELDS& desiredFields,
154 if (!
xGather(bsh,
"", colNames)) {
166 const vector<pair<string,CBioseq_Handle> >& vecIdBsh,
167 const FIELDS& desiredFields,
172 typedef vector<pair<string,CBioseq_Handle> > HANDLES;
175 for (HANDLES::const_iterator it = vecIdBsh.begin(); it != vecIdBsh.end(); ++it) {
176 if (!
xGather(it->second, it->first, colNames)) {
197 vector<pair<string,CBioseq_Handle> > vecIdBsh;
199 if(!nucsOnly || bci->IsNa()) {
200 vecIdBsh.push_back(make_pair(
"",*bci));
211 const FIELDS& desiredFields)
215 if (desiredFields[0] !=
"id") {
216 colNames.push_back(
"id");
218 for (FIELDS::const_iterator cit = desiredFields.begin();
219 cit != desiredFields.end(); ++cit) {
222 colNames.push_back(mapIterator->second);
224 colNames.push_back(*cit);
233 const string& colName,
234 const string& colTitle,
235 const string& colDefault)
241 pColumn->
SetHeader().SetField_name(colName);
249 column.SetData().SetString();
251 column.SetData().SetString().push_back(colDefault);
275 for (NAMELIST::const_iterator cit=nameList.begin();
276 cit != nameList.end(); ++cit) {
277 if (*cit !=
"other" && *cit !=
"common") {
283 for (NAMELIST::const_iterator cit=nameList.begin();
284 cit != nameList.end(); ++cit) {
285 if (*cit !=
"other") {
335 for (NAMELIST::const_iterator cit=nameList.begin();
336 cit != nameList.end(); ++cit) {
338 if (*cit !=
"other") {
344 for (NAMELIST::const_iterator cit=nameList.begin();
345 cit != nameList.end(); ++cit) {
346 if(*cit !=
"other") {
366 for (FIELDS::const_iterator cit=defaultFields.begin();
367 cit != defaultFields.end();
369 string colName = *cit;
370 orderedFields.push_back(colName);
375 lexicalFields.push_back(
"organism");
376 lexicalFields.push_back(
"genome");
377 lexicalFields.push_back(
"pcr-primers");
378 lexicalFields.push_back(
"db");
379 lexicalFields.push_back(
"common");
380 lexicalFields.push_back(
"lineage");
381 lexicalFields.push_back(
"origin");
382 lexicalFields.push_back(
"note");
383 lexicalFields.push_back(
"subsource-note");
384 lexicalFields.push_back(
"division");
385 lexicalFields.push_back(
"definition");
386 lexicalFields.push_back(
"bankitid");
388 lexicalFields.push_back(
"author");
389 lexicalFields.push_back(
"affil");
392 for(NAMELIST::const_iterator cit=nameList.begin();
393 cit != nameList.end(); ++cit) {
394 if (*cit !=
"other" && *cit !=
"common") {
395 lexicalFields.push_back(*cit);
400 for(NAMELIST::const_iterator cit=nameList.begin();
401 cit != nameList.end(); ++cit) {
402 if(*cit !=
"other") {
403 lexicalFields.push_back(*cit);
407 sort(lexicalFields.begin(), lexicalFields.end());
409 for (FIELDS::const_iterator cit = lexicalFields.begin();
410 cit != lexicalFields.end(); ++cit)
413 if (processedFields.
find(compressed_name) == processedFields.
end()) {
414 orderedFields.push_back(*cit);
415 processedFields.
insert(compressed_name);
419 return orderedFields;
432 for (TVALUES::const_iterator cit = nameValPairs.begin();
433 cit != nameValPairs.end(); ++cit) {
434 subtypeNames.push_back(cit->first);
449 for (TVALUES::const_iterator cit = nameValPairs.begin();
450 cit != nameValPairs.end(); ++cit) {
451 subtypeNames.push_back(cit->first);
459 const string& fieldName)
502 const string& fieldName)
512 const string& fieldName,
521 "Unable to find handler for field \"" + fieldName +
"\".");
527 return (this->*pHandler)(src, fieldName, pEC);
544 colName = displayName =
"gi";
547 displayName =
"accession";
562 const string default_id,
563 const FIELDS& desiredFields,
569 bool wantGi = ( find(desiredFields.begin(), desiredFields.end(),
"gi") != desiredFields.end() );
570 bool wantLocalId = ( find(desiredFields.begin(), desiredFields.end(),
"localid") != desiredFields.end() );
571 bool wantBankitId = ( find(desiredFields.begin(), desiredFields.end(),
"bankitid") != desiredFields.end() );
572 bool wantDef = ( find(desiredFields.begin(), desiredFields.end(),
"definition") != desiredFields.end() );
573 bool wantAuthor = ( find(desiredFields.begin(), desiredFields.end(),
"author") != desiredFields.end() );
574 bool wantAffil = ( find(desiredFields.begin(), desiredFields.end(),
"affil") != desiredFields.end() );
591 if (wantAuthor || wantAffil) {
595 const CCit_sub* latest_sub =
nullptr;
596 const CDate* latest_date =
nullptr;
604 const CCit_sub& sub = (*it)->GetSub();
610 latest_date = &curr_date;
614 latest_date = &curr_date;
645 auths += comma + cnsrt;
656 }
else if (affil.
IsStd()) {
666 if (auths.length() > 0) {
667 static const string colName =
"author";
668 static const string displayName = colName;
676 if (affls.length() > 0) {
677 static const string colName =
"affil";
678 static const string displayName = colName;
690 for (FIELDS::const_iterator cit = desiredFields.begin();
691 cit != desiredFields.end(); ++cit) {
692 if (*cit ==
"id" || *cit ==
"gi" || *cit ==
"definition" || *cit ==
"localid" ||
693 *cit ==
"bankitid" || *cit ==
"author" || *cit ==
"affil") {
705 if (num_sources == 0) {
728 if (!
label.empty()) {
729 const string colName =
"id";
749 const string colName =
"gi";
759 if (!
label.empty()) {
760 const string displayName =
"gi";
780 if ( !oi.
IsStr() )
continue;
809 static const string colName =
"localid";
810 static const string displayName = colName;
841 static const string colName =
"bankitid";
842 static const string displayName = colName;
845 stringstream bankitIdOstr;
847 const auto& pId = it->GetSeqId();
848 if (!pId || !pId->IsGeneral()) {
851 const auto& general = pId->GetGeneral();
852 if (!general.IsSetDb() || general.GetDb() !=
"BankIt") {
855 if (!general.IsSetTag()) {
858 bankitIdOstr <<
"BankIt";
859 general.GetTag().AsString(bankitIdOstr);
862 string bankitId = bankitIdOstr.str();
863 if (!bankitId.empty()) {
880 static const string colName =
"definition";
881 static const string displayName = colName;
886 sequence::CDeflineGenerator().GenerateDefline(bsh);
899 const string& colName,
903 const string displayName =
"organism";
919 const string& colName,
923 const string displayName =
"common";
939 const string& colName,
943 const string displayName =
"lineage";
960 const string& colName,
964 const string displayName =
"division";
980 const string& colName,
984 const string displayName =
"genome";
1000 const string& colName,
1004 const string displayName =
"origin";
1020 const string& colName,
1037 typedef list<CRef<CSubSource> > SUBSOURCES;
1038 const SUBSOURCES& subsources = src.
GetSubtype();
1040 string key = colName;
1042 for (SUBSOURCES::const_iterator cit = subsources.begin();
1043 cit != subsources.end(); ++cit) {
1072 const string& colName,
1086 typedef list<CRef<COrgMod> > ORGMODS;
1089 string key = colName;
1091 for (ORGMODS::const_iterator cit = orgmods.begin();
1092 cit != orgmods.end(); ++cit) {
1093 const COrgMod& orgmod = **cit;
1115 const string& colName,
1119 static const string displayName =
"db";
1126 typedef vector< CRef< CDbtag > > DBTAGS;
1128 for (DBTAGS::const_iterator cit = tags.begin(); cit != tags.end(); ++cit) {
1130 if (!
tag.IsSetDb() ||
tag.GetDb().empty() || !
tag.IsSetTag()) {
1135 switch (objid.
Which()) {
1139 if (objid.
GetStr().empty()) {
1142 dbtagStr = objid.
GetStr();
1148 string curColName = colName;
1149 string curDisplayName = displayName;
1150 curColName +=
tag.GetDb();
1151 curDisplayName +=
tag.GetDb();
1162 const string& colName,
1166 static const string displayName =
"taxid";
1173 typedef vector< CRef< CDbtag > > DBTAGS;
1176 for (DBTAGS::const_iterator cit = tags.begin(); cit != tags.end(); ++cit) {
1178 if (!
tag.IsSetDb() ||
tag.GetDb() !=
"taxon") {
1182 switch (objid.
Which()) {
1186 if (objid.
GetStr().empty()) {
1189 taxonIdStr = objid.
GetStr();
1197 string curDisplayName = displayName;
1207 const string& colName,
1211 const string pcrPrimersFwdNames =
"pcr-primers.names.fwd";
1212 const string pcrPrimersFwdSequences =
"pcr-primers.sequences.fwd";
1213 const string pcrPrimersRevNames =
"pcr-primers.names.reverse";
1214 const string pcrPrimersRevSequences =
"pcr-primers.sequences.reverse";
1216 unsigned int columnSetCounter = 0;
1221 string fwdName, fwdSequence, revName, revSequence;
1224 typedef list<CRef<CPCRReaction> > REACTIONS;
1225 const REACTIONS& reactions = pcrset.
Get();
1226 for (REACTIONS::const_iterator cit = reactions.begin();
1227 cit != reactions.end(); ++cit) {
1230 if (fwdName.empty()) {
1238 if (revName.empty()) {
1246 string keyPcrPrimersFwdNames = pcrPrimersFwdNames;
1247 string keyPcrPrimersFwdSequences = pcrPrimersFwdSequences;
1248 string keyPcrPrimersRevNames = pcrPrimersRevNames;
1249 string keyPcrPrimersRevSequences = pcrPrimersRevSequences;
1250 if (columnSetCounter > 0) {
1257 keyPcrPrimersFwdNames, keyPcrPrimersFwdNames,
"");
1260 keyPcrPrimersFwdSequences, keyPcrPrimersFwdSequences,
"");
1264 keyPcrPrimersRevNames, keyPcrPrimersRevNames,
"");
1267 keyPcrPrimersRevSequences, keyPcrPrimersRevSequences,
"");
1278 typedef list<CRef<CPCRPrimer> > PRIMERS;
1279 const PRIMERS& primers = pset.
Get();
1280 for (PRIMERS::const_iterator cit = primers.begin();
1281 cit != primers.end(); ++cit) {
1288 return names.substr(1);
1297 typedef list<CRef<CPCRPrimer> > PRIMERS;
1298 const PRIMERS& primers = pset.
Get();
1299 for (PRIMERS::const_iterator cit = primers.begin();
1300 cit != primers.end(); ++cit) {
1304 sequences += primer.
GetSeq();
1307 return sequences.substr(1);
1324 string colName = cit->first;
1326 if (ColstubToColnames.
find(colStub) == ColstubToColnames.
end()) {
1327 ColstubToColnames[colStub] =
NAMELIST(1,colName);
1329 ColstubToColnames[colStub].push_back(colName);
1335 for (FIELDS::const_iterator cit = colStubs.begin();
1336 cit != colStubs.end(); ++cit) {
1337 COLSTUBNAMESMAP::iterator mapIter = ColstubToColnames.
find(*cit);
1338 if (mapIter != ColstubToColnames.
end()) {
1339 colNames.insert(colNames.end(), mapIter->second.begin(),
1340 mapIter->second.end());
1345 for (NAMELIST::const_iterator cit = colNames.begin();
1346 cit != colNames.end(); ++cit) {
1348 string displayName =
column.GetHeader().GetTitle();
1355 for (
unsigned int u=0; u < numRows; ++u) {
1356 for (NAMELIST::const_iterator cit = colNames.begin();
1357 cit != colNames.end(); ++cit) {
1359 const string* pValue =
column.GetStringPtr(u);
1377 const string& colName)
1382 return "pcr-primers";
1388 return colName.substr(0,position);
1396 const string& colName,
1397 const string& colValue)
1402 column.SetData().SetString().push_back(colValue);
1412 for (FIELDS::const_iterator cit = fields.begin(); cit != fields.end(); ++cit) {
1413 string field = *cit;
1418 "Field name \"" + field +
"\" not recognized.");
1430 const string&
value)
1439 const string&
value)
1450 const string& message):
1453 "",
"",
"", message,
CLineError::TVecOfLines())
1461 const string& message)
1464 return new CSrcError(severity, message);
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
@Affil.hpp User-defined methods of the data storage class.
@Auth_list.hpp User-defined methods of the data storage class.
const string & GetTaxname(void) const
bool IsSetOrgMod(void) const
static string GetOrganelleByGenome(unsigned int genome)
const COrgName & GetOrgname(void) const
static string GetStringFromOrigin(unsigned int origin)
bool IsSetTaxname(void) const
ECompare Compare(const CDate &date) const
@ eCompare_before
*this comes first.
@Name_std.hpp User-defined methods of the data storage class.
@OrgMod.hpp User-defined methods of the data storage class.
static bool IsDiscouraged(const TSubtype stype, bool indexer=false)
static TSubtype GetSubtypeValue(const string &str, EVocabulary vocabulary=eVocabulary_raw)
const string & GetDivision(void) const
bool IsSetDivision(void) const
@Pubdesc.hpp User-defined methods of the data storage class.
@Seq_descr.hpp User-defined methods of the data storage class.
const CSeqTable_column & GetColumn(CTempString column_name) const
static CSrcError * Create(ncbi::EDiagSev severity, const std::string &)
CSrcError(const CLineError &other)
virtual bool xTryDefaultId(const string &id, ILineErrorListener *=nullptr)
static NAMEMAP sFieldnameToColname
virtual bool xGatherOrigin(const CBioSource &, const string &, ILineErrorListener *=nullptr)
virtual bool xFormatTabDelimited(const FIELDS &, CNcbiOstream &)
static string xPrimerSetSequences(const CPCRPrimerSet &)
static bool xIsOrgmodTypeSuppressed(COrgMod::TSubtype)
virtual bool xGatherDb(const CBioSource &, const string &, ILineErrorListener *=nullptr)
static bool ValidateFields(const FIELDS &fields, ILineErrorListener *=nullptr)
Verify that each string in fields is a valid qualifier name.
virtual bool xGatherOrgCommon(const CBioSource &, const string &, ILineErrorListener *=nullptr)
virtual bool xGatherLocalId(CBioseq_Handle, ILineErrorListener *=nullptr)
virtual bool WriteBioseqHandle(CBioseq_Handle, const FIELDS &, CNcbiOstream &)
Write a table of the specified qualifier-field entries found in the BioSource of a given Bioseq.
virtual bool xGatherPcrPrimers(const CBioSource &, const string &, ILineErrorListener *=nullptr)
static HANDLER xGetHandler(const string &)
static const FIELDS sAllSrcCheckFields
All possible fields processed by srchck application, in their canonical order.
void xPrepareTableColumn(const string &, const string &, const string &="")
static const FIELDS sDefaultSrcCheckFields
Default fields processed by srcchk application, in their canonical order.
static const FIELDS sDefaultSeqEntryFields
static const FIELDS sAllSeqEntryFields
virtual bool xGatherSubtypeFeat(const CBioSource &, const string &, ILineErrorListener *=nullptr)
bool xValueNeedsQuoting(const string &)
static bool xIsSubsourceTypeSuppressed(CSubSource::TSubtype)
void xAppendColumnValue(const string &, const string &)
static string xPrimerSetNames(const CPCRPrimerSet &)
COLUMNMAP mColnameToIndex
virtual bool xGatherId(CBioseq_Handle, ILineErrorListener *=nullptr)
string xDequotedValue(const string &)
virtual bool xGather(CBioseq_Handle, string id, const FIELDS &, ILineErrorListener *=nullptr)
CRef< CSeq_table > mSrcTable
static FIELDS xGetOrderedFieldNames(const FIELDS &)
virtual bool xGatherGi(CBioseq_Handle, ILineErrorListener *=nullptr)
static FIELDS xProcessFieldNames(const FIELDS &)
static NAMELIST xGetOrgModSubtypeNames()
static string xCompressFieldName(const string &)
bool(CSrcWriter::* HANDLER)(const CBioSource &, const string &, ILineErrorListener *)
virtual bool xGatherTaxonId(const CBioSource &, const string &, ILineErrorListener *=nullptr)
virtual bool xGatherOrgnameLineage(const CBioSource &, const string &, ILineErrorListener *=nullptr)
static NAMELIST xGetSubSourceSubtypeNames()
virtual bool WriteBioseqHandles(const vector< pair< string, CBioseq_Handle > > &, const FIELDS &, CNcbiOstream &, ILineErrorListener *=nullptr)
Write a table of the specified qualifier-field entries found in the BioSources of a vector of Bioseqs...
virtual bool xGatherOrgModFeat(const CBioSource &, const string &, ILineErrorListener *=nullptr)
string xGetColStub(const string &)
virtual bool xGatherDefline(CBioseq_Handle, ILineErrorListener *=nullptr)
string xGetOriginalId(const CBioseq_Handle &) const
virtual bool xHandleSourceField(const CBioSource &, const string &, ILineErrorListener *=nullptr)
virtual bool xGatherGenome(const CBioSource &, const string &, ILineErrorListener *=nullptr)
virtual bool xGatherTaxname(const CBioSource &, const string &, ILineErrorListener *=nullptr)
virtual bool xGatherBankitId(CBioseq_Handle, ILineErrorListener *=nullptr)
virtual bool WriteSeqEntry(const CSeq_entry &, CScope &, CNcbiOstream &, bool=false)
Write a table of all qualifier-field entries occurring in the BioSources for a given Seq-entry,...
static HANDLERMAP sHandlerMap
virtual bool xGatherDivision(const CBioSource &, const string &, ILineErrorListener *=nullptr)
static TSubtype GetSubtypeValue(const string &str, EVocabulary vocabulary=eVocabulary_raw)
static bool NeedsNoText(const TSubtype &subtype)
static bool IsDiscouraged(const TSubtype subtype)
virtual bool PutError(const ILineError &)=0
Store error in the container, and return true if error was stored fine, and return false if the calle...
container_type::const_iterator const_iterator
container_type::iterator iterator
const_iterator begin() const
const_iterator end() const
const_iterator find(const key_type &key) const
iterator_bool insert(const value_type &val)
const_iterator find(const key_type &key) const
const_iterator end() const
API (CDeflineGenerator) for computing sequences' titles ("definitions").
static const struct name_t names[]
std::ofstream out("events_result.xml")
main entry point for tests
Utility macros and typedefs for exploring NCBI objects from general.asn.
#define FOR_EACH_USERFIELD_ON_USEROBJECT(Itr, Var)
FOR_EACH_USERFIELD_ON_USEROBJECT EDIT_EACH_USERFIELD_ON_USEROBJECT.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
EDiagSev
Severity level for the posted diagnostics.
@ eDiag_Error
Error message.
list< pair< string, TEnumValueType > > TValues
#define ENUM_METHOD_NAME(EnumName)
void GetLabel(string *label, ELabelType type=eDefault, TLabelFlags flags=fLabel_Default) const
Append a label for this Seq-id to the supplied string.
@ eContent
Untagged human-readable accession or the like.
string GetAccessionForId(const objects::CSeq_id &id, CScope &scope, EAccessionVersion use_version=eWithAccessionVersion, EGetIdType flags=0)
Retrieve the accession string for a Seq-id.
CSeq_entry_Handle AddTopLevelSeqEntry(CSeq_entry &top_entry, TPriority pri=kPriority_Default, EExist action=eExist_Default)
Add seq_entry, default priority is higher than for defaults or loaders Add object to the score with p...
vector< CSeq_id_Handle > TId
CConstRef< CSeq_id > GetLocalIdOrNull(void) const
CConstRef< CSeq_id > GetSeqId(void) const
Get id which can be used to access this bioseq handle Throws an exception if none is available.
CScope & GetScope(void) const
Get scope this handle belongs to.
const TId & GetId(void) const
void Reset(void)
Reset reference object.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
static bool IsBlank(const CTempString str, SIZE_TYPE pos=0)
Check if a string is blank (has no text).
static string IntToString(int value, TNumToStringFlags flags=0, int base=10)
Convert int to string.
static SIZE_TYPE Find(const CTempString str, const CTempString pattern, ECase use_case=eCase, EDirection direction=eForwardSearch, SIZE_TYPE occurrence=0)
Find the pattern in the string.
static string & Replace(const string &src, const string &search, const string &replace, string &dst, SIZE_TYPE start_pos=0, SIZE_TYPE max_replace=0, SIZE_TYPE *num_replace=0)
Replace occurrences of a substring within a string.
static bool EqualNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive equality of a substring with another string.
static string & ReplaceInPlace(string &src, const string &search, const string &replace, SIZE_TYPE start_pos=0, SIZE_TYPE max_replace=0, SIZE_TYPE *num_replace=0)
Replace occurrences of a substring within a string.
static string TruncateSpaces(const string &str, ETrunc where=eTrunc_Both)
Truncate spaces in a string.
static string & ToLower(string &str)
Convert string to lower case – string& version.
@ fConvErr_NoThrow
Do not throw an exception on error.
static const char label[]
const TDate & GetDate(void) const
Get the Date member data.
bool IsSetAffil(void) const
author affiliation Check if a value has been assigned to Affil data member.
const TAffil & GetAffil(void) const
Get the Affil member data.
const TStr & GetStr(void) const
Get the variant data.
const TAuthors & GetAuthors(void) const
Get the Authors member data.
bool IsSetAuthors(void) const
not necessarily authors of the paper Check if a value has been assigned to Authors data member.
const TName & GetName(void) const
Get the Name member data.
const TAffil & GetAffil(void) const
Get the Affil member data.
list< CRef< CAuthor > > TStd
bool IsStr(void) const
Check if variant Str is selected.
bool IsSetDate(void) const
replaces imp, will become required Check if a value has been assigned to Date data member.
bool IsSetNames(void) const
Check if a value has been assigned to Names data member.
const TStd & GetStd(void) const
Get the variant data.
bool IsSetName(void) const
Author, Primary or Secondary Check if a value has been assigned to Name data member.
const TNames & GetNames(void) const
Get the Names member data.
bool IsStd(void) const
Check if variant Std is selected.
bool IsSetAffil(void) const
Author Affiliation, Name Check if a value has been assigned to Affil data member.
const Tdata & Get(void) const
Get the member data.
const TSubtype & GetSubtype(void) const
Get the Subtype member data.
const TPcr_primers & GetPcr_primers(void) const
Get the Pcr_primers member data.
TGenome GetGenome(void) const
Get the Genome member data.
TOrigin GetOrigin(void) const
Get the Origin member data.
bool IsSetSeq(void) const
Check if a value has been assigned to Seq data member.
const Tdata & Get(void) const
Get the member data.
bool IsSetName(void) const
Check if a value has been assigned to Name data member.
bool IsSetOrg(void) const
Check if a value has been assigned to Org data member.
bool IsSetSubtype(void) const
Check if a value has been assigned to Subtype data member.
bool IsSetPcr_primers(void) const
Check if a value has been assigned to Pcr_primers data member.
const TForward & GetForward(void) const
Get the Forward member data.
const TOrg & GetOrg(void) const
Get the Org member data.
bool IsSetOrigin(void) const
Check if a value has been assigned to Origin data member.
TSubtype GetSubtype(void) const
Get the Subtype member data.
bool IsSetGenome(void) const
Check if a value has been assigned to Genome data member.
const TSeq & GetSeq(void) const
Get the Seq member data.
bool IsSetReverse(void) const
Check if a value has been assigned to Reverse data member.
const TName & GetName(void) const
Get the Name member data.
const TReverse & GetReverse(void) const
Get the Reverse member data.
const TName & GetName(void) const
Get the Name member data.
bool IsSetForward(void) const
Check if a value has been assigned to Forward data member.
bool IsSetName(void) const
Check if a value has been assigned to Name data member.
const TStr & GetStr(void) const
Get the variant data.
bool IsStr(void) const
Check if variant Str is selected.
bool IsConsortium(void) const
Check if variant Consortium is selected.
bool IsSetType(void) const
type of object within class Check if a value has been assigned to Type data member.
const TData & GetData(void) const
Get the Data member data.
const TInitials & GetInitials(void) const
Get the Initials member data.
bool IsName(void) const
Check if variant Name is selected.
E_Choice Which(void) const
Which variant is currently selected.
bool IsSetInitials(void) const
first + middle initials Check if a value has been assigned to Initials data member.
bool IsStr(void) const
Check if variant Str is selected.
bool IsSetLast(void) const
Check if a value has been assigned to Last data member.
const TStr & GetStr(void) const
Get the variant data.
const TConsortium & GetConsortium(void) const
Get the variant data.
const TLabel & GetLabel(void) const
Get the Label member data.
const TType & GetType(void) const
Get the Type member data.
const TLast & GetLast(void) const
Get the Last member data.
bool IsSetData(void) const
Check if a value has been assigned to Data data member.
const TName & GetName(void) const
Get the variant data.
TId GetId(void) const
Get the variant data.
const TMod & GetMod(void) const
Get the Mod member data.
bool IsSetDb(void) const
ids in taxonomic or culture dbases Check if a value has been assigned to Db data member.
const TLineage & GetLineage(void) const
Get the Lineage member data.
TSubtype GetSubtype(void) const
Get the Subtype member data.
const TSubname & GetSubname(void) const
Get the Subname member data.
bool IsSetCommon(void) const
common name Check if a value has been assigned to Common data member.
bool IsSetLineage(void) const
lineage with semicolon separators Check if a value has been assigned to Lineage data member.
const TCommon & GetCommon(void) const
Get the Common member data.
const TDb & GetDb(void) const
Get the Db member data.
bool IsSetOrgname(void) const
Check if a value has been assigned to Orgname data member.
const TOrgname & GetOrgname(void) const
Get the Orgname member data.
list< CRef< CPub > > Tdata
bool IsSet(void) const
Check if a value has been assigned to data member.
const Tdata & Get(void) const
Get the member data.
const TColumns & GetColumns(void) const
Get the Columns member data.
void SetHeader(THeader &value)
Assign a value to Header data member.
void SetNum_rows(TNum_rows value)
Assign a value to Num_rows data member.
TNum_rows GetNum_rows(void) const
Get the Num_rows member data.
void SetDefault(TDefault &value)
Assign a value to Default data member.
TColumns & SetColumns(void)
Assign a value to Columns data member.
const TUser & GetUser(void) const
Get the variant data.
bool IsSetPub(void) const
the citation(s) Check if a value has been assigned to Pub data member.
const TPub & GetPub(void) const
Get the Pub member data.
bool IsUser(void) const
Check if variant User is selected.
@ e_Pub
a reference to the publication
@ e_Source
source of materials, includes Org-ref
constexpr auto sort(_Init &&init)
constexpr bool empty(list< Ts... >) noexcept
const struct ncbi::grid::netcache::search::fields::KEY key
const GenericPointer< typename T::ValueType > T2 defaultValue
Utility macros and typedefs for exploring NCBI objects from seq.asn.
#define FOR_EACH_SEQDESC_ON_SEQDESCR(Itr, Var)
FOR_EACH_SEQDESC_ON_SEQDESCR EDIT_EACH_SEQDESC_ON_SEQDESCR.
#define FIELD_IS_SET_AND_IS(Var, Fld, Chs)
FIELD_IS_SET_AND_IS base macro.
#define GET_FIELD(Var, Fld)
GET_FIELD base macro.
const size_t countDefaultSrcCheckFields
static const string arrDefaultSrcCheckFields[]
const size_t countDefaultSeqEntryFields
static const string arrDefaultSeqEntryFields[]
static const char * column