[Dune] DataHandle Interface.
Robert Kloefkorn
robertk at mathematik.uni-freiburg.de
Wed Jul 26 14:25:53 CEST 2006
Hallo Dune,
da sowohl für den Kommunikations MessageBuffer als auch für das
entsprechende DataHandle noch Interface Klassen und damit eine
vernünftige Beschreibung in der Doku gefehlt haben, hab ich diese
eingebaut. Es ändern sich damit folgende Sachen:
in dem file dune/grid/common/datahandleif.hh
gibt es nun eine die Beschreibung des MessageBufferIF und
der Klasse CommDataHandleIF.
die Methoden communicate des Gitter ändern sich wie folgt:
template <class DataHandleImp, class DataTypeImp>
void communicate(CommDataHandleIF<DataHandleImp,DataTypeImp> & data,...)
// funktioniert mit Barton-Nackman, also Implementierungen bleiben exakt
// gleich
bisher:
template <class DataHandle>
void communicate(DataHandle & data, ..)
Dies bedeutet, dass man im wesentlichen nur obigen header in die
Implementierung einbindet und seine eigenen DataHandle Klassen von
CommDataHandleIF ableitet (Beispiel siehe:
dune/grid/test/checkcommunicate.cc die Klasse ExampleDataHandle )
Ich habe dies im grid.hh sowie in YaspGrid und ALUGrid eingbaut und
werde es gleich einchecken. Falls bei jemandem der Code nicht
kompilieren sollte, so muss man eben entweder schnell die Ableitung von
der Schnittstellen Klasse einbauen, oder temporär auf die alte
communicate Schnittstelle zurück gehen. Ansonsten muss an den
Implementierungen nichts verändert werden.
Diese Änderungen habe ich an YaspGrid und ALUGrid getestet. Falls
trotzdem Fehler auftauchen, bitte ich um Entschuldigung.
Ich hoffe das niemand durch diese Änderungen in seiner Arbeit behindert
wird. Falls doch bitte ich um Entschuldigung.
Falls noch Fragen bestehen, bitte melden.
Grüßle
R
--
Robert Klöfkorn <robertk at mathematik.uni-freiburg.de>
Mathematisches Institut Tel: +49 (0) 761 203 5631
Abt. für Angewandte Mathematik Fax: +49 (0) 761 203 5632
Universität Freiburg
Hermann-Herder-Str. 10
79104 Freiburg
http://www.mathematik.uni-freiburg.de/IAM/homepages/robertk
More information about the Dune
mailing list