Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

oxp_mpeg_codec.h

Go to the documentation of this file.
00001 #ifndef oxp_mpeg_codec_h
00002 #define oxp_mpeg_codec_h
00003 //:
00004 // \file 
00005 // \author awf
00006 // \date Dec 2001
00007 
00008 #include <vcl_string.h>
00009 struct oxp_mpeg_codec_data;
00010 
00011 //: Allows user to load MPEG files as vxl video.
00012 // use set_demux if mpeg is a VOB
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   // bool save(movie* movie, vcl_string const& fname);
00027 
00028   void close();
00029 
00030   int get_width() const;
00031   int get_height() const;
00032 
00033   // could be set for efficiency, after load was called?
00034   void set_output_format_grey();
00035   void set_output_format_rgb();
00036 
00037 private:
00038 
00039   //--- these are set by load/save
00040   void set_demux_video();
00041 
00042   oxp_mpeg_codec_data* impl_;
00043 };
00044 
00045 #endif // oxp_mpeg_codec_h

Generated on Thu Jan 10 14:46:06 2008 for contrib/oxl/oxp by  doxygen 1.4.4