![]() |
Moka kernel
|
Go to the source code of this file.
Macros | |
Définition des types de base du noyau (orbites, involutions et | |
masques) | |
| #define | NB_MARKS (32) |
| #define | NB_DIRECT_INFO (4) |
Opérations sur les orbites. | |
Les différents identifiants des attributs sont définis dans le fichier attributes-id.hh Une orbite est définie par un ensemble d'involutions. Une orbite peut donc être manipulée comme un ensemble. | |
| #define | NEG_ORBIT(O1) (static_cast<TOrbit> (0xF ^ (static_cast<unsigned int>(O1)))) |
| #define | ADD_ORBIT(O1, O2) |
| #define | AND_ORBIT(O1, O2) |
| #define | SUB_ORBIT(O1, O2) |
| #define | IS_ORBIT_INCLUDED(O1, O2) |
Typedefs | |
| typedef int8_t | TOrbit |
| Type Orbite. | |
| typedef int | TAttributeId |
Enumerations | |
| enum | { ORBIT_NONE = -1, ORBIT_SELF, ORBIT_0, ORBIT_1, ORBIT_01, ORBIT_2, ORBIT_02, ORBIT_12, ORBIT_012, ORBIT_3, ORBIT_03, ORBIT_13, ORBIT_013, ORBIT_23, ORBIT_023, ORBIT_123, ORBIT_0123, ORBIT_BORDER_0, ORBIT_BORDER_1, ORBIT_BORDER_2, ORBIT_BORDER_3 } |
Variables | |
| const TOrbit | ORBIT_VERTEX = ORBIT_123 |
| const TOrbit | ORBIT_EDGE = ORBIT_023 |
| const TOrbit | ORBIT_FACE = ORBIT_013 |
| const TOrbit | ORBIT_VOLUME = ORBIT_012 |
| const TOrbit | ORBIT_CC = ORBIT_0123 |
| const TOrbit | ORBIT_INF [4] |
| const TOrbit | ORBIT_CELL [5] |
| Orbite cellule de dimension l'indice du tableau. | |
| const TOrbit | ORBIT_BORDER [4] |
| Orbite bord de dimension l'indice du tableau. | |
| const TOrbit | ORBIT_I_IM1 [4] |
| const TOrbit | ORBIT_I_IP1 [4] |
| const TOrbit | ORBIT_INVO [4] |
| const TOrbit | ORBIT_SEWS [4] |
| Orbite qui est modifiée lors d'une couture par l'indice du tableau. | |
| const TOrbit | ORBIT_DIM [4] |
| Orbite par l'involution d'indice celui du tableau. | |
| enum | { OP_NONE = -1, OP_ALPHA0, OP_ALPHA1, OP_ALPHA2, OP_ALPHA3, OP_ALPHAI, OP_ALPHAJ, OP_ALPHAK, OP_JUMP, OP_TURN_AROUND, OP_END, OP_UNKNOWN } |
| typedef int8_t | TOperationState |
Les masques | |
Les masques sont des tableaux de bits interprétés comme en valeur booléenne. L'indice du tableau correspond à l'indice de l'involution associée au booléen. | |
| typedef std::bitset< 16 > | TMask16 |
| Définition du type TMask16 pour les 16 orbites possibles. | |
| const TMask16 | MASK_FALSE ((unsigned int) 0x0000) |
| Attention, les bits de poids fort sont à gauche. | |
| const TMask16 | MASK_TRUE ((unsigned int) 0xFFFF) |
| Mask 'vrai'. | |
| const TMask16 | MASK0 ((unsigned int) 0xAAAA) |
| const TMask16 | MASK1 ((unsigned int) 0xCCCC) |
| const TMask16 | MASK2 ((unsigned int) 0xF0F0) |
| const TMask16 | MASK3 ((unsigned int) 0xFF00) |
| const TMask16 | MASK0M2 (MASK0 &~MASK2) |
| Masques de toutes les orbites contenant alphai et pas alphaj : | |
| const TMask16 | MASK0M3 (MASK0 &~MASK3) |
| const TMask16 | MASK1M3 (MASK1 &~MASK3) |
| const TMask16 | MASK2M0 (MASK2 &~MASK0) |
| const TMask16 | MASK3M0 (MASK3 &~MASK0) |
| const TMask16 | MASK3M1 (MASK3 &~MASK1) |
Type d'affichage éclaté. | |
| enum | { FIRST_BURST_METHOD = 0, BURST_METHOD_SCALE = FIRST_BURST_METHOD, BURST_METHOD_SHIFT, LAST_BURST_METHOD } |
| typedef int8_t | TBurstMethod |
| #define ADD_ORBIT | ( | O1, | |
| O2 | |||
| ) |
Union de 2 orbites.
| O1 | Une orbite. |
| O2 | Une orbite. |
Definition at line 126 of file kernel-types.hh.
| #define AND_ORBIT | ( | O1, | |
| O2 | |||
| ) |
Intersection de 2 orbites.
| O1 | Une orbite. |
| O2 | Une orbite. |
Definition at line 139 of file kernel-types.hh.
| #define IS_ORBIT_INCLUDED | ( | O1, | |
| O2 | |||
| ) |
Test d'inclusion d'orbites.
| O1 | Une orbite. |
| O2 | Une orbite. |
Definition at line 164 of file kernel-types.hh.
| #define NB_DIRECT_INFO (4) |
Nombre de champs direct-info associés aux brins.
Definition at line 53 of file kernel-types.hh.
| #define NB_MARKS (32) |
Nombre de marques associées aux brins.
Definition at line 48 of file kernel-types.hh.
| #define NEG_ORBIT | ( | O1 | ) | (static_cast<TOrbit> (0xF ^ (static_cast<unsigned int>(O1)))) |
Complémentaire d'une orbite.
| O1 | Une orbite. |
Definition at line 115 of file kernel-types.hh.
| #define SUB_ORBIT | ( | O1, | |
| O2 | |||
| ) |
Soustraction d'orbites.
| O1 | Une orbite. |
| O2 | Une orbite. |
Definition at line 152 of file kernel-types.hh.
| typedef int TAttributeId |
Definition at line 94 of file kernel-types.hh.
| typedef int8_t TBurstMethod |
Ce type permet de spécifier quel type d'affichage éclatée on utilise.
Definition at line 341 of file kernel-types.hh.
| typedef std::bitset<16> TMask16 |
Définition du type TMask16 pour les 16 orbites possibles.
Definition at line 296 of file kernel-types.hh.
| typedef int8_t TOperationState |
Ce type permet, lors d'un parcours, de connaître quel est le type de la dernière opération
Definition at line 247 of file kernel-types.hh.
Type Orbite.
Definition at line 59 of file kernel-types.hh.
| anonymous enum |
Definition at line 63 of file kernel-types.hh.
| anonymous enum |
Definition at line 249 of file kernel-types.hh.
| anonymous enum |
Definition at line 343 of file kernel-types.hh.
| const TMask16 MASK0 | ( | (unsigned int) | 0xAAAA | ) |
Masque de toutes les orbites contenant l'involution alpha0 dans leur ensemble définition.
Masques de toutes les orbites contenant alphai et pas alphaj :
| const TMask16 MASK1 | ( | (unsigned int) | 0xCCCC | ) |
Masque de toutes les orbites contenant l'involution alpha1 dans leur ensemble définition.
| const TMask16 MASK2 | ( | (unsigned int) | 0xF0F0 | ) |
Masque de toutes les orbites contenant l'involution alpha2 dans leur ensemble définition.
| const TMask16 MASK3 | ( | (unsigned int) | 0xFF00 | ) |
Masque de toutes les orbites contenant l'involution alpha3 dans leur ensemble définition.
| const TMask16 MASK_FALSE | ( | (unsigned int) | 0x0000 | ) |
Attention, les bits de poids fort sont à gauche.
Un masque est un tableau de 16 booléens utilisé principalement pour la mise à jour des plongements. En effet, lors d'une couture ou d'une décousure de dimension i, toutes les orbites ne contenant pas l'involution alphai peuvent nécessiter une modification de leurs plongements.Masque 'faux'.
| const TMask16 MASK_TRUE | ( | (unsigned int) | 0xFFFF | ) |
Mask 'vrai'.
| const TOrbit ORBIT_BORDER[4] |
Orbite bord de dimension l'indice du tableau.
Definition at line 200 of file kernel-types.hh.
| const TOrbit ORBIT_CC = ORBIT_0123 |
Definition at line 178 of file kernel-types.hh.
| const TOrbit ORBIT_CELL[5] |
Orbite cellule de dimension l'indice du tableau.
Definition at line 194 of file kernel-types.hh.
| const TOrbit ORBIT_DIM[4] |
Definition at line 175 of file kernel-types.hh.
Definition at line 176 of file kernel-types.hh.
| const TOrbit ORBIT_I_IM1[4] |
| const TOrbit ORBIT_I_IP1[4] |
| const TOrbit ORBIT_INF[4] |
Orbite de l'ensemble des involutions d'indice inférieur strict à l'indice du tableau.
Definition at line 188 of file kernel-types.hh.
| const TOrbit ORBIT_INVO[4] |
| const TOrbit ORBIT_SEWS[4] |
Definition at line 174 of file kernel-types.hh.
Definition at line 177 of file kernel-types.hh.