// Private CoreGraphics classes for virtual displays (as used by DeskPad, // BetterDisplay and quest-display). Not in any SDK; see // docs/mac-window-separation.md. #import #import @interface CGVirtualDisplayDescriptor : NSObject @property (retain, nonatomic) dispatch_queue_t queue; @property (retain, nonatomic) NSString *name; @property (nonatomic) unsigned int maxPixelsHigh; @property (nonatomic) unsigned int maxPixelsWide; @property (nonatomic) CGSize sizeInMillimeters; @property (nonatomic) unsigned int serialNum; @property (nonatomic) unsigned int productID; @property (nonatomic) unsigned int vendorID; @property (copy, nonatomic) void (^terminationHandler)(id, id); @end @interface CGVirtualDisplayMode : NSObject - (instancetype)initWithWidth:(unsigned int)width height:(unsigned int)height refreshRate:(double)refreshRate; @end @interface CGVirtualDisplaySettings : NSObject @property (retain, nonatomic) NSArray *modes; @property (nonatomic) unsigned int hiDPI; @end @interface CGVirtualDisplay : NSObject @property (readonly, nonatomic) unsigned int displayID; - (instancetype)initWithDescriptor:(CGVirtualDisplayDescriptor *)descriptor; - (BOOL)applySettings:(CGVirtualDisplaySettings *)settings; @end