Stocke les infos sur une face d'une maille. Plus de détails...
Fonctions membres publiques | |
bool | isMaxValue () const |
void | setMaxValue () |
void | setValue (Int64 cell_uid, Int32 _rank, Int32 face_local_index) |
Int64 | cellUid () const |
Int32 | rank () const |
Int32 | faceLocalIndex () const |
bool | isValid () const |
Attributs publics statiques | |
static const Int64 | BITS_CELL_UID = 39 |
static const Int64 | BITS_RANK = 20 |
static const Int64 | BITS_INDEX = 5 |
static const Int64 | ONE_INT64 = 1 |
static const Int64 | MASK_CELL_UID = (ONE_INT64 << BITS_CELL_UID) - 1 |
static const Int64 | MASK_RANK = ((ONE_INT64 << BITS_RANK) - 1) << BITS_CELL_UID |
static const Int64 | MASK_INDEX = ((ONE_INT64 << BITS_INDEX) - 1) << (BITS_CELL_UID+BITS_RANK) |
Attributs privés | |
Int64 | m_value = -1 |
Stocke les infos sur une face d'une maille.
Cette structure est utilisée lors du tri des faces. Comme le tri est parallèle et afin de limiter la taille des messages envoyés, il faut que la taille de cette structure soit la plus petite possible. Pour cela, on suppose que les valeurs max ne sont pas atteignables. Normalement, on a:
Logiquement, ces limites ne seront pas atteintes avant un moment (on est en 2012). Et lorsque ce sera le cas, il suffira d'utiliser la structure WideCellFaceInfo en changeant le typedef qui va bien.
On utilise donc un seul Int64, avec les 39 premiers bits pour le uid, les 20 suivantes pour le rang et les 5 derniers pour le local_index. A noter que pour éviter des problèmes de signe, on stocke la valeur donnée plus 1.
Définition à la ligne 139 du fichier FaceUniqueIdBuilder2.cc.
|
inline |
Définition à la ligne 151 du fichier FaceUniqueIdBuilder2.cc.
|
inline |
Définition à la ligne 184 du fichier FaceUniqueIdBuilder2.cc.
|
inline |
Définition à la ligne 186 du fichier FaceUniqueIdBuilder2.cc.
|
inline |
Définition à la ligne 157 du fichier FaceUniqueIdBuilder2.cc.
|
inline |
Définition à la ligne 188 du fichier FaceUniqueIdBuilder2.cc.
|
inline |
Définition à la ligne 185 du fichier FaceUniqueIdBuilder2.cc.
|
inline |
Définition à la ligne 163 du fichier FaceUniqueIdBuilder2.cc.
|
inline |
Définition à la ligne 169 du fichier FaceUniqueIdBuilder2.cc.
|
static |
Définition à la ligne 142 du fichier FaceUniqueIdBuilder2.cc.
|
static |
Définition à la ligne 144 du fichier FaceUniqueIdBuilder2.cc.
|
static |
Définition à la ligne 143 du fichier FaceUniqueIdBuilder2.cc.
|
private |
Définition à la ligne 192 du fichier FaceUniqueIdBuilder2.cc.
|
static |
Définition à la ligne 146 du fichier FaceUniqueIdBuilder2.cc.
|
static |
Définition à la ligne 148 du fichier FaceUniqueIdBuilder2.cc.
|
static |
Définition à la ligne 147 du fichier FaceUniqueIdBuilder2.cc.
|
static |
Définition à la ligne 145 du fichier FaceUniqueIdBuilder2.cc.