diff options
Diffstat (limited to 'src/slices.h')
-rwxr-xr-x | src/slices.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/slices.h b/src/slices.h index 9f97246..85cb621 100755 --- a/src/slices.h +++ b/src/slices.h @@ -10,10 +10,10 @@ Slice are inclusive intervals. Let say sliceNew(1,2,S_UNKNOWN,NULL) return a [1; */ typedef enum { S_UNKNOWN, S_RECOVERED, S_UNREADABLE } sliceStatus_t; -typedef unsigned long int address_t; +typedef unsigned long long int address_t; typedef struct _slice { - uint32_t begin, end; + address_t begin, end; sliceStatus_t status; struct _slice *next; } slice_t; @@ -29,6 +29,7 @@ int sliceSplit(slices_t *slices, slice_t *initialSlice, address_t splitAt, slice slices_t *slicesNew(); void slicesAppend(slices_t *slices, slice_t *slice); slice_t *slicesFindLargest(slices_t *slices, sliceStatus_t status); +slice_t *slicesFindLargestFast(slices_t *slices, address_t *foundMax, sliceStatus_t status, address_t knownMax, slice_t *firstToTry); char *slicesDump(slices_t *slices, address_t *blockSize, unsigned int charCount, address_t begin, address_t end); #endif /*SLICES_H*/ |