VLCKit: Import MobileVLCKit.
[vlc/asuraparaju-public.git] / projects / macosx / framework / Headers / Public / VLCMediaThumbnailer.h
blobe27c344989907692ec1923ee735d7b0c7b5a5640
1 //
2 // VLCMediaThumbnailer.h
3 // VLCKit
4 //
5 // Created by Pierre d'Herbemont on 7/10/10.
6 // Copyright 2010 __MyCompanyName__. All rights reserved.
7 //
9 #import <Foundation/Foundation.h>
10 #if TARGET_OS_IPHONE
11 # import <CoreGraphics/CoreGraphics.h>
12 #endif
14 @class VLCMedia;
15 @protocol VLCMediaThumbnailerDelegate;
17 @interface VLCMediaThumbnailer : NSObject {
18 id<VLCMediaThumbnailerDelegate> _delegate;
19 VLCMedia *_media;
20 void *_mp;
21 CGImageRef _thumbnail;
22 void *_data;
23 NSTimer *_parsingTimeoutTimer;
25 CGFloat _thumbnailHeight,_thumbnailWidth;
26 CGFloat _effectiveThumbnailHeight,_effectiveThumbnailWidth;
29 + (VLCMediaThumbnailer *)thumbnailerWithMedia:(VLCMedia *)media andDelegate:(id<VLCMediaThumbnailerDelegate>)delegate;
30 - (void)fetchThumbnail;
32 @property (readwrite, assign) id<VLCMediaThumbnailerDelegate> delegate;
33 @property (readwrite, retain) VLCMedia *media;
34 @property (readwrite, assign) CGImageRef thumbnail;
36 /**
37 * Thumbnail Height
38 * You shouldn't change this after -fetchThumbnail
39 * has been called.
40 * @return thumbnail height. Default value 240.
42 @property (readwrite, assign) CGFloat thumbnailHeight;
44 /**
45 * Thumbnail Width
46 * You shouldn't change this after -fetchThumbnail
47 * has been called.
48 * @return thumbnail height. Default value 320
50 @property (readwrite, assign) CGFloat thumbnailWidth;
51 @end
53 @protocol VLCMediaThumbnailerDelegate
54 @required
55 - (void)mediaThumbnailer:(VLCMediaThumbnailer *)mediaThumbnailer didFinishThumbnail:(CGImageRef)thumbnail;
56 @end