Vuo  2.4.0
VuoRunnerCocoa.h
Go to the documentation of this file.
1
10#pragma once
11
12#if defined(__OBJC__) || defined(DOXYGEN)
13
15#import <AppKit/AppKit.h>
16
18#define VuoRunner void
19#define VuoCompiler void
20#define VuoComposition void
21#define VuoProtocol void
22struct _VuoImage;
23typedef struct _VuoImage * VuoImage;
24typedef struct json_object json_object;
26
34@interface VuoRunnerCocoa : NSObject
35
41@property (readonly) NSString *compositionName;
42
48@property (readonly) NSString *compositionDescription;
49
55@property (readonly) NSString *compositionCopyright;
56
57+ (void)setGlobalRootContext:(CGLContextObj)context;
59
60- (NSArray *)inputPorts;
61- (NSArray *)outputPorts;
62- (NSDictionary *)detailsForPort:(NSString *)portName;
64- (BOOL)setInputValuesWithPropertyList:(id)propertyList;
65- (BOOL)setInputValues:(NSDictionary *)namesAndValues;
66- (BOOL)setInputJSON:(NSDictionary *)namesAndJSON;
67
68- (id)valueForOutputPort:(NSString *)portName;
69- (GLuint)glTextureWithTarget:(GLuint)target forOutputPort:(NSString *)portName outputPixelsWide:(NSUInteger *)outputPixelsWide pixelsHigh:(NSUInteger *)outputPixelsHigh;
70- (GLuint)glTextureFromProvider:(GLuint (^)(NSUInteger pixelsWide, NSUInteger pixelsHigh))provider forOutputPort:(NSString *)portName outputPixelsWide:(NSUInteger *)outputPixelsWide pixelsHigh:(NSUInteger *)outputPixelsHigh ioSurface:(IOSurfaceRef *)outputIOSurface;
71@end
72
77+ (BOOL)canOpenComposition:(NSURL *)compositionURL;
78+ (BOOL)canOpenCompositionString:(NSString *)compositionString;
79- (id)initWithComposition:(NSURL *)compositionURL;
80- (id)initWithCompositionString:(NSString *)compositionString name:(NSString *)name sourcePath:(NSString *)sourcePath;
81- (NSImage *)filterNSImage:(NSImage *)image atTime:(NSTimeInterval)time;
82- (GLuint)filterGLTexture:(GLuint)textureName target:(GLuint)target pixelsWide:(NSUInteger)pixelsWide pixelsHigh:(NSUInteger)pixelsHigh atTime:(NSTimeInterval)time outputPixelsWide:(NSUInteger *)outputPixelsWide pixelsHigh:(NSUInteger *)outputPixelsHigh;
83- (GLuint)filterGLTexture:(GLuint)textureName target:(GLuint)target pixelsWide:(NSUInteger)pixelsWide pixelsHigh:(NSUInteger)pixelsHigh atTime:(NSTimeInterval)time withTextureProvider:(GLuint (^)(NSUInteger pixelsWide, NSUInteger pixelsHigh))provider outputPixelsWide:(NSUInteger *)outputPixelsWide pixelsHigh:(NSUInteger *)outputPixelsHigh ioSurface:(IOSurfaceRef *)outputIOSurface;
84@end
85
90+ (BOOL)canOpenComposition:(NSURL *)compositionURL;
91+ (BOOL)canOpenCompositionString:(NSString *)compositionString;
92- (id)initWithComposition:(NSURL *)compositionURL;
93- (id)initWithCompositionString:(NSString *)compositionString name:(NSString *)name sourcePath:(NSString *)sourcePath;
94- (NSImage *)generateNSImageWithSuggestedPixelsWide:(NSUInteger)suggestedPixelsWide pixelsHigh:(NSUInteger)suggestedPixelsHigh atTime:(NSTimeInterval)time;
95- (GLuint)generateGLTextureWithTarget:(GLuint)target suggestedPixelsWide:(NSUInteger)suggestedPixelsWide pixelsHigh:(NSUInteger)suggestedPixelsHigh atTime:(NSTimeInterval)time outputPixelsWide:(NSUInteger *)outputPixelsWide pixelsHigh:(NSUInteger *)outputPixelsHigh;
96- (GLuint)generateGLTextureWithProvider:(GLuint (^)(NSUInteger pixelsWide, NSUInteger pixelsHigh))provider suggestedPixelsWide:(NSUInteger)pixelsWide pixelsHigh:(NSUInteger)pixelsHigh atTime:(NSTimeInterval)time outputPixelsWide:(NSUInteger *)outputPixelsWide pixelsHigh:(NSUInteger *)outputPixelsHigh ioSurface:(IOSurfaceRef *)outputIOSurface;
97- (VuoImage)generateVuoImageWithSuggestedPixelsWide:(NSUInteger)suggestedPixelsWide pixelsHigh:(NSUInteger)suggestedPixelsHigh atTime:(NSTimeInterval)time;
98@end
99
100#undef VuoRunner
101#undef VuoCompiler
102#undef VuoComposition
103#undef VuoProtocol
104
105#endif // defined(__OBJC__) || defined(DOXYGEN)