OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
RegionLayout< T, Dim, MeshType > Class Template Reference

#include <RegionLayout.h>

Inheritance diagram for RegionLayout< T, Dim, MeshType >:
Collaboration diagram for RegionLayout< T, Dim, MeshType >:

Classes

class  RnodePool

Public Types

typedef vmap< Unique::type, Rnode< T, Dim > * > ac_id_vnodes
typedef DomainMap< NDRegion< T, Dim >, Rnode< T, Dim > *, TouchesRegion< T, Dim >, ContainsRegion< T, Dim >, SplitRegion< T, Dim > > ac_domain_vnodes
typedef ac_id_vnodes::iterator iterator_iv
typedef ac_id_vnodes::const_iterator const_iterator_iv
typedef ac_domain_vnodes::iterator iterator_dv
typedef ac_domain_vnodes::const_iterator const_iterator_dv
typedef ac_domain_vnodes::touch_iterator touch_iterator_dv
typedef std::pair< touch_iterator_dv, touch_iterator_dvtouch_range_dv
typedef Unique::type ID_t

Public Member Functions

 RegionLayout ()
 RegionLayout (const RegionLayout< T, Dim, MeshType > &)
 RegionLayout (const NDRegion< T, Dim > &domain, MeshType &mesh, int vnodes=-1)
 RegionLayout (const PRegion< T > &i1, MeshType &mesh, int vnodes=-1)
 RegionLayout (const PRegion< T > &i1, const PRegion< T > &i2, MeshType &mesh, int vnodes=-1)
 RegionLayout (const PRegion< T > &i1, const PRegion< T > &i2, const PRegion< T > &i3, MeshType &mesh, int vnodes=-1)
 RegionLayout (FieldLayout< Dim > &)
 RegionLayout (FieldLayout< Dim > &, MeshType &)
 RegionLayout (const NDIndex< Dim > &domain, int vnodes=-1)
 RegionLayout (const Index &i1, int vnodes=-1)
 RegionLayout (const Index &i1, const Index &i2, int vnodes=-1)
 RegionLayout (const Index &i1, const Index &i2, const Index &i3, int vnodes=-1)
 RegionLayout (const NDIndex< Dim > &domain, MeshType &mesh, int vnodes=-1)
 RegionLayout (const Index &i1, MeshType &mesh, int vnodes=-1)
 RegionLayout (const Index &i1, const Index &i2, MeshType &mesh, int vnodes=-1)
 RegionLayout (const Index &i1, const Index &i2, const Index &i3, MeshType &mesh, int vnodes=-1)
virtual ~RegionLayout ()
bool initialized () const
const NDRegion< T, Dim > & getDomain () const
FieldLayout< Dim > & getFieldLayout ()
const FieldLayout< Dim > & getFieldLayout () const
MeshType & getMesh ()
const MeshType & getMesh () const
ac_id_vnodes::size_type size_iv () const
iterator_iv begin_iv ()
iterator_iv end_iv ()
const_iterator_iv begin_iv () const
const_iterator_iv end_iv () const
ac_domain_vnodes::size_type size_rdv () const
iterator_dv begin_rdv ()
iterator_dv end_rdv ()
const_iterator_dv begin_rdv () const
const_iterator_dv end_rdv () const
touch_range_dv touch_range_rdv (const NDRegion< T, Dim > &domain)
void changeDomain (FieldLayout< Dim > &)
void changeDomain (const NDIndex< Dim > &, int vnodes=-1)
void changeDomain (const NDRegion< T, Dim > &, int vnodes=-1)
void RepartitionLayout (NDIndex< Dim > *, NDIndex< Dim > *)
void RepartitionLayout (NDIndex< Dim > &domain)
NDRegion< T, Dimconvert_index (const NDIndex< Dim > &) const
NDIndex< Dimconvert_region (const NDRegion< T, Dim > &) const
bool operator== (const RegionLayout< T, Dim, MeshType > &x)
virtual void Repartition (UserList *)
virtual void notifyUserOfDelete (UserList *)
UserList::ID_t get_Id () const
void checkin (FieldLayoutUser &f)
void checkout (FieldLayoutUser &f)

Protected Attributes

ID_t Id

Private Types

typedef User::ID_t Key
typedef vmap< Key, User * > UserList_t
typedef UserList_t::iterator iterator_user
typedef UserList_t::size_type size_type_user
typedef User::ID_t ID_t

Private Member Functions

void setup (const NDRegion< T, Dim > &, int)
void make_rnodes (const NDRegion< T, Dim > &, FieldLayout< Dim > &)
void delete_rnodes ()
void store_flayout (FieldLayout< Dim > *, bool WeOwn)
void delete_flayout ()
void store_mesh (MeshType *, bool WeOwn)
void delete_mesh ()
NDRegion< T, DimgetMeshDomain (MeshType *)
NDIndex< DimgetMeshVertices (MeshType *)
size_type_user getNumUsers () const
ID_t getUserListID () const
bool haveUser (Key key) const
UsergetUser (Key key)
iterator_user begin_user ()
iterator_user end_user ()
virtual ID_t checkinUser (User &user)
virtual void checkoutUser (Key key, bool informuser=false)
virtual void checkoutUser (const User &user, bool informuser=false)

Private Attributes

ac_id_vnodes Local_ac
ac_domain_vnodesRemote_ac
NDRegion< T, DimDomain
FieldLayout< Dim > * FLayout
bool WeOwnFieldLayout
MeshType * theMesh
bool WeOwnMesh
NDIndex< DimMeshVertices
int IndexOffset [Dim]
bool CenterOffset [Dim]
UserList_t userlist
ID_t userlistID

Static Private Attributes

static RnodePool StaticRnodePool

Detailed Description

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
class RegionLayout< T, Dim, MeshType >

Definition at line 55 of file RegionLayout.h.

Member Typedef Documentation

◆ ac_domain_vnodes

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
typedef DomainMap<NDRegion<T,Dim>, Rnode<T,Dim> *, TouchesRegion<T,Dim>, ContainsRegion<T,Dim>, SplitRegion<T,Dim> > RegionLayout< T, Dim, MeshType >::ac_domain_vnodes

Definition at line 63 of file RegionLayout.h.

◆ ac_id_vnodes

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
typedef vmap<Unique::type, Rnode<T,Dim> *> RegionLayout< T, Dim, MeshType >::ac_id_vnodes

Definition at line 59 of file RegionLayout.h.

◆ const_iterator_dv

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
typedef ac_domain_vnodes::const_iterator RegionLayout< T, Dim, MeshType >::const_iterator_dv

Definition at line 69 of file RegionLayout.h.

◆ const_iterator_iv

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
typedef ac_id_vnodes::const_iterator RegionLayout< T, Dim, MeshType >::const_iterator_iv

Definition at line 67 of file RegionLayout.h.

◆ ID_t [1/2]

typedef Unique::type User::ID_t
inherited

Definition at line 35 of file User.h.

◆ ID_t [2/2]

typedef User::ID_t UserList::ID_t
inherited

Definition at line 46 of file UserList.h.

◆ iterator_dv

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
typedef ac_domain_vnodes::iterator RegionLayout< T, Dim, MeshType >::iterator_dv

Definition at line 68 of file RegionLayout.h.

◆ iterator_iv

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
typedef ac_id_vnodes::iterator RegionLayout< T, Dim, MeshType >::iterator_iv

Definition at line 66 of file RegionLayout.h.

◆ iterator_user

Definition at line 43 of file UserList.h.

◆ Key

typedef User::ID_t UserList::Key
inherited

Definition at line 41 of file UserList.h.

◆ size_type_user

Definition at line 45 of file UserList.h.

◆ touch_iterator_dv

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
typedef ac_domain_vnodes::touch_iterator RegionLayout< T, Dim, MeshType >::touch_iterator_dv

Definition at line 70 of file RegionLayout.h.

◆ touch_range_dv

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
typedef std::pair<touch_iterator_dv,touch_iterator_dv> RegionLayout< T, Dim, MeshType >::touch_range_dv

Definition at line 71 of file RegionLayout.h.

◆ UserList_t

typedef vmap<Key, User *> UserList::UserList_t
inherited

Definition at line 42 of file UserList.h.

Constructor & Destructor Documentation

◆ RegionLayout() [1/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( )

Definition at line 45 of file RegionLayout.hpp.

References CenterOffset, Dim, FLayout, IndexOffset, Remote_ac, theMesh, WeOwnFieldLayout, and WeOwnMesh.

Referenced by RegionLayout().

◆ RegionLayout() [2/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const RegionLayout< T, Dim, MeshType > & r)

Definition at line 68 of file RegionLayout.hpp.

References CenterOffset, Dim, IndexOffset, and RegionLayout().

Here is the call graph for this function:

◆ RegionLayout() [3/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const NDRegion< T, Dim > & domain,
MeshType & mesh,
int vnodes = -1 )

Definition at line 117 of file RegionLayout.hpp.

◆ RegionLayout() [4/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const PRegion< T > & i1,
MeshType & mesh,
int vnodes = -1 )

Definition at line 132 of file RegionLayout.hpp.

References changeDomain(), Dim, FLayout, PInsist, Remote_ac, store_mesh(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [5/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const PRegion< T > & i1,
const PRegion< T > & i2,
MeshType & mesh,
int vnodes = -1 )

Definition at line 151 of file RegionLayout.hpp.

References changeDomain(), Dim, FLayout, PInsist, Remote_ac, store_mesh(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [6/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const PRegion< T > & i1,
const PRegion< T > & i2,
const PRegion< T > & i3,
MeshType & mesh,
int vnodes = -1 )

Definition at line 172 of file RegionLayout.hpp.

References Dim, FLayout, PInsist, Remote_ac, and theMesh.

◆ RegionLayout() [7/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( FieldLayout< Dim > & fl)

Definition at line 363 of file RegionLayout.hpp.

References changeDomain(), Dim, FLayout, FieldLayout< Dim >::getDomain(), Remote_ac, store_mesh(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [8/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( FieldLayout< Dim > & fl,
MeshType & mesh )

Definition at line 384 of file RegionLayout.hpp.

References changeDomain(), FLayout, Remote_ac, store_mesh(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [9/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const NDIndex< Dim > & domain,
int vnodes = -1 )

Definition at line 196 of file RegionLayout.hpp.

◆ RegionLayout() [10/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const Index & i1,
int vnodes = -1 )

Definition at line 216 of file RegionLayout.hpp.

References changeDomain(), Dim, Index::first(), FLayout, Index::last(), PInsist, Remote_ac, store_mesh(), Index::stride(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [11/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const Index & i1,
const Index & i2,
int vnodes = -1 )

Definition at line 236 of file RegionLayout.hpp.

References changeDomain(), Dim, Index::first(), FLayout, Index::last(), PInsist, Remote_ac, store_mesh(), Index::stride(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [12/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const Index & i1,
const Index & i2,
const Index & i3,
int vnodes = -1 )

Definition at line 259 of file RegionLayout.hpp.

References Dim, Index::first(), FLayout, Index::last(), PInsist, Index::stride(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [13/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const NDIndex< Dim > & domain,
MeshType & mesh,
int vnodes = -1 )

Definition at line 284 of file RegionLayout.hpp.

◆ RegionLayout() [14/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const Index & i1,
MeshType & mesh,
int vnodes = -1 )

Definition at line 300 of file RegionLayout.hpp.

References changeDomain(), Dim, FLayout, PInsist, Remote_ac, store_mesh(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [15/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const Index & i1,
const Index & i2,
MeshType & mesh,
int vnodes = -1 )

Definition at line 320 of file RegionLayout.hpp.

References changeDomain(), Dim, FLayout, PInsist, Remote_ac, store_mesh(), and theMesh.

Here is the call graph for this function:

◆ RegionLayout() [16/16]

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::RegionLayout ( const Index & i1,
const Index & i2,
const Index & i3,
MeshType & mesh,
int vnodes = -1 )

Definition at line 340 of file RegionLayout.hpp.

References changeDomain(), Dim, FLayout, PInsist, Remote_ac, store_mesh(), and theMesh.

Here is the call graph for this function:

◆ ~RegionLayout()

template<class T, unsigned Dim, class MeshType>
RegionLayout< T, Dim, MeshType >::~RegionLayout ( )
virtual

Definition at line 99 of file RegionLayout.hpp.

References delete_flayout(), delete_mesh(), and delete_rnodes().

Here is the call graph for this function:

Member Function Documentation

◆ begin_iv() [1/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
iterator_iv RegionLayout< T, Dim, MeshType >::begin_iv ( )
inline

◆ begin_iv() [2/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
const_iterator_iv RegionLayout< T, Dim, MeshType >::begin_iv ( ) const
inline

Definition at line 148 of file RegionLayout.h.

◆ begin_rdv() [1/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
iterator_dv RegionLayout< T, Dim, MeshType >::begin_rdv ( )
inline

Definition at line 155 of file RegionLayout.h.

Referenced by operator<<().

◆ begin_rdv() [2/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
const_iterator_dv RegionLayout< T, Dim, MeshType >::begin_rdv ( ) const
inline

Definition at line 157 of file RegionLayout.h.

◆ begin_user()

UserList::iterator_user UserList::begin_user ( )
inherited

◆ changeDomain() [1/3]

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::changeDomain ( const NDIndex< Dim > & domain,
int vnodes = -1 )

Definition at line 401 of file RegionLayout.hpp.

References CenterOffset, convert_index(), delete_flayout(), Dim, Domain, FLayout, IndexOffset, make_rnodes(), MeshVertices, store_flayout(), store_mesh(), and theMesh.

Here is the call graph for this function:

◆ changeDomain() [2/3]

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::changeDomain ( const NDRegion< T, Dim > & domain,
int vnodes = -1 )

Definition at line 444 of file RegionLayout.hpp.

References CenterOffset, convert_region(), delete_flayout(), Dim, Domain, FLayout, IndexOffset, make_rnodes(), PAssert, store_flayout(), and theMesh.

Here is the call graph for this function:

◆ changeDomain() [3/3]

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::changeDomain ( FieldLayout< Dim > & fl)

Definition at line 486 of file RegionLayout.hpp.

References CenterOffset, convert_index(), delete_flayout(), Dim, Domain, FLayout, FieldLayout< Dim >::getDomain(), IndexOffset, make_rnodes(), store_flayout(), store_mesh(), and theMesh.

Referenced by RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), and Repartition().

Here is the call graph for this function:

◆ checkin()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
void RegionLayout< T, Dim, MeshType >::checkin ( FieldLayoutUser & f)
inline

Definition at line 231 of file RegionLayout.h.

◆ checkinUser()

UserList::ID_t UserList::checkinUser ( User & user)
virtualinherited

Definition at line 109 of file UserList.cpp.

References User::get_Id(), haveUser(), userlist, and userlistID.

Referenced by FieldLayout< Dim >::checkin(), Mesh< Dim >::checkin(), and RegionLayout< T, Dim, Mesh >::checkin().

Here is the call graph for this function:

◆ checkout()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
void RegionLayout< T, Dim, MeshType >::checkout ( FieldLayoutUser & f)
inline

Definition at line 237 of file RegionLayout.h.

◆ checkoutUser() [1/2]

void UserList::checkoutUser ( const User & user,
bool informuser = false )
virtualinherited

Definition at line 138 of file UserList.cpp.

References checkoutUser(), and User::get_Id().

Here is the call graph for this function:

◆ checkoutUser() [2/2]

void UserList::checkoutUser ( Key key,
bool informuser = false )
virtualinherited

Definition at line 124 of file UserList.cpp.

References end_user(), and userlist.

Referenced by FieldLayout< Dim >::checkout(), Mesh< Dim >::checkout(), RegionLayout< T, Dim, Mesh >::checkout(), and checkoutUser().

Here is the call graph for this function:

◆ convert_index()

template<class T, unsigned Dim, class MeshType>
NDRegion< T, Dim > RegionLayout< T, Dim, MeshType >::convert_index ( const NDIndex< Dim > & ni) const

Definition at line 526 of file RegionLayout.hpp.

References CenterOffset, Dim, IndexOffset, and theMesh.

Referenced by changeDomain(), changeDomain(), and make_rnodes().

◆ convert_region()

template<class T, unsigned Dim, class MeshType>
NDIndex< Dim > RegionLayout< T, Dim, MeshType >::convert_region ( const NDRegion< T, Dim > & nr) const

Definition at line 572 of file RegionLayout.hpp.

References CenterOffset, Dim, IndexOffset, nr, and theMesh.

Referenced by changeDomain().

◆ delete_flayout()

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::delete_flayout ( )
private

Definition at line 715 of file RegionLayout.hpp.

References FLayout, and WeOwnFieldLayout.

Referenced by changeDomain(), changeDomain(), changeDomain(), store_flayout(), and ~RegionLayout().

◆ delete_mesh()

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::delete_mesh ( )
private

Definition at line 752 of file RegionLayout.hpp.

References theMesh, and WeOwnMesh.

Referenced by store_mesh(), and ~RegionLayout().

◆ delete_rnodes()

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::delete_rnodes ( )
private

Definition at line 668 of file RegionLayout.hpp.

References Local_ac, Remote_ac, and StaticRnodePool.

Referenced by make_rnodes(), and ~RegionLayout().

◆ end_iv() [1/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
iterator_iv RegionLayout< T, Dim, MeshType >::end_iv ( )
inline

◆ end_iv() [2/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
const_iterator_iv RegionLayout< T, Dim, MeshType >::end_iv ( ) const
inline

Definition at line 149 of file RegionLayout.h.

◆ end_rdv() [1/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
iterator_dv RegionLayout< T, Dim, MeshType >::end_rdv ( )
inline

Definition at line 156 of file RegionLayout.h.

Referenced by operator<<().

◆ end_rdv() [2/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
const_iterator_dv RegionLayout< T, Dim, MeshType >::end_rdv ( ) const
inline

Definition at line 158 of file RegionLayout.h.

◆ end_user()

◆ get_Id()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
UserList::ID_t RegionLayout< T, Dim, MeshType >::get_Id ( ) const
inline

Definition at line 226 of file RegionLayout.h.

◆ getDomain()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
const NDRegion< T, Dim > & RegionLayout< T, Dim, MeshType >::getDomain ( ) const
inline

◆ getFieldLayout() [1/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
FieldLayout< Dim > & RegionLayout< T, Dim, MeshType >::getFieldLayout ( )
inline

Definition at line 137 of file RegionLayout.h.

Referenced by BinaryRepartition(), and operator<<().

◆ getFieldLayout() [2/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
const FieldLayout< Dim > & RegionLayout< T, Dim, MeshType >::getFieldLayout ( ) const
inline

Definition at line 138 of file RegionLayout.h.

◆ getMesh() [1/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
MeshType & RegionLayout< T, Dim, MeshType >::getMesh ( )
inline

Definition at line 141 of file RegionLayout.h.

Referenced by BinaryRepartition().

◆ getMesh() [2/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
const MeshType & RegionLayout< T, Dim, MeshType >::getMesh ( ) const
inline

Definition at line 142 of file RegionLayout.h.

◆ getMeshDomain()

template<class T, unsigned Dim, class MeshType>
NDRegion< T, Dim > RegionLayout< T, Dim, MeshType >::getMeshDomain ( MeshType * m)
private

Definition at line 767 of file RegionLayout.hpp.

References Dim, and MeshVertices.

Referenced by Repartition().

◆ getMeshVertices()

template<class T, unsigned Dim, class MeshType>
NDIndex< Dim > RegionLayout< T, Dim, MeshType >::getMeshVertices ( MeshType * m)
private

Definition at line 788 of file RegionLayout.hpp.

References Dim.

Referenced by Repartition().

◆ getNumUsers()

UserList::size_type_user UserList::getNumUsers ( ) const
inherited

Definition at line 47 of file UserList.cpp.

References userlist.

Referenced by FieldLayout< Dim >::read(), FieldLayout< 1U >::size_if(), and Mesh< Dim >::size_if().

◆ getUser()

User & UserList::getUser ( Key key)
inherited

Definition at line 68 of file UserList.cpp.

◆ getUserListID()

◆ haveUser()

bool UserList::haveUser ( Key key) const
inherited

Definition at line 61 of file UserList.cpp.

References userlist.

Referenced by checkinUser().

◆ initialized()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
bool RegionLayout< T, Dim, MeshType >::initialized ( ) const
inline

Definition at line 128 of file RegionLayout.h.

Referenced by BinaryRepartition().

◆ make_rnodes()

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::make_rnodes ( const NDRegion< T, Dim > & dom,
FieldLayout< Dim > & FL )
private

◆ notifyUserOfDelete()

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::notifyUserOfDelete ( UserList * userlist)
virtual

Implements User.

Definition at line 912 of file RegionLayout.hpp.

References FLayout, theMesh, UserList::UserList(), UserList::userlist, and WARNMSG.

Here is the call graph for this function:

◆ operator==()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
bool RegionLayout< T, Dim, MeshType >::operator== ( const RegionLayout< T, Dim, MeshType > & x)
inline

Definition at line 201 of file RegionLayout.h.

◆ Repartition()

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::Repartition ( UserList * userlist)
virtual

Implements FieldLayoutUser.

Definition at line 865 of file RegionLayout.hpp.

References changeDomain(), Domain, FLayout, getMeshDomain(), getMeshVertices(), make_rnodes(), MeshVertices, size_iv(), size_rdv(), theMesh, UserList::UserList(), UserList::userlist, and WeOwnFieldLayout.

Here is the call graph for this function:

◆ RepartitionLayout() [1/2]

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
void RegionLayout< T, Dim, MeshType >::RepartitionLayout ( NDIndex< Dim > & domain)
inline

Definition at line 184 of file RegionLayout.h.

◆ RepartitionLayout() [2/2]

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::RepartitionLayout ( NDIndex< Dim > * ni,
NDIndex< Dim > * nf )

Definition at line 846 of file RegionLayout.hpp.

References FLayout.

Referenced by BinaryRepartition(), and RegionLayout< T, Dim, Mesh >::RepartitionLayout().

◆ setup()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
void RegionLayout< T, Dim, MeshType >::setup ( const NDRegion< T, Dim > & ,
int  )
private

◆ size_iv()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
ac_id_vnodes::size_type RegionLayout< T, Dim, MeshType >::size_iv ( ) const
inline

Definition at line 145 of file RegionLayout.h.

Referenced by operator<<(), and Repartition().

◆ size_rdv()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
ac_domain_vnodes::size_type RegionLayout< T, Dim, MeshType >::size_rdv ( ) const
inline

Definition at line 152 of file RegionLayout.h.

Referenced by operator<<(), and Repartition().

◆ store_flayout()

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::store_flayout ( FieldLayout< Dim > * f,
bool WeOwn )
private

Definition at line 694 of file RegionLayout.hpp.

References delete_flayout(), FLayout, and WeOwnFieldLayout.

Referenced by changeDomain(), changeDomain(), and changeDomain().

Here is the call graph for this function:

◆ store_mesh()

template<class T, unsigned Dim, class MeshType>
void RegionLayout< T, Dim, MeshType >::store_mesh ( MeshType * m,
bool WeOwn )
private

Definition at line 729 of file RegionLayout.hpp.

References delete_mesh(), Dim, MeshVertices, theMesh, and WeOwnMesh.

Referenced by changeDomain(), changeDomain(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), RegionLayout(), and RegionLayout().

Here is the call graph for this function:

◆ touch_range_rdv()

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
touch_range_dv RegionLayout< T, Dim, MeshType >::touch_range_rdv ( const NDRegion< T, Dim > & domain)
inline

Member Data Documentation

◆ CenterOffset

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
bool RegionLayout< T, Dim, MeshType >::CenterOffset[Dim]
private

◆ Domain

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
NDRegion<T,Dim> RegionLayout< T, Dim, MeshType >::Domain
private

◆ FLayout

◆ Id

ID_t User::Id
protectedinherited

Definition at line 58 of file User.h.

Referenced by get_Id(), and User().

◆ IndexOffset

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
int RegionLayout< T, Dim, MeshType >::IndexOffset[Dim]
private

◆ Local_ac

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
ac_id_vnodes RegionLayout< T, Dim, MeshType >::Local_ac
private

Definition at line 241 of file RegionLayout.h.

Referenced by delete_rnodes(), and make_rnodes().

◆ MeshVertices

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
NDIndex<Dim> RegionLayout< T, Dim, MeshType >::MeshVertices
private

Definition at line 256 of file RegionLayout.h.

Referenced by changeDomain(), getMeshDomain(), Repartition(), and store_mesh().

◆ Remote_ac

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
ac_domain_vnodes* RegionLayout< T, Dim, MeshType >::Remote_ac
private

◆ StaticRnodePool

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
RnodePool RegionLayout< T, Dim, MeshType >::StaticRnodePool
staticprivate

Definition at line 340 of file RegionLayout.h.

Referenced by delete_rnodes(), and make_rnodes().

◆ theMesh

◆ userlist

◆ userlistID

ID_t UserList::userlistID
privateinherited

Definition at line 103 of file UserList.h.

Referenced by checkinUser(), getUserListID(), and UserList().

◆ WeOwnFieldLayout

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
bool RegionLayout< T, Dim, MeshType >::WeOwnFieldLayout
private

Definition at line 249 of file RegionLayout.h.

Referenced by delete_flayout(), RegionLayout(), Repartition(), and store_flayout().

◆ WeOwnMesh

template<class T, unsigned Dim, class MeshType = UniformCartesian<Dim,T>>
bool RegionLayout< T, Dim, MeshType >::WeOwnMesh
private

Definition at line 253 of file RegionLayout.h.

Referenced by delete_mesh(), RegionLayout(), and store_mesh().


The documentation for this class was generated from the following files: