#791 Unify interface class LevelIterator and LeafIterator
Metadata
Property | Value |
---|---|
Reported by | Martin Nolte (nolte@mathematik.uni-freiburg.de) |
Reported at | May 22, 2010 12:52 |
Type | Feature Request |
Version | Git (pre2.4) [autotools] |
Operating System | Unspecified / All |
Last edited by | Martin Nolte (nolte@mathematik.uni-freiburg.de) |
Last edited at | Feb 8, 2011 11:53 |
Closed by | Martin Nolte (nolte@mathematik.uni-freiburg.de) |
Closed at | Feb 8, 2011 11:53 |
Closed in version | 2.1 |
Resolution | Implemented |
Comment | in revision 7270 |
Description
The interface classes LevelIterator and LeafIterator don't differ (except for their name). On grid where leaf iterators coincide with level iterators, the will be only one implementation. Yet, the interface class will differ in type.
When grids start actually implementing their grid views, these grids will have to provide two different ones because of this difference in type. If a grid implementor now wants to store these grid views, he will store the lowest level grid view twice (as leaf and level views differ in type). This is not only a waste of memory (which can obviously be circumvented) but makes coding less transparent (at least to me).
Therefore, I request to unify LevelIterators and LeafIterators into one class. As to the name, I have no preference. GridIterator, ViewIterator of EntityIterator are all fine with me (the type is very rarely visible anyway).