[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