00001 #ifndef oxp_mpeg_codec_h
00002 #define oxp_mpeg_codec_h
00003
00004
00005
00006
00007
00008 #include <vcl_string.h>
00009 struct oxp_mpeg_codec_data;
00010
00011
00012
00013 class oxp_mpeg_codec {
00014 public:
00015 oxp_mpeg_codec();
00016 ~oxp_mpeg_codec();
00017
00018
00019
00020 bool get_section(int position, void* ib, int x0, int y0, int xs, int ys) const;
00021 int put_section(int position, void* ib, int x0, int y0, int xs, int ys);
00022
00023
00024 bool probe(vcl_string const& fname);
00025 bool load(vcl_string const& fname, char mode = 'r' );
00026
00027
00028 void close();
00029
00030 int get_width() const;
00031 int get_height() const;
00032
00033
00034 void set_output_format_grey();
00035 void set_output_format_rgb();
00036
00037 private:
00038
00039
00040 void set_demux_video();
00041
00042 oxp_mpeg_codec_data* impl_;
00043 };
00044
00045 #endif // oxp_mpeg_codec_h