Prototype |
E_RTN | EMemory::SpaceInsertEach( | ulonglong | *pullSpaceCountInserted, |
ulonglong | ullSpaceToInsertSize, | ||
ulonglong | ullStepEach, | ||
BOOL | bStartAtFirst, | ||
ulonglong | ullOffset = 0, | ||
ulonglong | ullOffsetSize = EMemory::SizeUpToEnd ); |
Cette fonction insère dans un intervalle de travail un espace de ullSpaceToInsertSize octet(s) à intervalle régulier. Tous les octets insérés ne sont pas nettoyés, donc leur valeur est partiellement indéterminée.
Si l'intervalle de travail est inférieur à l'intervalle régulier, cette fonction ne fait rien car elle insère un espace TOUS LES INTERVALLES REGULIERS (voir l'exemple pour l'objet eMem2).
Argument |
ulonglong *pullSpaceCountInserted adresse d'une variable de type ulonglong où y sera stocké le nombre d'espace inséré (à ne pas confondre avec octet(s) inséré(s)). Si cette information ne vous intéresse pas cet argument peut être NULL (la fonction ne retournera pas d'erreur à ce propos). |
ulonglong ullSpaceToInsertSize taille qu'il faut insérer, en octets. |
ulonglong ullStepEach intervalle régulier d'insertion. |
BOOL bStartAtFirst commencer l'insertion à partir de l'offset de départ. Dans ce cas, spécifiez la valeur TRUE. |
ulonglong ullOffset = 0 offset de départ de l'intervalle de travail d'insertion. |
ulonglong ullOffsetSize = EMemory::SizeUpToEnd étendue de l'intervalle de travail d'insertion. |
Retour |
E_RTN voir la section retour de la librairie Eclat. |
Exemple |
Description : Insertion d'un espace de 3 octets à intervalle régulier d'un octet sur l'ensemble de l'espace de travail d'un objet EMemory (eMem0) alloué d'une taille 3 octets contenant les données 0x41, 0x42 et 0x43 ("ABC" en ASCII). Insertion d'un espace de 3 octets à intervalle régulier de deux octets dans l'intervalle de travail de l'offset 1 sur une étendue de 3 octets d'un objet EMemory (eMem1) alloué d'une taille 5 octets contenant les données 0x44, 0x45, 0x46, 0x47 et 0x48 ("DEFGH" en ASCII). Enfin, insertion d'un espace de 3 octets à intervalle régulier de quatre octets sur l'ensemble de l'espace de travail d'un objet EMemory (eMem2) alloué d'une taille 3 octets contenant les données 0x49, 0x4A et 0x4B ("IJK" en ASCII). L'objet n'a pas assez d'espace de travail pour que cette dernière insertion soit effective. |
Code :
|
Sortie :
|
Vue : Vue de l'objet eMem0 :
Vue de l'objet eMem1 :
Vue de l'objet eMem2 :
|
Voir aussi |
Minimum |
Version | 1.0.0 |