11#ifndef REGION_LAYOUT_H
12#define REGION_LAYOUT_H
48template <
class T,
unsigned Dim,
class MeshType>
class RegionLayout;
49template <
class T,
unsigned Dim,
class MeshType>
54template <
class T,
unsigned Dim,
class MeshType=UniformCartesian<Dim,T> >
88 const PRegion<T>& i3, MeshType& mesh,
int vnodes=-1);
118 MeshType& mesh,
int vnodes=-1);
304 while (!this->empty()) {
std::ostream & operator<<(std::ostream &, const RegionLayout< T, Dim, MeshType > &)
std::pair< touch_iterator, touch_iterator > touch_range(const Key &t) const
NDIndex< Dim > MeshVertices
void RepartitionLayout(NDIndex< Dim > &domain)
const MeshType & getMesh() const
void changeDomain(FieldLayout< Dim > &)
void setup(const NDRegion< T, Dim > &, int)
void RepartitionLayout(NDIndex< Dim > *, NDIndex< Dim > *)
ac_domain_vnodes::iterator iterator_dv
const_iterator_iv begin_iv() const
void make_rnodes(const NDRegion< T, Dim > &, FieldLayout< Dim > &)
ac_domain_vnodes::const_iterator const_iterator_dv
const_iterator_dv end_rdv() const
bool operator==(const RegionLayout< T, Dim, MeshType > &x)
static RnodePool StaticRnodePool
NDRegion< T, Dim > getMeshDomain(MeshType *)
NDIndex< Dim > convert_region(const NDRegion< T, Dim > &) const
const_iterator_iv end_iv() const
NDRegion< T, Dim > convert_index(const NDIndex< Dim > &) const
ac_id_vnodes::size_type size_iv() const
NDRegion< T, Dim > Domain
virtual void notifyUserOfDelete(UserList *)
touch_range_dv touch_range_rdv(const NDRegion< T, Dim > &domain)
ac_id_vnodes::const_iterator const_iterator_iv
ac_domain_vnodes::size_type size_rdv() const
ac_id_vnodes::iterator iterator_iv
virtual void Repartition(UserList *)
const FieldLayout< Dim > & getFieldLayout() const
FieldLayout< Dim > * FLayout
vmap< Unique::type, Rnode< T, Dim > * > ac_id_vnodes
DomainMap< NDRegion< T, Dim >, Rnode< T, Dim > *, TouchesRegion< T, Dim >, ContainsRegion< T, Dim >, SplitRegion< T, Dim > > ac_domain_vnodes
void checkin(FieldLayoutUser &f)
UserList::ID_t get_Id() const
const NDRegion< T, Dim > & getDomain() const
ac_domain_vnodes::touch_iterator touch_iterator_dv
std::pair< touch_iterator_dv, touch_iterator_dv > touch_range_dv
NDIndex< Dim > getMeshVertices(MeshType *)
ac_domain_vnodes * Remote_ac
const_iterator_dv begin_rdv() const
void checkout(FieldLayoutUser &f)
FieldLayout< Dim > & getFieldLayout()
void store_flayout(FieldLayout< Dim > *, bool WeOwn)
void store_mesh(MeshType *, bool WeOwn)
Rnode< T, Dim > * create_rnode(const NDRegion< T, Dim > &nr, int node)
Rnode< T, Dim > * create_rnode(const NDRegion< T, Dim > &nr, const Vektor< T, Dim > &v, int node)
ID_t getUserListID() const
virtual void checkoutUser(Key key, bool informuser=false)
virtual ID_t checkinUser(User &user)
rep_type::iterator iterator
rep_type::size_type size_type
rep_type::const_iterator const_iterator