12345678910111213141516171819202122232425262728293031323334 |
- #import <UIKit/UIKit.h>
- #import "GPUImageOutput.h"
- @interface GPUImagePicture : GPUImageOutput
- {
- CGSize pixelSizeOfImage;
- BOOL hasProcessedImage;
-
- dispatch_semaphore_t imageUpdateSemaphore;
- }
- // Initialization and teardown
- - (id)initWithURL:(NSURL *)url;
- - (id)initWithImage:(UIImage *)newImageSource;
- - (id)initWithCGImage:(CGImageRef)newImageSource;
- - (id)initWithImage:(UIImage *)newImageSource smoothlyScaleOutput:(BOOL)smoothlyScaleOutput;
- - (id)initWithCGImage:(CGImageRef)newImageSource smoothlyScaleOutput:(BOOL)smoothlyScaleOutput;
- // Image rendering
- - (void)processImage;
- - (CGSize)outputImageSize;
- /**
- * Process image with all targets and filters asynchronously
- * The completion handler is called after processing finished in the
- * GPU's dispatch queue - and only if this method did not return NO.
- *
- * @returns NO if resource is blocked and processing is discarded, YES otherwise
- */
- - (BOOL)processImageWithCompletionHandler:(void (^)(void))completion;
- - (void)processImageUpToFilter:(GPUImageOutput<GPUImageInput> *)finalFilterInChain withCompletionHandler:(void (^)(UIImage *processedImage))block;
- @end
|