luxlabs header browser preview


@class NSHashTable, NSString, NSThread, NSISObjectiveLinearExpression, _NSISVariableObservable, NSMutableDictionary, NSMutableArray, NSObject, NSISVariableObservation, NSMapTable, NSISVariable;
@protocol NSISEngineDelegate, NSObservable;

@interface NSISEngine : NSObject <NSISVariableDelegate> {
    NSMutableArray *_pendingRemovals;
    NSHashTable *_pendingMarkerDelegates;
    NSObject<NSObservable> *_variableChangeTransactionSignal;
    NSMapTable *_variableObservables;
    _NSISVariableObservable *_dirtyObservables;
    NSMapTable *_brokenConstraintPositiveErrors;
    NSMapTable *_brokenConstraintNegativeErrors;
    id /* block */ _unsatisfiabilityHandler;
    unsigned long long _pivotCount;
    unsigned long long _variableChangeCount;
    NSMutableDictionary *_recordedOperations;
    NSThread *_allowedBGThread;
    int _automaticOptimizationDisabledCount;
    int _engineDelegateCallsDisabledCount;
    int _variableDelegateCallsDisabledCount;
    unsigned int _totalChangeCount;
    unsigned int _changeCountAtLastOptimization;
    BOOL _accumulatingRemovals;
    BOOL _engineNeedsOptimization;
    BOOL _allowUnoptimizedReads;
    BOOL _optimizationInProgress;
    BOOL _accessedFromMainThread;
    BOOL _engineNeedsRebuildFromConstraints;
    BOOL _changeNotificationsDirty;
    struct NSISObjectTable { } *_variablesObservations;
    NSISVariableObservation *_dirtyVariableObservations;
    NSMapTable *_rows;
    struct { struct *blocks; unsigned long long blocksCount; unsigned long long blocksCapacity; struct { union { unsigned long long _data; unsigned long long *_buckets; } ; unsigned int _bucketCount; unsigned int _popCount; } freeIndexes; } _engineVarTable;
    struct { struct *blocks; unsigned long long blocksCount; unsigned long long blocksCapacity; struct { union { unsigned long long _data; unsigned long long *_buckets; } ; unsigned int _bucketCount; unsigned int _popCount; } freeIndexes; } _rowTables[2];
    struct { struct *blocks; unsigned long long blocksCount; unsigned long long blocksCapacity; struct { union { unsigned long long _data; unsigned long long *_buckets; } ; unsigned int _bucketCount; unsigned int _popCount; } freeIndexes; } _colTables[2];
    NSISVariable *_headForObjectiveRow;
    struct { NSISEngine *engine; struct *storage; } _objectiveRow;
    NSISVariable *_placeholderHeadForExpressionBeingAdded;
}

@property (class) BOOL enableEngineTrace;
@property (class, copy) NSString *traceFileSuffix;

@property (retain) NSMutableArray *variablesWithValueRestrictionViolations;
@property (retain) NSISVariable *artificialRowHead;
@property (retain) NSISVariable *artificialObjectiveRowHead;
@property (retain) NSISObjectiveLinearExpression *artificialObjectiveRowBody;
@property id<NSISEngineDelegate> delegate;
@property BOOL shouldIntegralize;
@property BOOL revertsAfterUnsatisfiabilityHandler;
@property (readonly) unsigned long long variableChangeCount;
@property (readonly, getter=isOptimizationInProgress) BOOL optimizationInProgress;
@property (nonatomic) struct CGSize { double width; double height; } engineScalingCoefficients;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (BOOL)_dbg_anyEngineContainsVariable:(id)a0;
+ (void)setLogOnInvalidUseFromBGThread:(BOOL)a0;

- (id)constraints;
- (id)init;
- (void)dealloc;
- (BOOL)nsis_valueOfVariableIsUserObservable:(id)a0;
- (int)nsis_orientationHintForVariable:(id)a0;
- (void)nsis_valueOfVariable:(id)a0 didChangeInEngine:(id)a1;
- (unsigned long long)rowCount;
- (void)verifyInternalIntegrity;
- (id)nsis_descriptionOfVariable:(id)a0;
- (id)candidateRedundantConstraints;
- (id)constraintsAffectingValueOfVariable:(id)a0;
- (BOOL)exerciseAmbiguityInVariable:(id)a0;
- (BOOL)hasValue:(double *)a0 forVariable:(id)a1;
- (BOOL)isObservingChangesForVariable:(id)a0;
- (id)observableForVariable:(id)a0;
- (void)performPendingChangeNotifications;
- (unsigned long long)pivotCount;
- (void)removeObservableForVariable:(id)a0;
- (void)startObservingChangesForVariable:(id)a0;
- (void)stopObservingChangesForVariable:(id)a0;
- (struct { unsigned long long x0; unsigned long long x1; unsigned int x2; unsigned int x3; unsigned int x4; struct *x5; } *)traceState;
- (double)valueForVariable:(id)a0;
- (BOOL)valueOfVariableIsAmbiguous:(id)a0;
- (void)withAutomaticOptimizationDisabled:(id /* block */)a0;
- (id)variableChangeTransactionSignal;
- (id)_brokenConstraintNegativeErrorsIfAvailable;
- (id)_brokenConstraintPositiveErrorsIfAvailable;
- (unsigned long long)_optimizeWithoutRebuilding;
- (void)addVariableToBeOptimized:(id)a0 priority:(double)a1;
- (id)allVariableValues;
- (void)beginBookkeepingForVariableIfNeeded:(id)a0;
- (void)beginRecording;
- (void)changeVariableToBeOptimized:(id)a0 fromPriority:(double)a1 toPriority:(double)a2;
- (unsigned long long)colCount;
- (void)constraintDidChangeSuchThatMarker:(id)a0 shouldBeReplacedByMarkerPlusDelta:(double)a1;
- (BOOL)containsConstraintWithMarker:(id)a0;
- (BOOL)containsVariable:(id)a0;
- (void)endBookkeepingForVariableIfUnused:(id)a0;
- (struct { unsigned int x0; })engineVarIndexForVariable:(id)a0;
- (void)enumerateRows:(id /* block */)a0;
- (BOOL)hasObservableForVariable:(id)a0;
- (BOOL)hasValue:(double *)a0 forExpression:(id)a1;
- (BOOL)hasValueForPossiblyDeallocatedVariable:(id)a0;
- (double)integralizationAdjustmentForMarker:(id)a0;
- (BOOL)isTrackingVariableChanges;
- (unsigned long long)optimize;
- (void)performModifications:(id /* block */)a0 withUnsatisfiableConstraintsHandler:(id /* block */)a1;
- (void)performPendingChangeNotificationsForItem:(id)a0;
- (id)recordedCommandsData;
- (void)removeConstraintWithMarker:(id)a0;
- (void)removeVariableToBeOptimized:(id)a0 priority:(double)a1;
- (unsigned long long)replayCommandsData:(id)a0 verifyingIntegrity:(BOOL)a1;
- (BOOL)tryToAddConstraintWithMarker:(id)a0 expression:(id)a1 integralizationAdjustment:(double)a2 mutuallyExclusiveConstraints:(id *)a3;
- (BOOL)tryToAddConstraintWithMarker:(id)a0 expression:(id)a1 mutuallyExclusiveConstraints:(id *)a2;
- (BOOL)tryToChangeConstraintSuchThatMarker:(id)a0 isReplacedByMarkerPlusDelta:(double)a1 undoHandler:(id /* block */)a2;
- (double)valueForExpression:(id)a0;
- (int)valueRestrictionForEngineVarIndex:(struct { unsigned int x0; })a0;
- (id)variableForEngineVarIndex:(struct { unsigned int x0; })a0;
- (void)withBehaviors:(unsigned long long)a0 performModifications:(id /* block */)a1;
- (void)withDelegateCallsDisabled:(id /* block */)a0;
- (void)withoutOptimizingAtEndRunBlockWithAutomaticOptimizationDisabled:(id /* block */)a0;

@end