luxlabs header browser preview


@class NSString, NSMutableOrderedSet, BMFileHandle, BMMemoryMapping;

@interface BMFrameStore : NSObject {
    NSMutableOrderedSet *_framePointers;
    NSString *_cachedPrintablePath;
}

@property (readonly) unsigned int bytesUsed;
@property (retain, nonatomic) NSString *cachedPrintablePathV2;
@property (readonly, nonatomic) NSString *segmentName;
@property (readonly, nonatomic) NSString *segmentPath;
@property (nonatomic) BOOL filterByAgeOnRead;
@property (nonatomic) BOOL pruneOnAccess;
@property (nonatomic) double maxAge;
@property (nonatomic) unsigned long long frameStoreSize;
@property (nonatomic) unsigned int datastoreVersion;
@property (retain, nonatomic) BMMemoryMapping *header;
@property (retain, nonatomic) BMMemoryMapping *frames;
@property (readonly, nonatomic) BMFileHandle *backingFile;
@property (nonatomic) unsigned long long permission;
@property (nonatomic) double lastAbsoluteTimestamp;

+ (id)new;
+ (BOOL)expectedTimestamp:(double)a0;
+ (unsigned int)getSegmentVersion:(id)a0 config:(id)a1 stream:(id)a2;
+ (unsigned long long)maxEventsPerFrameStoreVersion:(unsigned long long)a0 averageEventSize:(unsigned long long)a1 segmentSize:(unsigned long long)a2;
+ (BOOL)writeEmptyFrameStoreWithFileHandle:(id)a0 fileSize:(unsigned long long)a1 datastoreVersion:(unsigned long long)a2;
+ (BOOL)writeEmptySegmentHeaderWithFileHandleV1:(id)a0 segmentHeaderSize:(unsigned long long *)a1;
+ (BOOL)writeEmptySegmentHeaderWithFileHandleV2:(id)a0 segmentHeaderSize:(unsigned long long *)a1;

- (void)sync;
- (long long)getReverseOffsetIndex:(unsigned long long)a0;
- (unsigned int)bytesUsedV1;
- (id)init;
- (unsigned char)writeFrameForBytes:(const void *)a0 length:(unsigned long long)a1 dataVersion:(unsigned int)a2 timestamp:(double)a3;
- (unsigned int)offsetOfFrameV2:(unsigned int)a0;
- (void)dealloc;
- (id)_printablePath;
- (id)initWithFileHandleV1:(id)a0 permission:(unsigned long long)a1;
- (void *)start;
- (void)updateHighestDeletedFrameV2:(id)a0 addToDeletedFrameCount:(unsigned int)a1;
- (void)enumerateFromOffset:(unsigned long long)a0 withCallback:(id /* block */)a1;
- (unsigned int)stateOfFrameV2:(unsigned int)a0;
- (id)frameWithOffsetV2:(unsigned long long)a0 expectedState:(unsigned int)a1;
- (id)initWithFileHandle:(id)a0 permission:(unsigned long long)a1 datastoreVersion:(unsigned long long)a2;
- (BOOL)isValidFrameV1:(void *)a0 expectedState:(unsigned int)a1 copyOfData:(id *)a2 frameStatus:(struct { unsigned int x0; unsigned int x1; })a3 validations:(BOOL)a4 enumerationOptions:(unsigned long long)a5 errorCode:(int *)a6;
- (BOOL)isValidFrameV2:(void *)a0 currentFrame:(unsigned int)a1 expectedState:(unsigned int)a2 copyOfData:(id *)a3 frameState:(unsigned int)a4 frameSize:(unsigned int)a5 validations:(BOOL)a6 enumerationOptions:(unsigned long long)a7 errorCode:(int *)a8;
- (BOOL)offsetIsStartOfFrameStore:(unsigned long long)a0;
- (void)updateToMaxOfValueAtOffset:(unsigned int)a0 newValue:(int)a1;
- (unsigned char)writeFrameV2ForBytes:(const void *)a0 length:(unsigned long long)a1 dataVersion:(unsigned int)a2 timestamp:(double)a3 outOffset:(unsigned long long *)a4;
- (void)addToDeletedFrameCount:(unsigned int)a0;
- (double)creationTimeOfFrameV2:(unsigned int)a0;
- (unsigned char)writeFrameForBytes:(const void *)a0 length:(unsigned long long)a1 dataVersion:(unsigned int)a2 timestamp:(double)a3 outOffset:(unsigned long long *)a4;
- (void)updateFrameStoreIndex;
- (void)updateToMaxOfTotalFramesAnd:(unsigned int)a0;
- (BOOL)isCheckSumValidAtOffsetV2:(unsigned long long)a0 frameNumber:(int)a1;
- (void)enumerateWithOptionsV1:(unsigned long long)a0 fromOffset:(unsigned long long)a1 usingBlock:(id /* block */)a2;
- (void)markFrameAsRemovedV1:(id)a0;
- (id)_printablePathV2;
- (int)eraseFrameAtOffsetTableV2:(struct { union { struct { unsigned int x0; unsigned int x1; } x0; unsigned long long x1; } x0; double x1; } *)a0;
- (int)frameNumberFromOffsetToOffsetTableEntryV2:(unsigned int)a0;
- (void)updateToMaxOfHighestDeletedFrameAnd:(unsigned int)a0;
- (unsigned int)offsetTableOffsetFromFrameNumberV2:(unsigned int)a0;
- (void)setBackingFile:(id)a0;
- (unsigned int)bytesUsedV2;
- (void)updateHeader;
- (void)enumerateWithOptionsV2:(unsigned long long)a0 fromOffset:(unsigned long long)a1 usingBlock:(id /* block */)a2;
- (void).cxx_destruct;
- (id)frameWithOffset:(unsigned long long)a0 expectedState:(unsigned int)a1;
- (unsigned int)endOfFrameDataV2;
- (BOOL)getSegmentHeader:(union { struct { unsigned long long x0[2]; unsigned int x1; } x0; struct { unsigned long long x0; double x1; unsigned int x2; char x3[32]; char x4[4]; } x1; struct { char x0[4]; unsigned int x1; double x2; unsigned int x3; int x4; unsigned int x5; unsigned int x6; } x2; } *)a0 fromFileV2:(id)a1 fileSize:(unsigned long long *)a2;
- (unsigned char)appendFrameHeaderV1:(struct { union { struct { unsigned int x0; unsigned int x1; } x0; unsigned long long x1; } x0; struct { double x0; double x1; unsigned int x2; unsigned int x3; } x1; } *)a0 offset:(unsigned long long *)a1;
- (unsigned int)atomicReadTotalFramesV2;
- (struct { union { struct { unsigned int x0; unsigned int x1; } x0; unsigned long long x1; } x0; double x1; } *)offsetTablePtrFromFrameNumberV2:(unsigned int)a0;
- (BOOL)isCheckSumValidAtOffsetV1:(unsigned long long)a0;
- (id)frameWithOffsetV1:(unsigned long long)a0 expectedState:(unsigned int)a1;
- (void)enumerateWithOptions:(unsigned long long)a0 fromOffset:(unsigned long long)a1 usingBlock:(id /* block */)a2;
- (void)addToValueAtOffset:(unsigned int)a0 increment:(unsigned int)a1;
- (unsigned int)frameOffsetFromOffsetTableV2:(struct { union { struct { unsigned int x0; unsigned int x1; } x0; unsigned long long x1; } x0; double x1; } *)a0;
- (void)updateHighestDeletedFrame:(id)a0;
- (id)initWithFileHandleV2:(id)a0 permission:(unsigned long long)a1;
- (void)markFrameAsRemovedV2:(id)a0;
- (void)markFrameAsRemoved:(id)a0;
- (unsigned int)sizeOfFrameV2:(unsigned int)a0;
- (unsigned char)appendOffsetTableEntry:(struct { union { struct { unsigned int x0; unsigned int x1; } x0; unsigned long long x1; } x0; double x1; } *)a0 outOffsetForFrame:(unsigned int *)a1 length:(unsigned int)a2 frameCount:(unsigned int *)a3;
- (BOOL)getSegmentHeader:(union { struct { unsigned long long x0[2]; unsigned int x1; } x0; struct { unsigned long long x0; double x1; unsigned int x2; char x3[32]; char x4[4]; } x1; struct { char x0[4]; unsigned int x1; double x2; unsigned int x3; int x4; unsigned int x5; unsigned int x6; } x2; } *)a0 fromFileV1:(id)a1 fileSize:(unsigned long long *)a2;
- (unsigned char)writeFrameV1ForBytes:(const void *)a0 length:(unsigned long long)a1 dataVersion:(unsigned int)a2 timestamp:(double)a3 outOffset:(unsigned long long *)a4;
- (int)frameNumberFromFrameOffsetV2:(unsigned int)a0;
- (int)firstFrameNumberForTimestampV2:(double)a0 reverse:(BOOL)a1;

@end