[Dune] Grid API without EntityPointer

Aleksejs Fomins aleksejs.fomins at lspr.ch
Tue Jan 6 15:56:53 CET 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dear Martin,

Thanks a lot for your reply. I see the situation more clearly now. We
will follow your suggestion and stick to the EntityPointer
functionality until the alternatives become available.

My third question was indeed a trivial one. It was more a question of
how would Dune prefer to implement the iterators under new convention.
You have already answered it.

Best,
Aleksejs

On 06/01/15 11:53, Martin Nolte wrote:
> Hi Aleksejs,
> 
> for the upcoming 2.4 release, all grid implementations must still 
> provide entity pointers. The removal of the entity pointer is
> planned for the 3.0 release, scheduled to follow after 2.4.
> 
> As the removal of entity pointers will have quite some impact on
> users, there is an ongoing discussion whether 2.4 should already
> provide most features necessary to avoid using the entity pointer
> in user code. While compatibility is good for users, it causes
> additional costs, which are eventually paid by the grid developers.
> So, as a grid developer, you always wish for the least possible
> compatibility in user code.
> 
> It seems you can neither afford to wait for 3.0 to arrive nor for
> these features to be implemented in the master (which will happen
> over the next year). Hence, you will have to implement entity
> pointers. On the upside, you already know that entity pointers are
> a compatibility construct. Therefore, you can implement them as
> thin as possible to allow for easy removal once the changes have
> been done in the master.
> 
> Frankly, you third question puzzles me a little: Where is the
> problem with the facade EntityIterator still inheriting from
> EntityPointer? For metagrids, my iterator implementation never
> inherits from the entity pointer implementation. However, if you
> just want to know how the future interface will look: Just copy all
> methods from EntityPointer to EntityIterator, remove the
> inheritance and you're nearly done. The only difference is that
> currently all iterators are required to cast into and compare to an
> entity pointer. But that is hidden deeply under the hood.
> 
> I hope this gives you some perspective on the future path. Of
> course, all this only reflects my understanding of it and there
> might be a lot of discussion coming upon us before the entity
> pointer can be finally removed forever.
> 
> Best,
> 
> Martin
> 
> On 01/06/2015 09:32 AM, Aleksejs Fomins wrote:
>> Dear Dune,
>> 
>> We are currently trying very hard to finish the implementation of
>> the Grid API for the CurvilinearGrid. We have certain pressure on
>> us, as we desperately require this functionality soon to be able
>> to model nanooptical structures. This Grid manager will be made
>> publicly available in due course.
>> 
>> Based on the results of the last developer meeting minutes, we
>> have decided to implement the API completely without using the
>> EntityPointer, because it is not hip any more. However, when
>> reading the last EntitySeed discussion, it seems that we may have
>> misinterpreted the developer intentions. Therefore, I have the
>> following questions:
>> 
>> 1) Is it currently possible to use a Grid which is completely
>> free of EntityPointers?
>> 
>> 2) If no, then when is such functionality foreseen?
>> 
>> 3) If yes, then how does one implement, for example, iterators.
>> Even in the patch provided by Steffen, the iterator class still
>> seems to inherit from the EntityPointer class, which leaves me
>> puzzled on how to implement iterators without EntityPointers.
>> 
>> Best Regards, Aleksejs
>> 
>> 
>> _______________________________________________ Dune mailing
>> list Dune at dune-project.org 
>> http://lists.dune-project.org/mailman/listinfo/dune
>> 
> 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQIcBAEBAgAGBQJUq/e1AAoJEDkNM7UOEwMZp9oQAONCw1aJBAqRgw7053Fy/gGo
1rQFzLdl+3RRpe28YHVD+pZxvOOg4dJ6dCTMI+Fja8xlV5jmHmvxiaVuMOL1X6dZ
VMw8pQwvKG6SrKjpWdLT5VZCwoa4AE6U1XRuQLIBqw5bZ4GTEH4nrOa1XgN6PL22
YfV9r8WWGAmpKS09Y/jX8t7OCTw9P/87i+4eZonBExCpfHl6yW0nceQrynkNFsVS
rSzqVrxwuZNHF6xtfCuphjYzgVh1KU2cURvik/WBDLere3qwmsCuLvrLK55wKRnc
kbUReI2sRpR+ZdERTdZDqW6RYNUdqy98QaaDniP/IMNvvC4vmjIDa50sjhJAjPAO
9X637ed6c7r4w4SyTdH/Fbg62qgGKiLCboqFZluZWF5eyUzK424gbmqQEM2canWC
Xb2tbfDcVBRschD77ko76YK8TBP1R0RF+e0A43jKSR9jagkwghN38FMi5E/lryt6
VIQHdiUp8HcYJJfUdiddM8W2dtRVwlwFB8qFL5yHBRnc6iVNCubklLs13UJF86ls
+fjJnoAPx5lhN6bIvs+Yd6DmOqWnAnyI8/Lqr8VqG2Nfs0Oxz+JOSyEVhqONEl8r
EcPWugW5qHgiGq1fQk+9e9QA9kFnWsSKQoSEjfF8qFKpNfXFGUbDG6PNtBSvMVxR
3MADKnHBiq8M/Xg2ChDc
=LqEi
-----END PGP SIGNATURE-----




More information about the Dune mailing list