Prototype
E_RTN EMemory::SpaceSuppress( ulonglong ullOffset = 0,
ulonglong ullOffsetSize = EMemory::SizeUpToEnd );

Cette fonction supprime toutes les données de l'intervalle de travail.

L'espace de travail est redimensionné à la baisse du nombre d'octets supprimé.

 

Argument

ulonglong ullOffset = 0

offset de départ de l'intervalle de travail à supprimer.

ulonglong ullOffsetSize = EMemory::SizeUpToEnd

étendue de l'intervalle de travail à supprimer.

 

Retour

E_RTN

voir la section retour de la librairie Eclat.

 

Exemple

Description :

Suppression de l'espace de l'intervalle de travail de l'offset 1 sur une étendue de 7 octets, puis suppression de tout l'espace de travail d'un objet EMemory alloué de 9 octets contenant les données 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48 et 0x49 ("ABCDEFGHI" en ASCII).

Code :

EMemory eMem( "ABCDEFGHI", 9 ); // objet EMemory alloué de 9 octets

eMem.TraceEx( _T("eMem") );
eMem.SpaceSuppress( 1, 7 );
eMem.TraceEx( _T("eMem") );
eMem.SpaceSuppress();
eMem.TraceEx( _T("eMem") );

Sortie :

### Object EMemory 'eMem' Trace #
# Object address='0x0012F408', status='EMemory::ObjectStatus_Enable' (code '3').
# Buffer address='0x00000004', workspace size='9' byte(s).
# Array data from offset '0x00000000' to offset '0x00000008', length=9 byte(s).
# Offset start 0x00000000 41 42 43 44 45 46 47 48 49 .. .. .. .. .. .. .. [ABCDEFGHI]
### End #

### Object EMemory 'eMem' Trace #
# Object address='0x0012F408', status='EMemory::ObjectStatus_Enable' (code '3').
# Buffer address='0x00000004', workspace size='2' byte(s).
# Array data from offset '0x00000000' to offset '0x00000001', length=2 byte(s).
# Offset start 0x00000000 41 49 .. .. .. .. .. .. .. .. .. .. .. .. .. .. [AI]
### End #

### Object EMemory 'eMem' Trace #
# Object address='0x0012F408', status='EMemory::ObjectStatus_Empty' (code '2').
# Buffer address='0x00000004', workspace size='0' byte(s).
# No data to show from offset '0x00000000' to offset '0x00000000', length=0 byte(s).
### End #

Vue :

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E ..
00 01 02 03 04 05 06 07 08
41
A
42
B
43
C
44
D
45
E
46
F
47
G
48
H
49
I

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E ..
00 01
41
A
49
I

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E ..
 
 

 

Voir aussi
E_RTN EMemory::SpaceSuppressEach( ulonglong *pullSpaceCountSuppressed, ulonglong ullSpaceToSuppressSize, ulonglong ullStepEach, BOOL bStartAtFirst, ulonglong ullOffset = 0, ulonglong ullOffsetSize = EMemory::SizeUpToEnd );
E_RTN EMemory::ByteSuppress( ulonglong *pullByteCountSuppressed, uchar ucByteToSuppress, ulonglong ullOffset = 0, ulonglong ullOffsetSize = EMemory::SizeUpToEnd );
E_RTN EMemory::BytesSuppress( ulonglong *pullByteCountSuppressed, void *pBytesToSuppress, ulonglong ullBytesToSuppressSize, ulonglong ullOffset = 0, ulonglong ullOffsetSize = EMemory::SizeUpToEnd );
E_RTN EMemory::BlockSuppress( ulonglong *pullBlockCountSuppressed, void *pBlockToSuppress, ulonglong ullBlockToSuppressSize, ulonglong ullOffset = 0, ulonglong ullOffsetSize = EMemory::SizeUpToEnd );
E_RTN EMemory::BlocksSuppress( ulonglong *pullBlockCountSuppressed, ulonglong *pullBlockWeightAccrued, EMemory::SC_BLOCK *pscBlockToSuppress, ulonglong ullBlockToSuppressCount, ulonglong ullOffset = 0, ulonglong ullOffsetSize = EMemory::SizeUpToEnd );

 

Minimum
Version 1.0.0