luxlabs header browser preview


@class BKSApplicationStateMonitor, NSMutableDictionary, NSObject;
@protocol OS_dispatch_queue;

@interface _GCHapticServerManager : NSObject {
    unsigned long long _nextClientID;
    unsigned long long _tickCount;
    float _tickLengthSeconds;
    BOOL _running;
    BOOL _idle;
    unsigned long long _channelID;
    NSObject<OS_dispatch_queue> *queue;
    NSMutableDictionary *_logicalHapticDevices;
    NSMutableDictionary *_clientInvalidationHandlers;
    NSMutableDictionary *_hapticPlayers;
    BKSApplicationStateMonitor *_appMonitor;
}

@property (retain, nonatomic) NSMutableDictionary *clients;
@property (nonatomic) BOOL activeEvents;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *runloopQueue;

+ (id)sharedInstance;

- (id)init;
- (void)dealloc;
- (void).cxx_destruct;
- (id)__onqueue_reserveChannels:(unsigned long long)a0 forClient:(id)a1;
- (BOOL)acceptNewConnection:(id)a0 fromHapticsEnabledApp:(id)a1;
- (void)enterRunloop;
- (void)hapticClientProxyInitialized:(id)a0;
- (void)identifyCompletedClients;
- (void)logicalDeviceWasUnregistered:(id)a0;
- (void)notifyPlayerNoLongerRetained:(id)a0;
- (BOOL)playersHaveImpendingCommandsForStartTime:(double)a0 endTime:(double)a1;
- (void)processActiveEventsForStartTime:(double)a0 endTime:(double)a1;
- (void)processScheduledCommandsForStartTime:(double)a0 endTime:(double)a1;
- (BOOL)readClientDataForStartTime:(double)a0 endTime:(double)a1;
- (void)readListCommand:(struct HapticCommand { struct MessageHeader { unsigned short x0; unsigned short x1; } x0; unsigned int x1; double x2; unsigned long long x3; unsigned long long x4; union { struct TokenAndParams { unsigned long long x0; struct ItemList<FixedParam, 8> { unsigned int x0; struct FixedParam { unsigned int x0; float x1; } x1[8]; } x1; } x0; struct SequenceChannelParam { unsigned long long x0; unsigned long long x1; float x2; } x1; struct SequenceParam { unsigned short x0; float x1; } x2; float x3; double x4; struct ItemList<ParamPoint, 16> { unsigned int x0; struct ParamPoint { float x0; float x1; } x1[16]; } x5; } x5; })a0 client:(id)a1 renderTime:(double)a2;
- (void)readParamCurveListCommand:(struct HapticCommand { struct MessageHeader { unsigned short x0; unsigned short x1; } x0; unsigned int x1; double x2; unsigned long long x3; unsigned long long x4; union { struct TokenAndParams { unsigned long long x0; struct ItemList<FixedParam, 8> { unsigned int x0; struct FixedParam { unsigned int x0; float x1; } x1[8]; } x1; } x0; struct SequenceChannelParam { unsigned long long x0; unsigned long long x1; float x2; } x1; struct SequenceParam { unsigned short x0; float x1; } x2; float x3; double x4; struct ItemList<ParamPoint, 16> { unsigned int x0; struct ParamPoint { float x0; float x1; } x1[16]; } x5; } x5; })a0 client:(id)a1;
- (void)removeHapticClient:(id)a0;
- (void)scheduleCommand:(const void *)a0;
- (void)spawnInputThread;

@end