Interface d'une famille de particules. Plus de détails...
#include <arcane/core/IParticleFamily.h>
Fonctions membres publiques | |
virtual void | build ()=0 |
virtual void | setEnableGhostItems (bool value)=0 |
set le flag pour gérer les particules ghost de la famille | |
virtual bool | getEnableGhostItems () const =0 |
récupère le flag pour gérer les particules ghost de la famille | |
virtual String | name () const =0 |
Nom de la famille. | |
virtual String | fullName () const =0 |
Nom complet de la famille (avec celui du maillage) | |
virtual Integer | nbItem () const =0 |
Nombre d'entités. | |
virtual ItemGroup | allItems () const =0 |
Groupe de toutes les particules. | |
virtual ParticleVectorView | addParticles (Int64ConstArrayView unique_ids, Int32ArrayView items_local_id)=0 |
Alloue des particules. | |
virtual ParticleVectorView | addParticles2 (Int64ConstArrayView unique_ids, Int32ConstArrayView owners, Int32ArrayView items)=0 |
virtual ParticleVectorView | addParticles (Int64ConstArrayView unique_ids, Int32ConstArrayView cells_local_id, Int32ArrayView items_local_id)=0 |
Alloue des particules dans des mailles. | |
virtual void | removeParticles (Int32ConstArrayView items_local_id)=0 |
virtual void | endUpdate ()=0 |
virtual void | setParticleCell (Particle particle, Cell new_cell)=0 |
Déplace la particule particle dans la maille new_cell. | |
virtual void | setParticlesCell (ParticleVectorView particles, CellVectorView new_cells)=0 |
Déplace la list de particules particles dans les nouvelles mailles new_cells. | |
virtual void | exchangeParticles ()=0 |
Échange des entités. | |
virtual IItemFamily * | itemFamily ()=0 |
Interface sur la famille. | |
Interface d'une famille de particules.
Une famille de particle est une famille d'entité (IItemFamily). Cette interface ne contient que les méthodes spécifiques aux particules. Pour les opérations génériques aux entités, il faut passer par l'interface IItemFamily via itemFamily().
Il peut y a voir plusieurs famille de particule par maillage. Contrairement aux entités classiques du maillage (noeud, maille, ...), les particules peuvent être créées directement.
Définition à la ligne 42 du fichier IParticleFamily.h.
|
inlinevirtual |
Définition à la ligne 46 du fichier IParticleFamily.h.
|
pure virtual |
Alloue des particules.
Alloue les particules dont les uniqueId() sont données par le tablea unique_ids.
Après appel à cette opération, il faut appeler endUpdate() pour notifier à l'instance la fin des modifications. Il est possible d'enchaîner plusieurs allocations avant d'appeler endUpdate(). Attention, la vue retournée peut être invalidée après l'appel à endUpdate() si la compression est active. items_local_id doit avoir le même nombre d'éléments que unique_ids.
|
pure virtual |
Alloue des particules dans des mailles.
Cette méthode est similaire à addParticles() mais permet de spécifier directement les mailles dans lesquelles seront créées les particules.
|
pure virtual |
|
pure virtual |
Échange des entités.
Cette méthode n'est supportée que pour les familles de particule. Pour les éléments du maillage comme les noeuds, faces ou maille, il faut utiliser IMesh::exchangeItems().
Les nouveaux propriétaires des entités sont données par la itemsNewOwner().
Cette opération est bloquante et collective.
Référencé par Arcane::BasicRayMeshIntersection::compute().