ID(
"id");
55list<string> categories,
names;
65dummyRegistry.
Read(*iniIn, readFlags);
69 ITERATE(list<string>, cit, categories) {
77typeNamesPair.first = *cit;
84 if(*eit == ID || *eit ==
kEmptyStr)
continue;
88values.push_back(
value);
92 sort(values.begin(), values.end());
120 for(; (satdCit != satdEnd) && !
result; ++satdCit) {
121 if(
NStr::Equal(satdCit->second.first, typeStr.c_str(), caseSensitiveEqual)) {
133typeStr = cit->second.first;
134 if(typeStr.length() == 0)
result=
false;
146 for(; (satdCit != satdEnd); ++satdCit) {
147 if(
NStr::Equal(satdCit->second.first, typeStr.c_str(), caseSensitiveEqual)) {
160typeNames = cit->second.second;
161 if(typeNames.size() == 0)
result=
false;
172typeNames = cit->second.second;
173 if(typeNames.size() == 0)
result=
false;
183typeNamesPair.first = cit->second.first;
184typeNamesPair.second = cit->second.second;
196 for(TTypeNames::const_iterator nCit =
names.begin(); nCit !=
names.end(); ++nCit) {
197 if(
NStr::Equal(nCit->c_str(), descr.c_str(), caseSensitiveEqual)) {
216 for(; (satdCit != satdEnd) && !
result; ++satdCit) {
219 for(TTypeNames::const_iterator nCit =
names.begin(); nCit !=
names.end(); ++nCit, ++index) {
220 if(
NStr::Equal(nCit->c_str(), descr.c_str(), caseSensitiveEqual)) {
222 type= satdCit->first;
static bool IsValidTypeStr(const string &typeStr, bool useCase=true)
static int GetTypeAsInt(const string &typeStr, bool useCase=true)
static bool GetTypeAsString(int type, string &typeStr)
static bool GetTypeNamesPair(int type, TTypeNamesPair &typeNamesPair)
static const int m_invalidType
static bool IsPredefinedDescr(const string &descr, int &type, int &typeIndex, bool useCase=true)
static bool LoadTypes(const string &iniFile)
static bool IsValidType(int type)
static bool IsPredefinedDescrForType(int type, const string &descr, bool useCase=true)
static TStandardTypesData m_stdAnnotTypeData
static bool GetTypeNames(int type, TTypeNames &typeNames)
container_type::const_iterator const_iterator
const_iterator begin() const
const_iterator end() const
const_iterator find(const key_type &key) const
Include a standard set of the NCBI C++ Toolkit most basic headers.
vector< string > TTypeNames
pair< string, TTypeNames > TTypeNamesPair
static const struct name_t names[]
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define ERR_POST(message)
Error posting with file, line number information but without error codes.
void Trace(CExceptionArgs_Base &args)
virtual void EnumerateSections(list< string > *sections, TFlags flags=fAllLayers) const
Enumerate section names.
virtual int GetInt(const string §ion, const string &name, int default_value, TFlags flags=0, EErrAction err_action=eThrow) const
Get integer value of specified parameter name.
virtual void EnumerateEntries(const string §ion, list< string > *entries, TFlags flags=fAllLayers) const
Enumerate parameter names for a specified section.
IRWRegistry * Read(CNcbiIstream &is, TFlags flags=0, const string &path=kEmptyStr)
Read and parse the stream "is", and merge its content with current Registry entries.
virtual string GetString(const string §ion, const string &name, const string &default_value, TFlags flags=0) const
Get the parameter string value.
@ fInternalSpaces
Allow internal whitespace in names.
@ eReturn
Return default value.
#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.
IO_PREFIX::ifstream CNcbiIfstream
Portable alias for ifstream.
static void TruncateSpacesInPlace(string &str, ETrunc where=eTrunc_Both)
Truncate whitespace in a string (in-place)
ECase
Which type of string comparison.
static bool Equal(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2, ECase use_case=eCase)
Test for equality of a substring with another string.
@ eNocase
Case insensitive compare.
@ eCase
Case sensitive compare.
constexpr auto sort(_Init &&init)
const GenericPointer< typename T::ValueType > T2 value
Process information in the NCBI Registry, including working with configuration files.
std::istream & in(std::istream &in_, double &x_)
RetroSearch 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