luxlabs header browser preview


@interface TSDBrushStroke : TSDSmartStroke

@property (class, readonly, nonatomic) BOOL brushStrokeUsesOpenGL;
@property (class, readonly, nonatomic) BOOL brushStrokeUsesMetal;

+ (Class)mutableClass;
+ (void)p_drawColor:(id)a0 intoContext:(struct CGContext { } *)a1 usingImageAsMask:(struct CGImage { } *)a2 withRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a3;
+ (void)backgroundLoadAllBrushStrokes;
+ (void)p_clearFrameBuffers:(id)a0;
+ (void)p_drawFrameBuffers:(id)a0 intoFrameBuffer:(id)a1 withAlpha:(double)a2 usingDataBuffer:(id)a3;
+ (id)p_glContextArray;
+ (unsigned long long)p_glContextCount;
+ (id)p_glContextQueue;
+ (id)p_glContextSemaphore;

- (id)description;
- (id)mutableCopyWithZone:(struct _NSZone { } *)a0;
- (id)copyWithZone:(struct _NSZone { } *)a0;
- (int)cap;
- (BOOL)supportsPattern;
- (BOOL)canApplyToShapeRenderable;
- (BOOL)drawsInOneStep;
- (double)horizontalMarginForSwatch;
- (void)i_setCap:(int)a0;
- (id)initWithArchive:(const struct StrokeArchive { } *)a0 unarchiver:(id)a1;
- (id)initWithName:(id)a0 color:(id)a1 width:(double)a2 cap:(int)a3 join:(int)a4 pattern:(id)a5 miterLimit:(double)a6;
- (double)lineEndInsetAdjustment;
- (BOOL)needsToExtendJoinsForBoundsCalculation;
- (void)p_brushPath:(struct CGPath { } *)a0 inContext:(struct CGContext { } *)a1 orDirectly:(id)a2 parameterized:(BOOL)a3 drawRasterized:(BOOL)a4 shouldReverseDrawOrder:(BOOL)a5 withLayoutOptions:(id)a6;
- (void)p_brushPath:(id)a0 withScaling:(struct { double x0; double x1; })a1 inElementRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a2 intoPath:(id)a3 orIntoVector:(void *)a4 sectionIndex:(unsigned long long *)a5 viewScale:(double)a6 withLayoutOptions:(id)a7 currentSubpathIndex:(unsigned long long)a8 cachedCurrentElementPercentage:(struct { id x0; unsigned long long x1; double x2; } *)a9;
- (void)p_brushSection:(id)a0 sectionIndex:(unsigned long long)a1 ontoPath:(id)a2 inElementRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a3 intoPath:(id)a4 orIntoVector:(void *)a5 viewScale:(double)a6 strokeTileLayout:(struct { double x0; double x1; double x2; double x3; })a7 cachedCurrentElementPercentage:(struct { id x0; unsigned long long x1; double x2; } *)a8;
- (long long)p_fastElementPercentage:(double *)a0 forOverallPercentage:(double)a1 onPath:(id)a2 withCachedCurrentElementPercentage:(struct { id x0; unsigned long long x1; double x2; } *)a3;
- (BOOL)p_isDrawingRasterizedIntoPDFWithContext:(struct CGContext { } *)a0;
- (BOOL)p_isFreehandDrawingStrokeWithFixedTileWidth;
- (BOOL)p_prefersRasterRenderingInContext:(struct CGContext { } *)a0;
- (void)p_rasterBrushPath:(struct CGPath { } *)a0 inContext:(struct CGContext { } *)a1 orDirectly:(id)a2 parameterized:(BOOL)a3 shouldReverseDrawOrder:(BOOL)a4 withLayoutOptions:(id)a5;
- (void)p_rasterRenderSection:(id)a0 sectionIndex:(unsigned long long)a1 ontoPath:(id)a2 inElementRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a3 into:(void *)a4 viewScale:(double)a5 strokeTileLayout:(struct { double x0; double x1; double x2; double x3; })a6 cachedCurrentElementPercentage:(struct { id x0; unsigned long long x1; double x2; } *)a7;
- (BOOL)p_shouldDrawAsVectorInContext:(struct CGContext { } *)a0;
- (void)paintLineEnd:(id)a0 atPoint:(struct CGPoint { double x0; double x1; })a1 atAngle:(double)a2 withScale:(double)a3 inContext:(struct CGContext { } *)a4 useFastDrawing:(BOOL)a5;
- (void)paintPath:(struct CGPath { } *)a0 wantsInteriorStroke:(BOOL)a1 inContext:(struct CGContext { } *)a2 useFastDrawing:(BOOL)a3 parameterized:(BOOL)a4 shouldReverseDrawOrder:(BOOL)a5;
- (void)paintPath:(struct CGPath { } *)a0 wantsInteriorStroke:(BOOL)a1 inContext:(struct CGContext { } *)a2 useFastDrawing:(BOOL)a3 parameterized:(BOOL)a4 shouldReverseDrawOrder:(BOOL)a5 withLayoutOptions:(id)a6;
- (BOOL)prefersToApplyToShapeRenderableDuringManipulation;
- (id)strokeLineEnd:(id)a0;
- (double)suggestedMinimumLineWidth;
- (void)p_finishOpenGLRenderInContext:(struct CGContext { } *)a0 orDirectly:(id)a1 pathVertexData:(void *)a2 parameterized:(BOOL)a3 shouldReverseDrawOrder:(BOOL)a4 withLayoutOptions:(id)a5;
- (id)p_glTextureForCurrentStrokeAndContext;
- (struct CGImage { } *)p_newCGImageFromGLWithWidth:(int)a0 height:(int)a1;
- (BOOL)p_shouldSplitAtSharpAngles;
- (BOOL)usesOpenGL;

@end