typedef enum 
{
	kCogPluginCodec = 1,
} PluginType;

@protocol CogPlugin
- (PluginType)pluginType;
@end

@protocol CogCodecPlugin
- (Class)decoder;
- (Class)metadataReader;
- (Class)propertiesReader;
@end

@protocol CogDecoder
+ (NSArray *)fileTypes;

- (BOOL)open:(NSURL *)url;
- (NSDictionary *)properties;
- (double)seekToTime:(double)time;
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size;
- (void)close;
@end

@protocol CogMetadataReader
+ (NSArray *)fileTypes;
@end

@protocol CogPropertiesReader
+ (NSArray *)fileTypes;
@end