Classes | |
class | CellInfoProxy |
Fonctions membres publiques | |
OneMeshItemAdder (DynamicMeshIncrementalBuilder *mesh_builder) | |
ItemInternal * | addOneNode (Int64 node_uid, Int32 owner) |
ItemInternal * | addOneFace (ItemTypeId type_id, Int64 face_uid, Int32 owner_rank, Int64ConstArrayView nodes_uid) |
Ajoute une face. | |
ItemInternal * | addOneEdge (Int64 edge_uid, Int32 sub_domain_id, Int64ConstArrayView nodes_uid) |
ItemInternal * | addOneCell (ItemTypeId type_id, Int64 cell_uid, Int32 sub_domain_id, Int64ConstArrayView nodes_uid, bool allow_build_face) |
Ajoute une maille. | |
ItemInternal * | addOneParentItem (const Item &item, const eItemKind submesh_kind, const bool fatal_on_existing_item=true) |
Ajoute d'un item parent. | |
ItemInternal * | addOneCell (const FullCellInfo &cell_info) |
Ajoute une maille. | |
ItemInternal * | addOneItem (IItemFamily *family, IItemFamilyModifier *family_modifier, ItemTypeId type_id, Int64 item_uid, Int32 item_owner, Int32 sub_domain_id, Integer nb_connected_family, Int64ConstArrayView connectivity_info) |
ItemInternal * | addOneItem2 (IItemFamily *family, IItemFamilyModifier *family_modifier, ItemTypeId type_id, Int64 item_uid, Int32 item_owner, Int32 sub_domain_id, Integer nb_connected_family, Int64ConstArrayView connectivity_info) |
Integer | nbNode () const |
Integer | nbFace () const |
Integer | nbCell () const |
Integer | nbEdge () const |
void | setNextFaceUid (Int64 face_uid) |
void | setNextEdgeUid (Int64 edge_uid) |
Int64 | nextFaceUid () const |
Int64 | nextEdgeUid () const |
void | resetAfterDeallocate () |
Remise à zéro des structures pour pouvoir faire à nouveau une allocation. | |
void | setUseNodeUniqueIdToGenerateEdgeAndFaceUniqueId (bool v) |
Positionne le mécanisme de numérotation des uniqueId(). | |
template<> | |
Face | _findInternalFace (Integer i_face, const FullCellInfo &cell_info, bool &is_add) |
template<> | |
Face | _findInternalFace (Integer i_face, const CellInfoProxy &cell_info, bool &is_add) |
template<> | |
Edge | _findInternalEdge (Integer i_edge, const FullCellInfo &cell_info, Int64 first_node, Int64 second_node, bool &is_add) |
template<> | |
Edge | _findInternalEdge (Integer i_edge, const CellInfoProxy &cell_info, Int64 first_node, Int64 second_node, bool &is_add) |
template<> | |
void | _AMR_Patch (Cell new_cell, const FullCellInfo &cell_info) |
template<> | |
void | _AMR_Patch (Cell cell, const CellInfoProxy &cell_info) |
![]() | |
TraceAccessor (ITraceMng *m) | |
Construit un accesseur via le gestionnaire de trace m. | |
TraceAccessor (const TraceAccessor &rhs) | |
Constructeur par recopie. | |
TraceAccessor & | operator= (const TraceAccessor &rhs) |
Opérateur de recopie. | |
virtual | ~TraceAccessor () |
Libère les ressources. | |
ITraceMng * | traceMng () const |
Gestionnaire de trace. | |
TraceMessage | info () const |
Flot pour un message d'information. | |
TraceMessage | pinfo () const |
Flot pour un message d'information en parallèle. | |
TraceMessage | info (char category) const |
Flot pour un message d'information d'une catégorie donnée. | |
TraceMessage | pinfo (char category) const |
Flot pour un message d'information parallèle d'une catégorie donnée. | |
TraceMessage | info (bool v) const |
Flot pour un message d'information. | |
TraceMessage | warning () const |
Flot pour un message d'avertissement. | |
TraceMessage | pwarning () const |
TraceMessage | error () const |
Flot pour un message d'erreur. | |
TraceMessage | perror () const |
TraceMessage | log () const |
Flot pour un message de log. | |
TraceMessage | plog () const |
Flot pour un message de log. | |
TraceMessage | logdate () const |
Flot pour un message de log précédé de la date. | |
TraceMessage | fatal () const |
Flot pour un message d'erreur fatale. | |
TraceMessage | pfatal () const |
Flot pour un message d'erreur fatale en parallèle. | |
TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
Flot pour un message de debug. | |
Trace::eDebugLevel | configDbgLevel () const |
Niveau debug du fichier de configuration. | |
TraceMessage | info (Int32 verbose_level) const |
Flot pour un message d'information d'un niveau donné | |
TraceMessage | linfo () const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
TraceMessage | linfo (Int32 relative_level) const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
void | fatalMessage (const StandaloneTraceMessage &o) const |
Attributs privés | |
DynamicMesh * | m_mesh = nullptr |
DynamicMeshIncrementalBuilder * | m_mesh_builder = nullptr |
CellFamily & | m_cell_family |
NodeFamily & | m_node_family |
FaceFamily & | m_face_family |
EdgeFamily & | m_edge_family |
ItemTypeMng * | m_item_type_mng = nullptr |
MeshInfos | m_mesh_info |
Info générale sur le maillage (numéro de sous-domaine, nombre d'items...) | |
Int64 | m_next_face_uid = 0 |
Numéro du uniqueId() suivant utilisé pour générer les faces. | |
Int64 | m_next_edge_uid = 0 |
Numéro du uniqueId() suivant utilisé pour générer les arêtes. | |
UniqueArray< Int64 > | m_work_face_sorted_nodes |
Tableaux de travail. | |
UniqueArray< Int64 > | m_work_face_orig_nodes_uid |
UniqueArray< Int64 > | m_work_edge_sorted_nodes |
UniqueArray< Int64 > | m_work_edge_orig_nodes_uid |
bool | m_use_hash_for_edge_and_face_unique_id = false |
Si vrai, génère les uniqueId() des faces à partir de ceux des noeuds. | |
Membres hérités additionnels | |
![]() | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Définition à la ligne 44 du fichier OneMeshItemAdder.h.
|
explicit |
Définition à la ligne 81 du fichier OneMeshItemAdder.cc.
|
inline |
Définition à la ligne 56 du fichier OneMeshItemAdder.h.
|
inlineprivate |
Ajoute les noeuds nodes_uid à la maille cell.
Définition à la ligne 1063 du fichier OneMeshItemAdder.cc.
Références m_mesh_info, Arcane::mesh::MeshInfos::nbNode(), Arcane::mesh::MeshInfos::rank(), et Arcane::mesh::CellFamily::replaceNode().
Référencé par _addOneCell().
|
private |
Ajoute une maille.
true | si la maille est effectivement ajoutée |
Type la table de hashage uniqueId()->ItemInternal*
AMR
Définition à la ligne 605 du fichier OneMeshItemAdder.cc.
Références _addNodesToCell(), Arcane::mesh::FaceFamily::addBackCellToFace(), Arcane::mesh::EdgeFamily::addCellToEdge(), Arcane::mesh::FaceFamily::addEdgeToFace(), Arcane::mesh::EdgeFamily::addFaceToEdge(), Arcane::mesh::FaceFamily::addFrontCellToFace(), ARCANE_FATAL, Arcane::arcaneIsCheck(), Arcane::mesh::DynamicMesh::dimension(), Arccore::TraceAccessor::info(), Arcane::mesh::DynamicMesh::isAmrActivated(), Arcane::Item::localId(), m_mesh_info, m_work_face_sorted_nodes, Arcane::mesh::DynamicMesh::meshKind(), Arcane::Item::mutableItemBase(), Arcane::mesh::MeshInfos::nbCell(), Arcane::Face::nbCell(), Arcane::mesh::MeshInfos::nbEdge(), Arcane::mesh::MeshInfos::nbFace(), Arcane::mesh::MeshInfos::rank(), Arcane::mesh::FaceFamily::replaceBackCellToFace(), Arcane::mesh::CellFamily::replaceEdge(), Arcane::mesh::CellFamily::replaceFace(), Arcane::mesh::EdgeFamily::replaceNode(), Arcane::mesh::FaceFamily::replaceNode(), Arcane::MutableItemBase::setOwner(), et Arcane::Item::uniqueId().
Référencé par addOneCell(), et addOneCell().
void Arcane::mesh::OneMeshItemAdder::_AMR_Patch | ( | Cell | cell, |
const CellInfoProxy & | cell_info | ||
) |
Définition à la ligne 590 du fichier OneMeshItemAdder.cc.
void Arcane::mesh::OneMeshItemAdder::_AMR_Patch | ( | Cell | new_cell, |
const FullCellInfo & | cell_info | ||
) |
AMR
Définition à la ligne 571 du fichier OneMeshItemAdder.cc.
Références Arcane::mesh::CellFamily::_addParentCellToCell(), Arcane::ItemTypeId::fromInteger(), et Arcane::mesh::DynamicMesh::isAmrActivated().
|
private |
Génère un uniqueId() pour la face si uid est nul.
Si uid vaut NULL_ITEM_UNIQUE_ID, génère un uniqueId() pour la face.
Définition à la ligne 151 du fichier OneMeshItemAdder.cc.
Références m_next_face_uid, et m_use_hash_for_edge_and_face_unique_id.
Référencé par addOneFace().
|
private |
Vérifie la cohérence des noeuds d'une entité ajouté déjà présente.
Lorsqu'on tente d'ajouter une entité et qu'elle est déjà présente, vérifie que les noeuds donnés pour l'ajout sont les même que ceux de l'entité déjà présente.
Définition à la ligne 121 du fichier OneMeshItemAdder.cc.
Références ARCANE_FATAL, Arcane::Item::kind(), Arcane::ItemWithNodes::nbNode(), Arcane::ItemWithNodes::node(), et Arcane::Item::uniqueId().
Référencé par addOneFace().
|
private |
Définition à la ligne 546 du fichier OneMeshItemAdder.cc.
|
private |
Définition à la ligne 559 du fichier OneMeshItemAdder.cc.
Edge Arcane::mesh::OneMeshItemAdder::_findInternalEdge | ( | Integer | i_edge, |
const CellInfoProxy & | cell_info, | ||
Int64 | first_node, | ||
Int64 | second_node, | ||
bool & | is_add | ||
) |
Définition à la ligne 309 du fichier OneMeshItemAdder.cc.
Edge Arcane::mesh::OneMeshItemAdder::_findInternalEdge | ( | Integer | i_edge, |
const FullCellInfo & | cell_info, | ||
Int64 | first_node, | ||
Int64 | second_node, | ||
bool & | is_add | ||
) |
Définition à la ligne 294 du fichier OneMeshItemAdder.cc.
Face Arcane::mesh::OneMeshItemAdder::_findInternalFace | ( | Integer | i_face, |
const CellInfoProxy & | cell_info, | ||
bool & | is_add | ||
) |
Définition à la ligne 259 du fichier OneMeshItemAdder.cc.
Face Arcane::mesh::OneMeshItemAdder::_findInternalFace | ( | Integer | i_face, |
const FullCellInfo & | cell_info, | ||
bool & | is_add | ||
) |
Définition à la ligne 245 du fichier OneMeshItemAdder.cc.
|
private |
Définition à la ligne 1086 du fichier OneMeshItemAdder.cc.
|
private |
Définition à la ligne 529 du fichier OneMeshItemAdder.cc.
ItemInternal * Arcane::mesh::OneMeshItemAdder::addOneCell | ( | const FullCellInfo & | cell_info | ) |
Ajoute une maille.
true | si la maille est effectivement ajoutée |
Définition à la ligne 374 du fichier OneMeshItemAdder.cc.
Références _addOneCell().
ItemInternal * Arcane::mesh::OneMeshItemAdder::addOneCell | ( | ItemTypeId | type_id, |
Int64 | cell_uid, | ||
Int32 | sub_domain_id, | ||
Int64ConstArrayView | nodes_uid, | ||
bool | allow_build_face | ||
) |
Ajoute une maille.
Lorsqu'on ajoute une maille, les noeuds et les faces lui appartenant sont automatiquement ajoutés au maillage s'il ne sont pas déjà présent.
type | type de la maille |
cell_uid | numéro unique de la maille. Si une maille avec ce numéro existe déjà, cela signifie que la maille est déjà présente. Dans ce cas, cette méthode ne fait aucune opération. |
sub_domain_id | numéro du sous-domaine auquel la maille appartient |
nodes_uid | liste des numéros uniques de la maille. Le nombre d'éléments de ce tableau doit correspondre avec le type de la maille. |
true | si la maille est effectivement ajoutée |
Définition à la ligne 355 du fichier OneMeshItemAdder.cc.
Références _addOneCell(), et Arcane::ItemTypeMng::typeFromId().
Référencé par Arcane::mesh::DynamicMeshIncrementalBuilder::addCells(), et Arcane::mesh::DynamicMeshIncrementalBuilder::addHChildrenCells().
ItemInternal * Arcane::mesh::OneMeshItemAdder::addOneEdge | ( | Int64 | edge_uid, |
Int32 | sub_domain_id, | ||
Int64ConstArrayView | nodes_uid | ||
) |
Définition à la ligne 214 du fichier OneMeshItemAdder.cc.
ItemInternal * Arcane::mesh::OneMeshItemAdder::addOneFace | ( | ItemTypeId | type_id, |
Int64 | face_uid, | ||
Int32 | owner_rank, | ||
Int64ConstArrayView | nodes_uid | ||
) |
Ajoute une face.
Cette méthode est appelée lorsqu'on souhaite directement créer une face qui ne sera pas forcément connectée à une maille. En général, les faces sont créées automatiquement lorsqu'on ajoute des mailles.
Ajoute une face en fournissant l'unique_id de la face et les unique_ids des noeuds à connecter.
Si face_uid est égal à NULL_ITEM_UNIQUE_ID, l'identifiant est généré.
Définition à la ligne 177 du fichier OneMeshItemAdder.cc.
Références _checkGenerateFaceUniqueId(), _checkSameItemCoherency(), Arcane::arcaneIsCheck(), Arcane::mesh::FaceFamily::findOrAllocOne(), m_mesh_info, m_work_face_sorted_nodes, Arcane::Item::mutableItemBase(), Arcane::mesh::MeshInfos::nbFace(), Arcane::mesh::MeshInfos::rank(), Arcane::mesh::FaceFamily::replaceNode(), Arccore::Array< T >::resize(), et Arcane::MutableItemBase::setOwner().
Référencé par Arcane::mesh::DynamicMeshIncrementalBuilder::addFaces().
ItemInternal * Arcane::mesh::OneMeshItemAdder::addOneItem | ( | IItemFamily * | family, |
IItemFamilyModifier * | family_modifier, | ||
ItemTypeId | type_id, | ||
Int64 | item_uid, | ||
Int32 | item_owner, | ||
Int32 | sub_domain_id, | ||
Integer | nb_connected_family, | ||
Int64ConstArrayView | connectivity_info | ||
) |
Définition à la ligne 383 du fichier OneMeshItemAdder.cc.
ItemInternal * Arcane::mesh::OneMeshItemAdder::addOneItem2 | ( | IItemFamily * | family, |
IItemFamilyModifier * | family_modifier, | ||
ItemTypeId | type_id, | ||
Int64 | item_uid, | ||
Int32 | item_owner, | ||
Int32 | sub_domain_id, | ||
Integer | nb_connected_family, | ||
Int64ConstArrayView | connectivity_info | ||
) |
Définition à la ligne 436 du fichier OneMeshItemAdder.cc.
ItemInternal * Arcane::mesh::OneMeshItemAdder::addOneNode | ( | Int64 | node_uid, |
Int32 | owner | ||
) |
Définition à la ligne 100 du fichier OneMeshItemAdder.cc.
ItemInternal * Arcane::mesh::OneMeshItemAdder::addOneParentItem | ( | const Item & | item, |
const eItemKind | submesh_kind, | ||
const bool | fatal_on_existing_item = true |
||
) |
Ajoute d'un item parent.
L'item fourni sert de description à l'item devant être ajouté au sous-maillage (au niveau de sa décomposition en sous-items). L'argument submesh_kind détermine quel est le genre attendu de item dans le sous-maillage.
Cette méthode permet d'ajouter de manière consistence un item à un sous-maillage à partir d'un item parent. L'item ajouté ne sera connecté qu'à des items de genre inférieur.
La relation item/parent item est matérialisée par le uid qui est conservé.
l'item | ajouté |
Type la table de hashage uniqueId()->ItemInternal*
Définition à la ligne 778 du fichier OneMeshItemAdder.cc.
Références Arcane::mesh::FaceFamily::addBackCellToFace(), Arcane::mesh::EdgeFamily::addCellToEdge(), Arcane::mesh::FaceFamily::addEdgeToFace(), Arcane::mesh::EdgeFamily::addFaceToEdge(), Arcane::mesh::FaceFamily::addFrontCellToFace(), ARCANE_CHECK_POINTER, ARCANE_FATAL, Arcane::mesh::DynamicMesh::dimension(), Arcane::Cell::face(), Arcane::mesh::ItemTools::findEdgeInNode2(), Arcane::mesh::EdgeFamily::findOrAllocOne(), Arcane::mesh::FaceFamily::findOrAllocOne(), Arcane::IK_Cell, Arcane::IK_Edge, Arcane::IK_Face, Arcane::IK_Node, Arccore::TraceAccessor::info(), Arcane::Face::isSubDomainBoundary(), Arcane::Face::isSubDomainBoundaryOutside(), Arcane::Item::itemBase(), Arcane::ItemTypeInfo::itemTypeId(), Arcane::mesh::DynamicMesh::itemTypeMng(), Arcane::Item::kind(), Arcane::MeshToMeshTransposer::kindTranspose(), Arcane::ItemTypeInfo::localEdge(), Arcane::ItemTypeInfo::localFace(), Arcane::Item::localId(), m_mesh_info, m_work_face_sorted_nodes, Arcane::mesh::MeshInfos::nbCell(), Arcane::mesh::MeshInfos::nbEdge(), Arcane::mesh::MeshInfos::nbFace(), Arcane::ItemTypeInfo::nbLocalEdge(), Arcane::ItemTypeInfo::nbLocalFace(), Arcane::ItemTypeInfo::nbLocalNode(), Arcane::mesh::MeshInfos::nbNode(), Arcane::ItemWithNodes::node(), Arcane::Item::owner(), Arcane::mesh::DynamicMesh::parentMesh(), Arcane::mesh::MeshInfos::rank(), Arcane::mesh::CellFamily::replaceEdge(), Arcane::mesh::FaceFamily::replaceEdge(), Arcane::mesh::CellFamily::replaceFace(), Arcane::mesh::CellFamily::replaceNode(), Arcane::mesh::EdgeFamily::replaceNode(), Arcane::mesh::FaceFamily::replaceNode(), Arccore::Array< T >::resize(), Arcane::Item::toCell(), Arcane::Item::toFace(), Arcane::Item::toItemWithNodes(), Arcane::Item::type(), Arcane::ItemTypeInfo::typeId(), et Arcane::Item::uniqueId().
Référencé par Arcane::mesh::DynamicMeshIncrementalBuilder::addParentCells(), et Arcane::mesh::DynamicMeshIncrementalBuilder::addParentItems().
|
inline |
Définition à la ligne 105 du fichier OneMeshItemAdder.h.
|
inline |
Définition à la ligne 106 du fichier OneMeshItemAdder.h.
|
inline |
Définition à la ligne 104 du fichier OneMeshItemAdder.h.
|
inline |
Définition à la ligne 103 du fichier OneMeshItemAdder.h.
|
inline |
Définition à la ligne 112 du fichier OneMeshItemAdder.h.
|
inline |
Définition à la ligne 111 du fichier OneMeshItemAdder.h.
void Arcane::mesh::OneMeshItemAdder::resetAfterDeallocate | ( | ) |
Remise à zéro des structures pour pouvoir faire à nouveau une allocation.
Définition à la ligne 1110 du fichier OneMeshItemAdder.cc.
Références m_mesh_info, m_next_edge_uid, m_next_face_uid, et Arcane::mesh::MeshInfos::reset().
Référencé par Arcane::mesh::DynamicMeshIncrementalBuilder::resetAfterDeallocate().
|
inline |
Définition à la ligne 109 du fichier OneMeshItemAdder.h.
|
inline |
Définition à la ligne 108 du fichier OneMeshItemAdder.h.
Positionne le mécanisme de numérotation des uniqueId().
Définition à la ligne 1121 du fichier OneMeshItemAdder.cc.
Références ARCANE_FATAL, Arccore::TraceAccessor::info(), m_next_edge_uid, m_next_face_uid, et m_use_hash_for_edge_and_face_unique_id.
|
private |
Définition à la ligne 162 du fichier OneMeshItemAdder.h.
|
private |
Définition à la ligne 165 du fichier OneMeshItemAdder.h.
|
private |
Définition à la ligne 164 du fichier OneMeshItemAdder.h.
|
private |
Définition à la ligne 167 du fichier OneMeshItemAdder.h.
|
private |
Définition à la ligne 159 du fichier OneMeshItemAdder.h.
|
private |
Définition à la ligne 160 du fichier OneMeshItemAdder.h.
|
private |
Info générale sur le maillage (numéro de sous-domaine, nombre d'items...)
Définition à la ligne 169 du fichier OneMeshItemAdder.h.
Référencé par _addNodesToCell(), _addOneCell(), addOneFace(), addOneParentItem(), et resetAfterDeallocate().
|
private |
Numéro du uniqueId() suivant utilisé pour générer les arêtes.
Définition à la ligne 172 du fichier OneMeshItemAdder.h.
Référencé par resetAfterDeallocate(), et setUseNodeUniqueIdToGenerateEdgeAndFaceUniqueId().
|
private |
Numéro du uniqueId() suivant utilisé pour générer les faces.
Définition à la ligne 171 du fichier OneMeshItemAdder.h.
Référencé par _checkGenerateFaceUniqueId(), resetAfterDeallocate(), et setUseNodeUniqueIdToGenerateEdgeAndFaceUniqueId().
|
private |
Définition à la ligne 163 du fichier OneMeshItemAdder.h.
Si vrai, génère les uniqueId() des faces à partir de ceux des noeuds.
Définition à la ligne 181 du fichier OneMeshItemAdder.h.
Référencé par _checkGenerateFaceUniqueId(), et setUseNodeUniqueIdToGenerateEdgeAndFaceUniqueId().
|
private |
Définition à la ligne 178 du fichier OneMeshItemAdder.h.
|
private |
Définition à la ligne 177 du fichier OneMeshItemAdder.h.
|
private |
Définition à la ligne 176 du fichier OneMeshItemAdder.h.
|
private |
Tableaux de travail.
Définition à la ligne 175 du fichier OneMeshItemAdder.h.
Référencé par _addOneCell(), addOneFace(), et addOneParentItem().