Skip to content
Snippets Groups Projects
Commit b8dd77ca authored by Martin Nolte's avatar Martin Nolte
Browse files

add gitter_impl.cc to lib

parent ad173401
No related branches found
No related tags found
No related merge requests found
...@@ -62,64 +62,6 @@ typedef GatherScatter GatherScatterType; ...@@ -62,64 +62,6 @@ typedef GatherScatter GatherScatterType;
typedef Gitter::AdaptRestrictProlong AdaptRestrictProlongType; typedef Gitter::AdaptRestrictProlong AdaptRestrictProlongType;
typedef Gitter::helement_STI HElemType; // Interface Element
typedef Gitter::hface_STI HFaceType; // Interface Element
typedef Gitter::hedge_STI HEdgeType; // Interface Element
typedef Gitter::vertex_STI HVertexType; // Interface Element
typedef Gitter::hbndseg HGhostType;
struct GatherScatter
{
// type of used object stream
typedef ObjectStreamImpl ObjectStreamType;
virtual ~GatherScatter () {}
// return true if user defined partitioning methods should be used
virtual bool userDefinedPartitioning () const { return false ; }
// return true if user defined load balancing weights are provided
virtual bool userDefinedLoadWeights () const { return false ; }
// returns true if user defined partitioning needs to be readjusted
virtual bool repartition () const { return false; }
// return load weight of given element
virtual int loadWeight( const HElemType & elem ) const { return 1; }
// return destination (i.e. rank) where the given element should be moved to
// this needs the methods userDefinedPartitioning to return false
virtual int destination( const HElemType & elem ) const { return -1; }
virtual bool contains(int,int) const = 0;
virtual bool containsItem(const HElemType & elem ) const { assert(false); abort(); return false; }
virtual bool containsItem(const HFaceType & elem ) const { assert(false); abort(); return false; }
virtual bool containsItem(const HEdgeType & elem ) const { assert(false); abort(); return false; }
virtual bool containsItem(const HVertexType & elem ) const { assert(false); abort(); return false; }
virtual bool containsInterior (const HFaceType & face , ElementPllXIF_t & elif) const { assert(false); abort(); return false; }
virtual bool containsGhost (const HFaceType & face , ElementPllXIF_t & elif) const { assert(false); abort(); return false; }
virtual void inlineData ( ObjectStreamType & str , HElemType & elem ) { assert(false); abort(); }
virtual void xtractData ( ObjectStreamType & str , HElemType & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , HFaceType & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , HFaceType & elem ) { assert(false); abort(); }
virtual void setData ( ObjectStreamType & str , HFaceType & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , HEdgeType & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , HEdgeType & elem ) { assert(false); abort(); }
virtual void setData ( ObjectStreamType & str , HEdgeType & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , HVertexType & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , HVertexType & elem ) { assert(false); abort(); }
virtual void setData ( ObjectStreamType & str , HVertexType & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , const HElemType & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , const HGhostType & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , HGhostType & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , HElemType & elem ) { assert(false); abort(); }
};
typedef GatherScatter GatherScatterType;
#include "serial/gitter_hexa_top.h" #include "serial/gitter_hexa_top.h"
#include "serial/mapp_tetra_3d_ext.h" #include "serial/mapp_tetra_3d_ext.h"
......
#ifndef ALUGRID_SRC_SERIAL_GATHERSCATTER_HH
#define ALUGRID_SRC_SERIAL_GATHERSCATTER_HH
#include "gitter_sti.h"
#include "serialize.h"
// GatherScatter
// -------------
struct GatherScatter
{
// type of used object stream
typedef ObjectStreamImpl ObjectStreamType;
virtual ~GatherScatter () {}
// return true if user defined partitioning methods should be used
virtual bool userDefinedPartitioning () const { return false ; }
// return true if user defined load balancing weights are provided
virtual bool userDefinedLoadWeights () const { return false ; }
// returns true if user defined partitioning needs to be readjusted
virtual bool repartition () const { return false; }
// return load weight of given element
virtual int loadWeight( const Gitter::helement_STI &elem ) const { return 1; }
// return destination (i.e. rank) where the given element should be moved to
// this needs the methods userDefinedPartitioning to return false
virtual int destination( const Gitter::helement_STI &elem ) const { return -1; }
virtual bool contains(int,int) const = 0;
virtual bool containsItem(const Gitter::helement_STI &elem ) const { assert(false); abort(); return false; }
virtual bool containsItem(const Gitter::hface_STI & elem ) const { assert(false); abort(); return false; }
virtual bool containsItem(const Gitter::hedge_STI & elem ) const { assert(false); abort(); return false; }
virtual bool containsItem(const Gitter::vertex_STI & elem ) const { assert(false); abort(); return false; }
virtual bool containsInterior (const Gitter::hface_STI & face , ElementPllXIF_t & elif) const { assert(false); abort(); return false; }
virtual bool containsGhost (const Gitter::hface_STI & face , ElementPllXIF_t & elif) const { assert(false); abort(); return false; }
virtual void inlineData ( ObjectStreamType & str , Gitter::helement_STI & elem ) { assert(false); abort(); }
virtual void xtractData ( ObjectStreamType & str , Gitter::helement_STI & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , Gitter::hface_STI & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , Gitter::hface_STI & elem ) { assert(false); abort(); }
virtual void setData ( ObjectStreamType & str , Gitter::hface_STI & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , Gitter::hedge_STI & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , Gitter::hedge_STI & elem ) { assert(false); abort(); }
virtual void setData ( ObjectStreamType & str , Gitter::hedge_STI & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , Gitter::vertex_STI & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , Gitter::vertex_STI & elem ) { assert(false); abort(); }
virtual void setData ( ObjectStreamType & str , Gitter::vertex_STI & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , const Gitter::helement_STI & elem ) { assert(false); abort(); }
virtual void sendData ( ObjectStreamType & str , const Gitter::hbndseg & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , Gitter::hbndseg & elem ) { assert(false); abort(); }
virtual void recvData ( ObjectStreamType & str , Gitter::helement_STI & elem ) { assert(false); abort(); }
};
typedef GatherScatter GatherScatterType;
#endif // #ifndef ALUGRID_SRC_SERIAL_GATHERSCATTER_HH
This diff is collapsed.
...@@ -11,6 +11,7 @@ struct GatherScatter; ...@@ -11,6 +11,7 @@ struct GatherScatter;
typedef GatherScatter GatherScatterType; typedef GatherScatter GatherScatterType;
// ParallelException // ParallelException
// ----------------- // -----------------
......
...@@ -3,6 +3,7 @@ lib_LTLIBRARIES = libalugrid_serial.la libdunealugrid.la ...@@ -3,6 +3,7 @@ lib_LTLIBRARIES = libalugrid_serial.la libdunealugrid.la
libalugrid_serial_la_SOURCES = \ libalugrid_serial_la_SOURCES = \
$(top_srcdir)/dune/alugrid/src/serial/gitter_geo.cc \ $(top_srcdir)/dune/alugrid/src/serial/gitter_geo.cc \
$(top_srcdir)/dune/alugrid/src/serial/gitter_hexa_top.cc \ $(top_srcdir)/dune/alugrid/src/serial/gitter_hexa_top.cc \
$(top_srcdir)/dune/alugrid/src/serial/gitter_impl.cc \
$(top_srcdir)/dune/alugrid/src/serial/gitter_mgb.cc \ $(top_srcdir)/dune/alugrid/src/serial/gitter_mgb.cc \
$(top_srcdir)/dune/alugrid/src/serial/gitter_sti.cc \ $(top_srcdir)/dune/alugrid/src/serial/gitter_sti.cc \
$(top_srcdir)/dune/alugrid/src/serial/gitter_tetra_top.cc \ $(top_srcdir)/dune/alugrid/src/serial/gitter_tetra_top.cc \
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment