<?xml version='1.0'?>
<!DOCTYPE signatures SYSTEM "file://localhost/System/Library/DTDs/BridgeSupport.dtd">
<signatures version='1.0'>
    <!-- Versions -->
    <constant name='SensingAlgsSupportVersionNumber' type='d'/>
    <!-- <constant name='SensingAlgsSupportVersionString' type='*'/>  Not working on python 2.7 -->
    <!-- Interface -->
    <constant name='SACurrentPlanId' type='C'/>
    <!-- Platforms -->
    <constant name='SAPlatformD6x1y' type='@'/>
    <constant name='SAPlatformD7x2y' type='@'/>
    <constant name='SAPlatformD8x3y' type='@'/>
    <constant name='SAPlatformJ171a' type='@'/>
    <constant name='SAPlatformJ181' type='@'/>
    <constant name='SAPlatformJ307' type='@'/>
    <constant name='SAPlatformJ517' type='@'/>
    <constant name='SAPlatformJ522' type='@'/>
    <constant name='SAPlatformTouchService' type='@'/>
    <constant name='SAPlatformD7xProx' type='@'/>
    <constant name='SAPlatformD8x3yProx' type='@'/>
    <constant name='SAPlatformGeneric' type='@'/>
    <constant name='SAPlatformTouch' type='@'/>
    <constant name='SAPlatformProx' type='@'/>
    <constant name='SAPlatformPBR' type='@'/>
    <constant name='SAPlatformJ61x' type='@'/>
    <constant name='SAPlatformJ62x' type='@'/>
    <constant name='SAPlatformJ507' type='@'/>
    <constant name='SAPlatformJ537' type='@'/>
    <constant name='SAPlatformJ508' type='@'/>
    <constant name='SAPlatformJ538' type='@'/>
    <constant name='SAPlatformJ41x' type='@'/>
    <constant name='SAPlatformJ71x' type='@'/>
    <constant name='SAPlatformJ72x' type='@'/>

    <!-- Transports -->
    <constant name='SATransportHID' type='@'/>
    <constant name='SATransportMultitouch' type='@'/>
    <constant name='SATransportBinaryFilter' type='@'/>
    <!-- Controls -->
    <constant name='SAControlSurfaceDescriptor' type='@'/>
    <constant name='SAControlInterpolation' type='@'/>
    <constant name='SAControlEventInfo' type='@'/>
    <constant name='SAControlOrientation' type='@'/>
    <constant name='SAControlProxState' type='@'/>
    <constant name='SAControlInputDetection' type='@'/>
    <constant name='SAControlStockholmState' type='@'/>
    <constant name='SAControlWirelessCharging' type='@'/>
    <!-- Phone controls -->
    <constant name='SAPhoneControlBaselining' type='@'/>
    <constant name='SAPhoneControlForceBaseline' type='@'/>
    <constant name='SAPhoneControlUniformityMap' type='@'/>
    <constant name='SAPhoneControlInitialUniformScaling' type='@'/>
    <constant name='SAPhoneControlInitialCmUniformScaling' type='@'/>
    <constant name='SAPhoneControlNoiseRemovalMcShapes' type='@'/>
    <constant name='SAPhoneControlNoiseRemovalCmShapes' type='@'/>
    <constant name='SAPhoneControlUsingDefaultDGFSCal' type='@'/>
    <constant name='SAPhoneControlUsingDefaultADTNCal' type='@'/>
    <constant name='SAPhoneControlCrossCouplingRemoval' type='@'/>
    <!-- D6x controls -->
    <constant name='SAD6xControlBaselining' type='@'/>
    <constant name='SAD6xControlForceBaseline' type='@'/>
    <constant name='SAD6xControlUniformityMap' type='@'/>
    <constant name='SAD6xControlInitialUniformScaling' type='@'/>
    <constant name='SAD6xControlInitialCmUniformScaling' type='@'/>
    <constant name='SAD6xControlNoiseRemovalMcShapes' type='@'/>
    <constant name='SAD6xControlNoiseRemovalCmShapes' type='@'/>
    <constant name='SAD6xControlUsingDefaultDGFSCal' type='@'/>
    <constant name='SAD6xControlUsingDefaultADTNCal' type='@'/>
    <!-- PBR controls -->
    <constant name='SAPbrControlBaselining' type='@'/>
    <constant name='SAPbrControlBaselineAdaptation' type='@'/>
    <constant name='SAPbrControlAdapterNoise' type='@'/>
    <constant name='SAPbrControlFakePbr' type='@'/>
    <constant name='SAPbrControlDephaseAngle' type='@'/>
    <constant name='SAPbrControlBlooming' type='@'/>
    <constant name='SAPbrControlGHFilter' type='@'/>
    <constant name='SAPbrControlKona2H' type='@'/>
    <constant name='SAPbrControlPreCLDPBaselining' type='@'/>
    <constant name='SAPbrControlFLCMCorrection' type='@'/>
    <constant name='SAPbrControlCalblobErr' type='@'/>
    <!-- Pad node IDs -->
    <constant name='SAFireflyActiveProcessingPlanNode' type='@'/>
    <!-- Pad controls -->
    <constant name='SAPadControlFireflyJointNpcLcmStep' type='@'/>
    <constant name='SAPadControlFireflyBloomingStep' type='@'/>
    <constant name='SAPadControlFireflyPathCuratingStepGh' type='@'/>
    <constant name='SAPadControlFireflyXYMeasurementStepWobbleCorr' type='@'/>
    <constant name='SAPadControlFireflyPathCuratingStepMtdo' type='@'/>
    <constant name='SAPadControlFireflyPathCuratingStepTiltCorr' type='@'/>
    <constant name='SAPadControlFireflyPathCuratingStepZtotCorr' type='@'/>
    <constant name='SAPadControlCalblobErr' type='@'/>
    <!-- Pad MTP controls -->
    <constant name='SAPadMTPControlNegPixelCompStep' type='@'/>
    <constant name='SAPadMTPControlBloomingStep' type='@'/>
    <constant name='SAPadMTPControlBaselineStep' type='@'/>
    <constant name='SAPadMTPControlPathCuratingStep' type='@'/>
    <constant name='SAPadMTPControlEsdDetectStep' type='@'/>
    <constant name='SAPadMTPControlMtdoEnabled' type='@'/>
    <constant name='SAPadMTPControlCornerGainEnabled' type='@'/>
    <constant name='SAPadMTPControlFwGainDriveEnabled' type='@'/>
    <constant name='SAPadMTPControlCalError' type='@'/>
    <!-- Pad MTP contents -->
    <constant name='SAPadMTPContentNegPixelCompTouchSums' type='@'/>
    <constant name='SAPadMTPContentNegPixelCompTouchImages' type='@'/>
    <constant name='SAPadMTPContentEsd' type='@'/>
    <constant name='SAPadMTPContentTouchSurfaceDescriptor' type='@'/>
    <constant name='SAPadMTPContentBloomingImages' type='@'/>
    <constant name='SAPadMTPContentBaseline' type='@'/>
    <constant name='SAPadMTPContentInputPreprocess' type='@'/>
    <constant name='SAPadMTPContentFireflyInputs' type='@'/>
    <!-- J6xx controls -->
    <constant name='SAPadControlHoverEnabled' type='@'/>
    <constant name='SAPadControlHoverAlgsForced' type='@'/>
    <constant name='SAPadControlHoverTiltCorrected' type='@'/>
    <constant name='SAPadControlHoverLinearityMitigated' type='@'/>
    <!-- Atlantis controls -->
    <constant name='SAAtlantisControlSensorFusion' type='@'/>
    <!-- TouchService controls -->
    <constant name='SATouchServiceControlQuantizationDPI' type='@'/>
    <!-- Global contents -->
    <constant name='SAContentDefault' type='@'/>
    <constant name='SAContentAll' type='@'/>
    <constant name='SAContentNone' type='@'/>
    <constant name='SAContentExtraInjections' type='@'/>
    <constant name='SAContentExtraExtractions' type='@'/>
    <constant name='SAContentInputs' type='@'/>
    <constant name='SAContentOutputs' type='@'/>
    <constant name='SAContentPaths' type='@'/>
    <constant name='SAContentConditioned' type='@'/>
    <constant name='SAContentStats' type='@'/>
    <constant name='SAContentProfile' type='@'/>
    <constant name='SAContentDebug' type='@'/>
    <constant name='SAContentFeatures' type='@'/>
    <!-- TouchService contents -->
    <constant name='SATouchServiceContentHand' type='@'/>
    <constant name='SATouchServiceContentFingers' type='@'/>
    <constant name='SATouchServiceContentEventInfo' type='@'/>
    <constant name='SATouchServiceContentInterpolatedHand' type='@'/>
    <constant name='SATouchServiceContentInterpolatedFingers' type='@'/>
    <constant name='SATouchServiceContentInterpolatedEventInfo' type='@'/>
    <constant name='SATouchServiceContentTTWTap' type='@'/>
    <!-- Atlantis contents -->
    <constant name='SAAtlantisFusionOutput' type='@'/>
    <!-- Phone contents -->
    <constant name='SAPhoneContentConditionedImage' type='@'/>
    <constant name='SAPhoneContentConditionedVector' type='@'/>
    <constant name='SAPhoneContentTTWConditionedImage' type='@'/>
    <constant name='SAPhoneContentTTWResults' type='@'/>
    <constant name='SAPhoneContentTTWStats' type='@'/>
    <!-- D6x contents -->
    <constant name='SAD6xContentConditionedImage' type='@'/>
    <constant name='SAD6xContentConditionedVector' type='@'/>
    <constant name='SAD6xContentTTWConditionedImage' type='@'/>
    <constant name='SAD6xContentTTWResults' type='@'/>
    <constant name='SAD6xContentTTWStats' type='@'/>
    <!-- PBR contents -->
    <constant name='SAPbrContentAdaptorState' type='@'/>
    <constant name='SAPbrContentScanMetaDataExt' type='@'/>
    <constant name='SAPbrContentTouchSumExt' type='@'/>
    <constant name='SAPbrContentPostScaling' type='@'/>
    <constant name='SAPbrContentPostKona2h' type='@'/>
    <constant name='SAPbrContentPostBaselineSub' type='@'/>
    <constant name='SAPbrContentDenoisedBaselineSub' type='@'/>
    <constant name='SAPbrContentBaselines' type='@'/>
    <constant name='SAPbrContentCLPDSumRGB' type='@'/>
    <constant name='SAPbrContentCLDPSubtractRGB' type='@'/>
    <constant name='SAPbrContentPreCnr' type='@'/>
    <constant name='SAPbrContentCleaned' type='@'/>
    <constant name='SAPbrContentBaselined' type='@'/>
    <constant name='SAPbrContentEstimateShapeDtn' type='@'/>
    <constant name='SAPbrContentPostBlooming' type='@'/>
    <constant name='SAPbrContentPatchInfo' type='@'/>
    <constant name='SAPbrContentCoarseLocDephase' type='@'/>
    <constant name='SAPbrContentUguStatus' type='@'/>
    <constant name='SAPbrContentMakeBreak' type='@'/>
    <!-- Firefly Only contents -->
    <constant name='SAPadFireflyOnlyContentHoverPre' type='@'/>
    <constant name='SAPadFireflyOnlyContentHoverDetection' type='@'/>
    <constant name='SAPadFireflyOnlyContentHoverInitialConditions' type='@'/>
    <constant name='SAPadFireflyOnlyContentHoverRefinement' type='@'/>
    <constant name='SAPadFireflyOnlyContentHoverTransitioning' type='@'/>
    <constant name='SAPadFireflyOnlyContentHoverPathFiltering' type='@'/>
    <constant name='SAPadFireflyOnlyContentHoverDeprecated' type='@'/>
    <!-- PadHostService controls -->
    <constant name='SAPadHostServiceControlNegPixelCompStep' type='@'/>
    <constant name='SAPadHostServiceControlBloomingStep' type='@'/>
    <constant name='SAPadHostServiceControlGhEnabled' type='@'/>
    <constant name='SAPadHostServiceControlWobbleCorrection' type='@'/>
    <constant name='SAPadHostServiceControlMtdoEnabled' type='@'/>
    <constant name='SAPadHostServiceControlTiltCorr' type='@'/>
    <constant name='SAPadHostServiceControlZtotCorr' type='@'/>
    <constant name='SAPadHostServiceControlCalError' type='@'/>
    <constant name='SAPadHostServiceControlQuantizationDPI' type='@'/>
    <constant name='SAPadCommonControlHoverEnabled' type='@'/>
    <constant name='SAPadCommonHoverAlgsForced' type='@'/>
    <!-- PadHostService contents -->
    <constant name='SAPadHostServiceContentFireflyTaskInputs' type='@'/>
    <constant name='SAPadHostServiceContentFireflyInputs' type='@'/>
    <constant name='SAPadHostServiceContentFireflyTaskOutputs' type='@'/>
    <constant name='SAPadHostServiceContentFireflyEventInfo' type='@'/>
    <constant name='SAPadHostServiceContentFireflyEventGeneration' type='@'/>
    <constant name='SAPadHostServiceContentTouchTaskInputs' type='@'/>
    <constant name='SAPadHostServiceContentTouchTaskOutputs' type='@'/>
    <constant name='SAPadHostServiceContentPlanImages' type='@'/>
    <constant name='SAPadHostServiceContentTransferImage' type='@'/>
    <constant name='SAPadHostServiceContentNpc' type='@'/>
    <constant name='SAPadHostServiceContentBlooming' type='@'/>
    <!-- SAStats keys -->
    <constant name='kSAStatWindow' type='@'/>
    <constant name='kSAStatAverage' type='@'/>
    <constant name='kSAStatStddev' type='@'/>
    <constant name='kSAStatMax' type='@'/>
    <constant name='kSAStatMaxRow' type='@'/>
    <constant name='kSAStatMaxCol' type='@'/>
    <constant name='kSAStatMin' type='@'/>
    <constant name='kSAStatMinRow' type='@'/>
    <constant name='kSAStatMinCol' type='@'/>
    <!-- SAPbrAFESettingsSource -->
    <enum name='SAPbrAFESettingsFromCalibration' value='0'/>
    <enum name='SAPbrAFESettingsFromDefaults' value='1'/>
    <enum name='SAPbrAFESettingsModifiedViaReport' value='2'/>
    <enum name='SAPbrAFESettingsUnknown' value='3'/>
    <enum name='SAPbrAFESettingsUnavailable' value='255'/>
    <!-- SAPbrBaselineContentType -->
    <enum name='SAPbrBaselineContentNone' value='0'/>
    <enum name='SAPbrBaselineContentForAdaptation' value='-1'/>
    <enum name='SAPbrBaselineContentForAdaptationOnly' value='-2'/>
    <enum name='SAPbrBaselineContentTypeUnavailable' value='-128'/>
    <!-- SAPbrCalError -->
    <enum name='SAPbrCalErrorNone' value='0'/>
    <enum name='SAPbrCalErrorVersion' value='1'/>
    <enum name='SAPbrCalErrorDeprecated' value='2'/>
    <enum name='SAPbrCalErrorMagic' value='4'/>
    <enum name='SAPbrCalErrorChecksum' value='8'/>
    <enum name='SAPbrCalErrorMissingCal' value='255'/>
    <!-- SARecordingType -->
    <enum name='SARecordingTypeInvalid' value='0'/>
    <enum name='SARecordingTypeBinary' value='1'/>
    <enum name='SARecordingTypePlist' value='2'/>
    <enum name='SARecordingTypeMovie' value='3'/>
    <!-- SAStatsType -->
    <enum name='SAStatsTypeNone' value='0'/>
    <enum name='SAStatsTypeAverage' value='1'/>
    <enum name='SAStatsTypeStddev' value='2'/>
    <!-- SALogTrigger -->
    <enum name='SALogTriggerTimestamp' value='0'/>
    <enum name='SALogTriggerImage' value='1'/>
    <!-- Classes -->
    <class name='SAInterface'>
        <method selector='setFrameAction:'>
            <arg index='0' function_pointer='true'>
                <arg index='0' type='^v'/>
                <arg index='1' type='@'/>
            </arg>
        </method>
        <method selector='setFrameFilter:'>
            <arg index='0' function_pointer='true'>
                <arg index='0' type='^v'/>
                <arg index='1' type='@'/>
                <retval type='@'/>
            </arg>
        </method>
        <method selector='startWithRunLoop:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='startWithRunLoop:reset:planId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='startWithQueue:reset:planId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='startWithRunLoop:reset:planId:configDefault:error:'>
            <arg index='4' type_modifier='o'/>
        </method>
        <method selector='startWithQueue:reset:planId:configDefault:error:'>
            <arg index='4' type_modifier='o'/>
        </method>
        <method selector='startWithRunLoop:reset:planId:streamInjection:extractionPoints:error:'>
            <arg index='5' type_modifier='o'/>
        </method>
        <method selector='startWithQueue:reset:planId:streamInjection:extractionPoints:error:'>
            <arg index='5' type_modifier='o'/>
        </method>
        <method selector='stop:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='stopWithTimeout:error:block:'>
            <arg index='1' type_modifier='o'/>
            <arg index='2' function_pointer='true'>
                <arg index='0' type='^v'/>
                <retval type='B'/>
            </arg>
        </method>
        <method selector='requestReset:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='sendFrame:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='configureStreaming:extractionPoints:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='requestInfo:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='requestTreeInfo:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='run:injectionData:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='injExt:extractionPoints:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='injectAndVerify:size:packetType:workNodeId:dataNodeId:isPrologue:error:'>
            <arg index='6' type_modifier='o'/>
        </method>
        <method selector='injectAndVerify:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='extractAndVerify:size:packetType:workNodeId:dataNodeId:isPrologue:error:'>
            <arg index='6' type_modifier='o'/>
        </method>
        <method selector='extractAndVerify:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='extract:packetType:point:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='extract:packetType:point:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='setBool:workNodeId:dataNodeId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='getBool:workNodeId:dataNodeId:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='3' type_modifier='o'/>
        </method>
    </class>
    <class name='SALibraryInterface'>
        <method selector='initWithPath:platformId:personalityId:maxFrameSize:error:'>
            <arg index='4' type_modifier='o'/>
        </method>
    </class>
    <class name='SADevice'>
        <method selector='setFrameAction:'>
            <arg index='0' function_pointer='true'>
                <arg index='0' type='^v'/>
                <arg index='1' type='@'/>
            </arg>
        </method>
        <method selector='initWithAIDHIDDeviceManager:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='initWithMTDeviceManager:asBinaryFilter:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='initWithLibrary:platformId:personalityId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='initWithLibrary:platform:personalityId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='startWithRunLoop:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='startWithRunLoop:reset:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='startWithQueue:reset:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='startWithRunLoop:reset:planId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='startWithRunLoop:play:prePlayReports:postPlayReports:error:'>
            <arg index='4' type_modifier='o'/>
        </method>
        <method selector='startWithQueue:reset:planId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='stop:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='stopWithTimeout:error:block:'>
            <arg index='1' type_modifier='o'/>
            <arg index='2' function_pointer='true'>
                <arg index='0' type='^v'/>
                <retval type='B'/>
            </arg>
        </method>
        <method selector='setControl:defaults:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='printControl:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='printTo:withControl:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='getControl:data:error:'>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='getControl:dict:error:'>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='setControl:payload:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='setControl:dict:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='setPoint:type:payload:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='getPoint:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setBoolControl:value:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='getBoolControl:value:error:'>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='setControls:request:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='getControls:request:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='detectFrameDrop:frameDropInfo:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='detectFrameDrop:frameDropInfo:context:' class_method='true'>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='N'/>
        </method>
        <method selector='deviceClassForPlatform:hwModel:name:error:' class_method='true'>
            <arg index='2' type_modifier='o'/>
            <arg index='3' type_modifier='o'/>
        </method>
    </class>
    <class name='SADeviceFrame'>
        <method selector='contentsToInjExtConfig:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
    </class>
    <class name='SARecording'>
        <method selector='initWithFile:type:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='initWithFile:type:platformId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='initWithBinaryData:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='initWithFrames:info:'/>
        <method selector='initWithInfo:'/>
        <method selector='initWithInfo:startTimestamp:'/>
        <method selector='playIntoInterface:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='playIntoInterface:rate:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='playIntoInterface:rate:withRange:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='playIntoInterface:rate:withRange:stripExtractions:error:'>
            <arg index='4' type_modifier='o'/>
        </method>
        <method selector='findResetFrame:count:'>
            <arg index='0' type_modifier='o'/>
        </method>
    </class>
    <class name='SARecordingWriter'>
        <method selector='initWithFile:type:interface:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='initWithFile:type:info:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='initWithFile:type:recording:copyFrames:error:'>
            <arg index='4' type_modifier='o'/>
        </method>
        <method selector='initWithFile:type:interface:startTimestamp:error:'>
            <arg index='4' type_modifier='o'/>
        </method>
        <method selector='initWithFile:type:info:startTimestamp:error:'>
            <arg index='4' type_modifier='o'/>
        </method>
        <method selector='initWithFile:type:recording:copyFrames:startTimestamp:error:'>
            <arg index='5' type_modifier='o'/>
        </method>
        <method selector='addFrame:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='addFrameBytes:length:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='addFrameData:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='addEntry:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='addAnnotation:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='close:'>
            <arg index='0' type_modifier='o'/>
        </method>
    </class>
    <class name='SAFrameBase'>
        <method selector='writeFrame:size:'>
            <arg index='1' type_modifier='N'/>
        </method>
    </class>
    <class name='SAPhoneDevice'>
        <method selector='setBaseliningEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getBaseliningEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setForceBaselineCaptureEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getForceBaselineCaptureEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getUniformityMap:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getInitialUniformScalingParams:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getInitialCmUniformScalingParams:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getNoiseRemovalMcShapes:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getNoiseRemovalCmShapes:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getIsUsingDefaultDGFSCal:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getIsUsingDefaultADTNCal:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getSurfaceDescriptor:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getInterpolationParams:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getEventInfoParams:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getOrientation:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getProxState:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getStockholmState:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getWirelessChargingState:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getInputDetection:'>
            <arg index='0' type_modifier='o'/>
        </method>
    </class>
    <class name='SAD7xDevice'>
        <method selector='setCrossCouplingRemovalEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getCrossCouplingRemovalEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
    </class>
    <class name='SAD8xDevice'>
        <method selector='setCrossCouplingRemovalEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getCrossCouplingRemovalEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getInitialBaselineCaptureTimeoutState:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
    </class>
    <class name='SAPadDevice'>
        <method selector='setFireflyJointNpcLcmStepEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyJointNpcLcmStepEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyBloomingStepEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyBloomingStepEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyPathCuratingStepGhEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyPathCuratingStepGhEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyXYMeasurementStepWobbleCorrEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyXYMeasurementStepWobbleCorrEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyPathCuratingStepMtdoEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyPathCuratingStepMtdoEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyPathCuratingStepTiltCorrEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyPathCuratingStepTiltCorrEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyPathCuratingStepZtotCorrEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyPathCuratingStepZtotCorrEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getCalError:p100:mtdo:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
            <arg index='3' type_modifier='o'/>
        </method>
    </class>
    <class name='SAFireflyOnlyDevice'>
        <method selector='setHoverEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getHoverEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setHoverAlgsForced:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getHoverAlgsForced:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
    </class>
    <class name='SATouchServiceDevice'>
        <method selector='getSurfaceDescriptor:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getInterpolationParams:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getEventInfoParams:'>
            <arg index='0' type_modifier='o'/>
        </method>
        <method selector='getOrientation:'>
            <arg index='0' type_modifier='o'/>
        </method>
    </class>
    <class name='SAPbrDevice'>
        <method selector='setBaseliningEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getBaseliningEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setBaselineAdaptation:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getBaselineAdaptation:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setAdapterNoiseEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getAdapterNoiseEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFakePbrForCNR:row:col:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='getFakePbrForCNR:row:col:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='setDephaseAngle:x:y:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='getDephaseAngle:x:y:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='setBloomingTxEnabled:rxEnabled:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='getBloomingTxEnabled:rxEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='setGHFilterEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getGHFilterEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setKona2HEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getKona2HEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setPreCLDPStaticBaselineRealEnabled:imagEnabled:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='getPreCLDPStaticBaselineRealEnabled:imagEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='setFLCMCorrectionDisabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFLCMCorrectionDisabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getCalError:fullScale:touch:mtdo:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
            <arg index='3' type_modifier='o'/>
            <arg index='4' type_modifier='o'/>
        </method>
    </class>
    <class name='SAPadMTPDevice'>
        <method selector='setNpcEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getNpcEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setBloomingEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getBloomingEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setBaselineAdaptEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getBaselineAdaptEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setGHFilterEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getGHFilterEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setEsdDetectEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getEsdDetectEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setMtdoEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getMtdoEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setCornerGainEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getCornerGainEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFwGainDriveEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFwGainDriveEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getCalError:mtdo:ptw:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
            <arg index='3' type_modifier='o'/>
        </method>
    </class>
    <class name='SAPadHostServiceDevice'>
        <method selector='setFireflyJointNpcLcmStepEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyJointNpcLcmStepEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyBloomingStepEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyBloomingStepEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyPathCuratingStepGhEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyPathCuratingStepGhEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyXYMeasurementStepWobbleCorrEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyXYMeasurementStepWobbleCorrEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyPathCuratingStepMtdoEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyPathCuratingStepMtdoEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyPathCuratingStepTiltCorrEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyPathCuratingStepTiltCorrEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setFireflyPathCuratingStepZtotCorrEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getFireflyPathCuratingStepZtotCorrEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setQuantizationDPI:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getQuantizationDPI:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getCalError:affc:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='setHoverEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getHoverEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setHoverAlgsForced:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getHoverAlgsForced:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
    </class>
    <class name='SAAtlantisDevice'>
        <method selector='setSensorFusionEnabled:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='getSensorFusionEnabled:error:'>
            <arg index='0' type_modifier='o'/>
            <arg index='1' type_modifier='o'/>
        </method>
    </class>
    <class name='SAPrinter'>
        <method selector='appendFormat:' variadic='true'>
            <arg index='0' printf_format='true'/>
        </method>
    </class>
    <class name='SALibrary'>
        <method selector='initWithPath:platformId:personalityId:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
    </class>
    <class name='SALibraryPlayer'>
        <method selector='initWithRecording:libraryPath:error:'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='playRecording:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='playRecording:withRange:injExtConfig:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
        <method selector='configInjExt:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='playRecordingEntry:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='playRecordingEntry:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setPreFilter:'>
            <arg index='0' function_pointer='true'>
                <arg index='0' type='^v'/>
                <arg index='1' type='@'/>
                <retval type='@'/>
            </arg>
        </method>
        <method selector='setPostFilter:'>
            <arg index='0' function_pointer='true'>
                <arg index='0' type='^v'/>
                <arg index='1' type='@'/>
                <retval type='@'/>
            </arg>
        </method>
    </class>
    <class name='SARecordingAnnotator'>
        <method selector='sendAnnotation:error:' class_method='true'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='sendAnnotations:socketPath:error:' class_method='true'>
            <arg index='2' type_modifier='o'/>
        </method>
        <method selector='startWithRunLoop:error:'>
            <arg index='1' type_modifier='o'/>
        </method>
        <method selector='setAnnotationAction:'>
            <arg index='0' function_pointer='true'>
                <arg index='0' type='^v'/>
                <arg index='1' type='@'/>
            </arg>
        </method>
    </class>
    <class name='SAAndromedaLogProcessor'>
        <method selector='process:outputFile:trigger:error:'>
            <arg index='3' type_modifier='o'/>
        </method>
    </class>
</signatures>
