8 #import <Cocoa/Cocoa.h> 34 @class HFByteRangeAttributeArray;
36 @interface HFByteArray : NSObject <NSCopying, NSMutableCopying> {
38 NSUInteger changeLockCounter;
46 - (instancetype)initWithByteSlice:(
HFByteSlice *)slice;
49 - (instancetype)initWithByteArray:(
HFByteArray *)array;
58 - (
unsigned long long)
length;
61 - (void)copyBytes:(
unsigned char *)dst range:(
HFRange)range;
75 - (
HFByteSlice *)sliceContainingByteAtIndex:(
unsigned long long)offset beginningOffset:(
unsigned long long *)actualOffset;
89 - (void)deleteBytesInRange:(
HFRange)range;
115 - (void)incrementGenerationOrRaiseIfLockedForSelector:(
SEL)sel;
134 - (
unsigned long long)indexOfBytesEqualToBytes:(
HFByteArray *)findBytes inRange:(
HFRange)range searchingForwards:(BOOL)forwards trackingProgress:(HFProgressTracker *)progressTracker;
150 - (BOOL)writeToFile:(NSURL *)targetURL trackingProgress:(HFProgressTracker *)progressTracker error:(NSError **)error;
156 - (NSArray *)rangesOfFileModifiedIfSavedToFile:(HFFileReference *)reference;
164 - (BOOL)clearDependenciesOnRanges:(NSArray *)ranges inFile:(HFFileReference *)reference hint:(NSMutableDictionary *)hint;
175 - (HFByteRangeAttributeArray *)attributesForBytesInRange:(
HFRange)range;
NSEnumerator * byteSliceEnumerator()
void incrementChangeLockCounter()
A reference to an open file.
Definition: HFFileReference.h:19
HFByteArrayDataStringType
Definition: HFByteArray.h:12
HFByteRangeAttributeArray * byteRangeAttributeArray()
HFRange is the 64 bit analog of NSRange, containing a 64 bit location and length. ...
Definition: HFTypes.h:2
NSUInteger changeGenerationCount()
A class that represents sets of attributes, attached to ranges of bytes.
Definition: HFByteRangeAttributeArray.h:13
unsigned long long length()
A class that helps handle progress indication and cancellation for long running threaded operations...
Definition: HFProgressTracker.h:29
HFByteArray methods for writing to files, and preparing other HFByteArrays for potentially destructiv...
Definition: HFByteArray.h:139
Definition: HFByteArray.h:13
HFByteArray methods for attributes of byte arrays.
Definition: HFByteArray.h:168
The principal Model class for HexFiend's MVC architecture.
Definition: HFByteArray.h:36
A class representing a source of data for an HFByteArray.
Definition: HFByteSlice.h:19
Definition: HFByteArray.h:14
void decrementChangeLockCounter()