luxlabs header browser preview


@interface CPCluster : NSObject <CPDisposable> {
    const struct { double x0; unsigned int x1; double x2; double x3; unsigned int x4; double x5; double x6; BOOL x7; double x8; double x9; double x10; double x11; double x12; double x13; double x14; double x15; double x16; double x17; double x18; BOOL x19; } *profile;
    unsigned int xCount;
    double *x;
    double *dx;
    unsigned int *dxOrderIndex;
    unsigned int interClusterMinIndex;
    double *ddx;
    unsigned int *ddxOrderIndex;
    unsigned int interLevelMinIndex;
    unsigned int minClusterSize;
    double maxClusterSpread;
    double minInterClusterDiff;
    double minInterLevel2ndDiff;
    unsigned int clusterCount;
    struct { unsigned int x0; double x1; double x2; double x3; } *xStats;
    unsigned int levels;
    struct { unsigned int x0; double x1; double x2; double x3; } *dxStats;
    BOOL ownData;
    BOOL ownDifferences;
}

+ (void)clusterTextLine:(id)a0;
+ (void)clusterTextLine:(id)a0 withCluster:(id)a1 atLevel:(unsigned int)a2 withMaximumWordGap:(double *)a3 andMaximumLetterGap:(double *)a4;
+ (unsigned int *)createOrderIndexFor:(double *)a0 ofSize:(unsigned int)a1;
+ (void)reclusterTextLine:(id)a0 fromWordIndex:(unsigned int)a1 count:(unsigned int *)a2;

- (id)init;
- (void)dealloc;
- (id)initWithProfile:(const struct { double x0; unsigned int x1; double x2; double x3; unsigned int x4; double x5; double x6; BOOL x7; double x8; double x9; double x10; double x11; double x12; double x13; double x14; double x15; double x16; double x17; double x18; BOOL x19; } *)a0;
- (void)dispose;
- (void)finalize;
- (void)analyzeDensities;
- (BOOL)applyDifferenceHints:(struct { unsigned int x0; double x1; double x2; double x3; } *)a0 count:(unsigned int)a1;
- (void)analyzeDifferences;
- (void)assembleDataStats;
- (void)assembleDensityDifferenceStats;
- (void)assembleDifferenceStats;
- (unsigned int)clusterCount;
- (struct { unsigned int x0; double x1; double x2; double x3; })clusterStatisticsAtIndex:(unsigned int)a0;
- (BOOL)coalesceFrom:(unsigned int)a0 to:(unsigned int)a1;
- (void)computeDataFromDifferences;
- (void)computeDifferencesFromData;
- (struct { unsigned int x0; double x1; double x2; double x3; })differenceClusterStatisticsAtIndex:(unsigned int)a0;
- (void)findClusters:(double *)a0 count:(unsigned int)a1;
- (void)findClustersFromCharacterSequence:(id)a0 withSpaceHint:(BOOL)a1;
- (void)findClustersFromDifferences:(double *)a0 count:(unsigned int)a1;
- (void)findDensityClusters:(double *)a0 count:(unsigned int)a1;
- (BOOL)joinClosestLevelPairFrom:(unsigned int)a0 to:(unsigned int)a1;
- (BOOL)joinLevelsFrom:(unsigned int)a0 to:(unsigned int)a1;
- (struct { unsigned int x0; double x1; double x2; double x3; })largestClusterStatistics;
- (unsigned int)levels;
- (void)makeWords:(struct { unsigned int x0; unsigned int x1; int x2; int x3; struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } x4; } *)a0 count:(unsigned int)a1 fromCharacterSequence:(id)a2 charOffset:(unsigned int)a3;
- (void)resetAnalysis;
- (void)setMaximumClusterSpread:(double)a0;
- (void)setMinimumClusterSize:(unsigned int)a0;
- (void)setMinimumRecognizedInterClusterDifference:(double)a0;
- (void)setMinimumRecognizedInterLevel2ndDifference:(double)a0;
- (BOOL)splitLevelAtIndex:(unsigned int)a0 betweenValue:(double)a1 andValue:(double)a2;
- (void)splitSecondDifferences;
- (void)tryLevel0SplitBetween:(double)a0 and:(double)a1 usingHints:(struct { unsigned int x0; double x1; double x2; double x3; } *)a2;

@end