luxlabs header browser preview


@class NSString, CALayer, NSMutableDictionary, TSDTextureSet, TSDMetalShader, NSObject, NSMutableArray, TSUColor;
@protocol MTLTexture, TSDLiveTexturedRectangleSource, OS_dispatch_semaphore;

@interface TSDTexturedRectangle : NSObject <NSCopying> {
    struct CGPoint { double x; double y; } mOffset;
    struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } mOriginalFrame;
    id /* block */ mRenderBlock;
    struct CGImage { } *mSourceImage;
    struct CGImage { } *mBakedImage;
    unsigned int mSingleTextureName;
    BOOL mSingleTextureContainsMipmaps;
    NSObject<OS_dispatch_semaphore> *_liveMetalTexturesSemaphore;
    id<TSDLiveTexturedRectangleSource> _liveTexturedRectangleSource;
    TSDTexturedRectangle *_liveTexturedRectangleSourceProxy;
    NSMutableArray *_liveMetalTexturePool;
    unsigned long long _liveMetalTexturePoolIndex;
    NSMutableDictionary *_liveMetalTextureToTimestamp;
    NSMutableDictionary *_liveMetalTimestampToTexture;
    TSDMetalShader *_liveTextureSourceShader;
}

@property (readonly, nonatomic) unsigned int singleTextureName;
@property (readonly, nonatomic) unsigned int singleTextureTarget;
@property (nonatomic) struct CGPoint { double x; double y; } originalPosition;
@property (nonatomic) struct CGPoint { double x0; double x1; } offset;
@property (readonly, nonatomic) struct CGSize { double width; double height; } size;
@property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } frame;
@property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } contentRect;
@property (weak, nonatomic) TSDTextureSet *parent;
@property (readonly, nonatomic) CALayer *layer;
@property (readonly, nonatomic) struct CGImage { } *image;
@property (readonly, nonatomic) float opacityFromAttributes;
@property (readonly, nonatomic) struct CATransform3D { double x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; double x8; double x9; double x10; double x11; double x12; double x13; double x14; double x15; } transformFromAttributes;
@property (retain, nonatomic) NSMutableDictionary *attributes;
@property (nonatomic) BOOL shouldUseDisplayLinkPresentationTime;
@property (retain, nonatomic) NSMutableArray *tags;
@property (nonatomic) int textureType;
@property (nonatomic) double textureOpacity;
@property (readonly, nonatomic) double singleTextureOpacity;
@property (nonatomic) BOOL isFlattened;
@property (nonatomic) struct CGColorSpace { } *colorSpace;
@property (readonly, nonatomic) BOOL isRenderable;
@property (readonly, nonatomic) double bakedScale;
@property (readonly, nonatomic) BOOL isBackgroundTexture;
@property (readonly, nonatomic) CALayer *parentLayer;
@property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } frameOnCanvas;
@property (nonatomic) BOOL shouldGenerateMipmap;
@property (copy, nonatomic) TSUColor *backgroundColor;
@property (nonatomic) BOOL isVerticalText;
@property (nonatomic) double textBaseline;
@property (nonatomic) double textXHeight;
@property (copy, nonatomic) TSUColor *textColor;
@property (copy, nonatomic) NSString *text;
@property (nonatomic) struct _NSRange { unsigned long long location; unsigned long long length; } textRange;
@property (readonly, nonatomic) id<MTLTexture> metalTexture;

+ (id)setupMetalShaderForContext:(id)a0;

- (void)dealloc;
- (void)teardown;
- (id)initWithCGImage:(struct CGImage { } *)a0;
- (id)description;
- (void).cxx_destruct;
- (id)initWithLayer:(id)a0;
- (id)copyWithZone:(struct _NSZone { } *)a0;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })boundingRectForStage:(long long)a0 isBuildIn:(BOOL)a1;
- (void)setLiveTexturedRectangleSource:(id)a0;
- (void)adjustAnchorRelativeToParentsCenterOfRotation:(struct CGPoint { double x0; double x1; })a0 isMagicMove:(BOOL)a1;
- (void)bakeLayerWithAngle:(double)a0 scale:(double)a1;
- (void)drawFrameAtLayerTime:(double)a0 context:(id)a1;
- (BOOL)hasLiveTexturedRectangleSource;
- (id)initWithSize:(struct CGSize { double x0; double x1; })a0 image:(struct CGImage { } *)a1;
- (id)initWithSize:(struct CGSize { double x0; double x1; })a0 offset:(struct CGPoint { double x0; double x1; })a1 renderBlock:(id /* block */)a2;
- (BOOL)isMetalTextureSetup;
- (id)metalTextureWithContext:(id)a0;
- (id)p_allocateMetalTextureForDevice:(id)a0;
- (id)p_allocateMetalTextureForDevice:(id)a0 renderTarget:(BOOL)a1 writable:(BOOL)a2 private:(BOOL)a3 maxSize:(struct CGSize { double x0; double x1; })a4;
- (struct CGColorSpace { } *)p_colorSpace;
- (id)p_latestTextureNotAfterLayerTime:(double)a0;
- (struct CGImage { } *)p_newImageAndBufferWithAngle:(double)a0 scale:(double)a1 offset:(struct CGPoint { double x0; double x1; })a2;
- (char *)p_setupTextureDataWithSize:(struct CGSize { double x0; double x1; })a0 isBGRA:(BOOL)a1;
- (struct CGSize { double x0; double x1; })p_textureSizeWithDevice:(id)a0 maxSize:(struct CGSize { double x0; double x1; })a1;
- (void)releaseMetalTexture;
- (void)releaseSingleTexture;
- (void)renderIntoContext:(struct CGContext { } *)a0;
- (void)renderLayerContentsIfNeeded;
- (void)resetAnchorPoint;
- (void)resetToSourceImage;
- (void)setLiveTexturedRectangleSourceProxy:(id)a0;
- (void)setupMetalTextureForDevice:(id)a0;
- (void)setupSingleTexture;
- (void)setupSingleTextureAndGenerateMipMaps:(BOOL)a0;

@end