<
typenameMapped,
typenamePosition>
class CRangeMap;
56 template<
typenameMapped,
typenamePosition>
class CRangeMultimap;
59 template<
typenamePosition,
typenameMapped>
107 template<
typenamePosition,
typenameMapped>
117 template<
typenamePosition,
typenameMapped>
128 template<
typenameMapTraits>
140 typedef typenameTMapTraits::TLevelMap::iterator
TLevelIter;
148 template<
typenameMapTraits>
159 typedef typenameTMapTraits::TSelectMap::const_iterator
TSelectIter;
160 typedef typenameTMapTraits::TLevelMap::const_iterator
TLevelIter;
169 template<
classTraits>
193friend class
CRangeMap<mapped_type, position_type>;
249 return!(*
this== iter);
272 while( levelIter != levelIterEnd ) {
274 if( levelIter->first.GetToOpen() >
m_Range.GetFrom() ) {
275 if( levelIter->first.GetFrom() <
m_Range.GetToOpen() ) {
292 if( from <= range_type::GetWholeFrom() + shift ) {
305 m_Range= range_type::GetEmpty();
311 m_Range= range_type::GetWhole();
314 if( selectIter != selectIterEnd ) {
326 while( selectIter != selectIterEnd &&
356 template<
classTraits>
360 if( !
key.Empty() ) {
361 TSelectIterselectIter = selectMap.find(TTraits::get_max_length(
key));
363 if( selectIter != selectIterEnd ) {
365 if( levelIter != selectIter->second.end() ) {
367m_Range = range_type::GetWhole();
368m_SelectIter = selectIter;
369m_SelectIterEnd = selectIterEnd;
370m_LevelIter = levelIter;
376m_Range = range_type::GetEmpty();
377m_SelectIter = m_SelectIterEnd = selectIterEnd;
381 template<
classTraits>
412 #if defined(_RWSTD_VER) && !defined(_RWSTD_STRICT_ANSI) 439 n+=
i->second.size();
508 if( level.
empty() )
539 template<
typenameMapped,
typenamePosition =
int>
569 if(
value.first.Empty() ) {
576TRangeMapTraits::get_max_length(
value.first);
582pair<TLevelMapI, bool> levelIns = selectIter->second.insert(
value);
584pair<iterator, bool> ret;
585ret.second = levelIns.second;
586ret.first.m_Range = range_type::GetWhole();
587ret.first.m_SelectIter = selectIter;
601 template<
typenameMapped,
typenamePosition =
int>
631 if(
value.first.Empty() ) {
638TRangeMapTraits::get_max_length(
value.first);
642ret.
m_Range= range_type::GetWhole();
container_type::const_iterator const_iterator
container_type::iterator iterator
const_iterator end() const
container_type::value_type value_type
container_type::iterator iterator
Include a standard set of the NCBI C++ Toolkit most basic headers.
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
TTraits::position_type position_type
TSelectIter GetSelectIterEnd(void) const
TParent::value_type value_type
map< typename TParent::range_type, Mapped > TLevelMap
iterator insert(const value_type &value)
pair< const range_type, mapped_type > value_type
TSelectMap::value_type select_value
CRangeMapBase< CRangeMapTraits< Position, Mapped > > TParent
CRangeMapIteratorTraits< TMapTraits > TIteratorTraits
TParent::select_value select_value
CRangeMap< Mapped, Position > TRangeMap
const range_type & GetRange(void) const
TMapTraits::TSelectMap::iterator TSelectIter
const_iterator begin(void) const
const TMapTraits::TLevelMap & TLevelMapRef
TSelectMapI insertLevel(position_type key)
TParent::select_value select_value
TTraits::range_type range_type
TConstIteratorTraits::iterator const_iterator
pointer operator->(void) const
TParent::TLevelMapI TLevelMapI
CRangeMapIterator< TIteratorTraits > iterator
TParent::TSelectMapI TSelectMapI
TMapTraits::TLevelMap::const_iterator TLevelIter
TMapTraits::value_type * pointer
TRangeMapTraits::TSelectMap TSelectMap
TParent::mapped_type mapped_type
CRangeMapIteratorTraits< TMapTraits > TNCIteratorTraits
TParent::size_type size_type
TParent::iterator iterator
static position_type get_max_length(const range_type &key)
TParent::size_type size_type
TRangeMapTraits::TRangeMap TThisType
TSelectIter GetSelectIter(void) const
TParent::TSelectMap TSelectMap
pair< iterator, bool > insert(const value_type &value)
map< Position, TLevelMap > TSelectMap
TRangeMapTraits::value_type value_type
TTraits::TSelectMapRef TSelectMapRef
TParent::key_type key_type
void SetEnd(TSelectMapRef selectMap)
void SetBegin(const range_type &range, TSelectMapRef selectMap)
const TMapTraits::value_type & reference
CRangeMapIterator< TNCIteratorTraits > non_const_iterator
TIteratorTraits::iterator iterator
TRangeMapTraits::TLevelMap TLevelMap
bool operator==(const TThisType &iter) const
TLevelIter GetLevelIter(void) const
TParent::TSelectMap TSelectMap
TMapTraits::TLevelMap & TLevelMapRef
mapped_type & operator[](const key_type &key)
TTraits::mapped_type mapped_type
CRangeMapIterator(const typename TTraits::non_const_iterator &iter)
TLevelIter GetLevelIterEnd(void) const
CRangeMapConstIteratorTraits< TMapTraits > TIteratorTraits
range_type GetInterval(void) const
CRangeMapIteratorTraits< TMapTraits > TNCIteratorTraits
iterator begin(const range_type &range)
TParent::TLevelMap TLevelMap
TLevelIter FirstLevelIter(void)
TSelectMap::iterator TSelectMapI
CRangeMapIteratorTraits< TRangeMapTraits > TIteratorTraits
reference operator*(void) const
CRangeMapBase< CRangeMultimapTraits< Position, Mapped > > TParent
TParent::TLevelMap TLevelMap
CRangeMapTraitsBase< Position, Mapped > TParent
CRangeMapTraitsBase< Position, Mapped > TParent
TThisType & operator++(void)
TParent::const_iterator const_iterator
TParent::mapped_type mapped_type
TParent::TSelectMapI TSelectMapI
TTraits::TLevelIter TLevelIter
void swap(TThisType &rangeMap)
void SetBegin(TSelectMapRef selectMap)
TTraits::TSelectIter TSelectIter
TSelectIter m_SelectIterEnd
TParent::range_type range_type
TParent::range_type range_type
CRangeMapIterator< TNCIteratorTraits > non_const_iterator
TParent::TLevelMapI TLevelMapI
const_iterator end(void) const
TMapTraits::TLevelMap::iterator TLevelIter
TParent::position_type position_type
TMapTraits::TSelectMap::const_iterator TSelectIter
DECLARE_OPERATOR_BOOL(Valid())
const TMapTraits::TRangeMap & TRangeMapRef
TParent::TRangeMapTraits TRangeMapTraits
void Find(const range_type &key, TSelectMapRef selectMap)
CRange< position_type > range_type
bool SetLevelIter(TLevelIter levelIter)
TTraits::value_type value_type
TTraits::TRangeMap TRangeMap
TParent::key_type key_type
TTraits::reference reference
TRangeMapTraits::mapped_type mapped_type
CRangeMultimap< Mapped, Position > TRangeMap
TRangeMapTraits::range_type range_type
TMapTraits::TSelectMap & TSelectMapRef
TRangeMapTraits::position_type position_type
TMapTraits::value_type & reference
CRangeMapConstIteratorTraits< TRangeMapTraits > TConstIteratorTraits
multimap< typename TParent::range_type, Mapped > TLevelMap
TParent::position_type position_type
const TMapTraits::TSelectMap & TSelectMapRef
TParent::iterator iterator
map< Position, TLevelMap > TSelectMap
size_type erase(const key_type &key)
void erase(iterator iter)
TParent::TRangeMapTraits TRangeMapTraits
TLevelMap::iterator TLevelMapI
TParent::const_iterator const_iterator
TParent::value_type value_type
CRangeMapIterator< TIteratorTraits > iterator
iterator find(const key_type &key)
size_type size(void) const
const_iterator find(const key_type &key) const
const TMapTraits::value_type * pointer
TMapTraits::TRangeMap & TRangeMapRef
bool operator!=(const TThisType &iter) const
const_iterator begin(const range_type &range) const
TTraits::iterator TThisType
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
double value_type
The numeric datatype used by the parser.
const struct ncbi::grid::netcache::search::fields::KEY key
const GenericPointer< typename T::ValueType > T2 value
const GenericPointer< typename T::ValueType > & pointer
CStaticArrayMap< string, CSegmentMapTrack::TSegmentLevel > TLevelMap
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