28 #ifndef SMDS_SetIterator_HeaderFile
29 #define SMDS_SetIterator_HeaderFile
39 template<
typename VALUE,
typename VALUE_SET_ITERATOR>
41 static VALUE
value(VALUE_SET_ITERATOR it) {
return (VALUE) *it; }
44 template<
typename VALUE,
typename VALUE_SET_ITERATOR>
46 static VALUE
value(VALUE_SET_ITERATOR it) {
return (VALUE) it->first; }
49 template<
typename VALUE,
typename VALUE_SET_ITERATOR>
51 static VALUE
value(VALUE_SET_ITERATOR it) {
return (VALUE) it->second; }
54 template<
typename VALUE,
typename VALUE_SET_ITERATOR>
56 static VALUE
value(VALUE_SET_ITERATOR it) {
return (VALUE) &(*it); }
63 template <
typename VALUE>
69 template <
typename VALUE>
83 template<
typename VALUE,
84 typename VALUE_SET_ITERATOR,
94 const VALUE_SET_ITERATOR &
end,
95 const VALUE_FILTER& filter=VALUE_FILTER())
100 const VALUE_SET_ITERATOR &
end,
101 const VALUE_FILTER& filter=VALUE_FILTER())
117 VALUE ret = ACCESOR::value(
_beg++ );
134 SMDS::ValueAccessor<typename M::mapped_type,
135 typename M::const_iterator> > {
136 typedef SMDS_SetIterator<
typename M::mapped_type,
typename M::const_iterator,
146 typename M::const_reverse_iterator,
147 SMDS::ValueAccessor<typename M::mapped_type,
148 typename M::const_reverse_iterator> > {
149 typedef SMDS_SetIterator<
typename M::mapped_type,
typename M::const_reverse_iterator,
159 SMDS::KeyAccessor<typename M::key_type,
160 typename M::const_iterator> > {
171 SMDS::KeyAccessor<typename M::key_type,
172 typename M::const_iterator> > {
SMDS_SetIterator< SMDS_pNode, SMDS_pNode const * > SMDS_NodeArrayIterator
Definition: SMDS_SetIterator.hxx:215
SMDS_SetIterator< SMDS_pNode, std::vector< SMDS_pNode >::const_iterator > SMDS_NodeVectorIterator
Definition: SMDS_SetIterator.hxx:211
SMDS_SetIterator< SMDS_pElement, std::vector< SMDS_pElement >::const_iterator > SMDS_ElementVectorIterator
Definition: SMDS_SetIterator.hxx:194
SMDS_SetIterator< SMDS_pElement, SMDS_pElement const * > SMDS_ElementArrayIterator
Definition: SMDS_SetIterator.hxx:198
SMDS_SetIterator< SMDS_pElement, std::vector< SMDS_pNode >::const_iterator > SMDS_NodeVectorElemIterator
Definition: SMDS_SetIterator.hxx:202
const SMDS_MeshNode * SMDS_pNode
Definition: SMDS_SetIterator.hxx:189
SMDS_SetIterator< SMDS_pElement, SMDS_pNode const * > SMDS_NodeArrayElemIterator
Definition: SMDS_SetIterator.hxx:206
const SMDS_MeshElement * SMDS_pElement
Definition: SMDS_SetIterator.hxx:186
IMAP::const_iterator begin(const IMAP &m)
Definition: StdMeshers_Projection_2D.cxx:104
IMAP::const_iterator end(const IMAP &m)
Definition: StdMeshers_Projection_2D.cxx:106
Abstract class for iterators.
Definition: SMDS_Iterator.hxx:33
Base class for elements.
Definition: SMDS_MeshElement.hxx:56
Definition: SMDS_MeshNode.hxx:36
SMDS_Iterator iterating over abstract set of values like STL containers.
Definition: SMDS_SetIterator.hxx:88
VALUE_SET_ITERATOR _beg
Definition: SMDS_SetIterator.hxx:90
virtual void init(const VALUE_SET_ITERATOR &begin, const VALUE_SET_ITERATOR &end, const VALUE_FILTER &filter=VALUE_FILTER())
Initialization.
Definition: SMDS_SetIterator.hxx:99
VALUE_SET_ITERATOR _end
Definition: SMDS_SetIterator.hxx:90
SMDS_SetIterator(const VALUE_SET_ITERATOR &begin, const VALUE_SET_ITERATOR &end, const VALUE_FILTER &filter=VALUE_FILTER())
Definition: SMDS_SetIterator.hxx:93
VALUE_FILTER _filter
Definition: SMDS_SetIterator.hxx:91
virtual bool more()
Return true iff there are other object in this iterator.
Definition: SMDS_SetIterator.hxx:110
virtual VALUE next()
Return the current object and step to the next one.
Definition: SMDS_SetIterator.hxx:115
Definition: chrono.hxx:31
Definition: SMDS_SetIterator.hxx:45
static VALUE value(VALUE_SET_ITERATOR it)
Definition: SMDS_SetIterator.hxx:46
Definition: SMDS_SetIterator.hxx:71
bool operator()(const VALUE &t)
Definition: SMDS_SetIterator.hxx:72
Filters of value pointed by iterator.
Definition: SMDS_SetIterator.hxx:65
bool operator()(const VALUE &)
Definition: SMDS_SetIterator.hxx:66
Definition: SMDS_SetIterator.hxx:55
static VALUE value(VALUE_SET_ITERATOR it)
Definition: SMDS_SetIterator.hxx:56
Accessors to value pointed by iterator.
Definition: SMDS_SetIterator.hxx:40
static VALUE value(VALUE_SET_ITERATOR it)
Definition: SMDS_SetIterator.hxx:41
Definition: SMDS_SetIterator.hxx:50
static VALUE value(VALUE_SET_ITERATOR it)
Definition: SMDS_SetIterator.hxx:51
map iterators
Definition: SMDS_SetIterator.hxx:135
SMDS_SetIterator< typename M::mapped_type, typename M::const_iterator, SMDS::ValueAccessor< typename M::mapped_type, typename M::const_iterator > > parent_type
Definition: SMDS_SetIterator.hxx:138
SMDS_mapIterator(const M &m)
Definition: SMDS_SetIterator.hxx:139
iterator on keys of a map
Definition: SMDS_SetIterator.hxx:160
SMDS_SetIterator< typename M::key_type, typename M::const_iterator, SMDS::KeyAccessor< typename M::key_type, typename M::const_iterator > > parent_type
Definition: SMDS_SetIterator.hxx:163
SMDS_mapKeyIterator(const M &m)
Definition: SMDS_SetIterator.hxx:164
reverse iterator on keys of a map
Definition: SMDS_SetIterator.hxx:172
SMDS_mapKeyReverseIterator(const M &m)
Definition: SMDS_SetIterator.hxx:176
SMDS_SetIterator< typename M::key_type, typename M::const_iterator, SMDS::KeyAccessor< typename M::key_type, typename M::const_iterator > > parent_type
Definition: SMDS_SetIterator.hxx:175
reverse iterator on values of a map
Definition: SMDS_SetIterator.hxx:148
SMDS_mapReverseIterator(const M &m)
Definition: SMDS_SetIterator.hxx:152
SMDS_SetIterator< typename M::mapped_type, typename M::const_reverse_iterator, SMDS::ValueAccessor< typename M::mapped_type, typename M::const_reverse_iterator > > parent_type
Definition: SMDS_SetIterator.hxx:151