luxlabs header browser preview


@class NSObject, NSArray, NSMutableDictionary, CMIOExtensionDiscoverySession, NSMutableArray, BWFigCaptureDeviceClient;
@protocol OS_dispatch_queue, OS_dispatch_source, OS_os_transaction;

@interface BWFigCaptureDeviceVendor : NSObject {
    void /* function */ *_defaultDeviceCreateFunction;
    void /* function */ *_cmioExtensionDeviceCreateFunction;
    NSMutableDictionary *_devicesStatesByDeviceID;
    NSMutableArray *_registeredDeviceClients;
    BWFigCaptureDeviceClient *_activeDeviceClient;
    NSMutableArray *_victimizedDeviceClients;
    NSObject<OS_dispatch_queue> *_deviceQueue;
    NSObject<OS_dispatch_source> *_defaultDeviceOpenTimer;
    double _deviceCloseTimeoutSeconds;
    NSObject<OS_dispatch_queue> *_notificationQueue;
    NSObject<OS_os_transaction> *_activeForClientAssertion;
    NSMutableDictionary *_cameraPoseMatricesByPortTypeByDeviceID;
    CMIOExtensionDiscoverySession *_cmioDiscoverySession;
    unsigned long long _osStateHandle;
    NSMutableArray *_deviceCreationHistory;
}

@property (readonly, nonatomic) NSArray *deviceIDs;
@property (readonly) int activeDeviceClientPriority;
@property (readonly) BOOL cameraCalibrationValid;

+ (void)initialize;
+ (id)sharedCaptureDeviceVendor;
+ (BOOL)videoCaptureDeviceFirmwareIsLoaded;

- (id)registeredDeviceClientWithID:(int)a0;
- (void)shutDownSystemPressuredDevice:(id)a0;
- (id)copyDeviceWithID:(id)a0 forClient:(int)a1 informClientWhenDeviceAvailableAgain:(BOOL)a2 error:(int *)a3;
- (void)dealloc;
- (int)registerClientWithPID:(int)a0 clientApplicationID:(id)a1 clientDescription:(id)a2 clientPriority:(int)a3 canStealFromClientsWithSamePriority:(BOOL)a4 deviceSharingWithOtherClientsAllowed:(BOOL)a5 deviceAvailabilityChangedHandler:(id /* block */)a6;
- (int)usageCountForDevice:(id)a0;
- (int)keepControlOfStreamsWithPositions:(id)a0 deviceTypes:(id)a1 forDevice:(id)a2;
- (void)invalidateVideoDevice:(id)a0 forPID:(int)a1;
- (void)resumeSystemPressuredDevice;
- (id)initWithDefaultDeviceCreateFunction:(void /* function */ *)a0 cmioExtensionDeviceCreateFunction:(void /* function */ *)a1 cmioDiscoverySession:(id)a2;
- (BOOL)activeDeviceEquals:(id)a0;
- (id)copyStreamsWithPositions:(id)a0 deviceTypes:(id)a1 forDevice:(id)a2 error:(int *)a3;
- (id)copyStreamForFlashlightWithPosition:(int)a0 deviceType:(int)a1 forDevice:(id)a2;
- (int)unregisterClient:(int)a0;
- (id)activeDeviceClient;
- (void)takeBackStreams:(id)a0 device:(id)a1;
- (int)requestControlOfStreams:(id)a0 device:(id)a1;
- (id)initWithDefaultDeviceCreateFunction:(void /* function */ *)a0;
- (id)registeredDeviceClients;
- (id)_copyStreamsWithPositions:(id)a0 deviceTypes:(id)a1 allowsStreamControlLoss:(BOOL)a2 forDevice:(id)a3 requestControl:(BOOL)a4 error:(int *)a5;
- (id)copyStreamsWithUniqueIDs:(id)a0 forDevice:(id)a1 error:(int *)a2;
- (id)copyStreamWithPosition:(int)a0 deviceType:(int)a1 allowsStreamControlLoss:(BOOL)a2 forDevice:(id)a3 error:(int *)a4;
- (id)_deviceWithID:(id)a0;
- (void)prewarmDefaultVideoDeviceForPID:(int)a0 completionHandler:(id /* block */)a1;
- (id)deviceWithID:(id)a0;
- (int)registerClientWithPID:(int)a0 clientDescription:(id)a1 clientPriority:(int)a2 canStealFromClientsWithSamePriority:(BOOL)a3 deviceSharingWithOtherClientsAllowed:(BOOL)a4 deviceAvailabilityChangedHandler:(id /* block */)a5;
- (id)victimizedDeviceClients;
- (id)cameraPoseMatrixForStreamWithPosition:(int)a0 deviceType:(int)a1 deviceID:(id)a2;
- (id)copyStreamWithPosition:(int)a0 deviceType:(int)a1 forDevice:(id)a2 error:(int *)a3;
- (void)_handleCMIOExtensionDevicesChangedNotification:(id)a0;
- (float)structuredLightProjectorStandbyTemperatureWithError:(int *)a0;
- (id)copyStreamWithoutControlWithPosition:(int)a0 deviceType:(int)a1 forDevice:(id)a2;
- (void)takeBackDevice:(id)a0 forClient:(int)a1 informClientWhenDeviceAvailableAgain:(BOOL)a2;
- (id)copyDeviceForClient:(int)a0 informClientWhenDeviceAvailableAgain:(BOOL)a1 error:(int *)a2;
- (BOOL)streamsInUseForDevice:(id)a0;
- (id)copyDeviceForPublishingWithID:(id)a0 error:(int *)a1;

@end