luxlabs header browser preview


@protocol MTLComputePipelineState, MTLDevice, MTLBuffer, MTLLibrary, MTLCommandQueue, MTLFunction;

@interface MetalRANSACDispatcher : NSObject

@property (retain, nonatomic) id<MTLDevice> m_metalDevice;
@property (retain, nonatomic) id<MTLLibrary> m_metalLibrary;
@property (retain, nonatomic) id<MTLCommandQueue> m_metalCommandQueue;
@property (retain, nonatomic) id<MTLFunction> m_metalKernelFunction;
@property (retain, nonatomic) id<MTLComputePipelineState> m_metalPipeline;
@property (nonatomic) unsigned long long m_numThreadsPerGroup;
@property (nonatomic) unsigned long long m_maxCorrespondences;
@property (retain, nonatomic) id<MTLBuffer> m_mX;
@property (retain, nonatomic) id<MTLBuffer> m_mXhat;
@property (retain, nonatomic) id<MTLBuffer> m_ScoreBuffer;
@property (retain, nonatomic) id<MTLBuffer> m_RansacParams;
@property (retain, nonatomic) id<MTLBuffer> m_RansacHomographies;
@property (retain, nonatomic) id<MTLBuffer> m_ModelScores;
@property (nonatomic) float inlierLimit;
@property (nonatomic) struct CGSize { double width; double height; } frameSize;

- (void).cxx_destruct;
- (void)assureSizeAndCopyToMetalBuffer:(id *)a0 fromData:(const void *)a1 dataSize:(unsigned long long)a2 metalResourceOptions:(unsigned long long)a3;
- (id)initWithMaxCorrespondences:(unsigned long long)a0;
- (void)performRansacOnData:(unsigned int)a0 firstPointSet:(const float *)a1 secondPointSet:(const float *)a2 pointWeights:(const float *)a3 homographies:(const struct ransac_homography_record { float x0[9]; } *)a4 numHomographies:(unsigned int)a5 homScores:(float *)a6;

@end