core/vil/file_formats/vil_jpeg_destination_mgr.h
Go to the documentation of this file.
00001 // This is core/vil/file_formats/vil_jpeg_destination_mgr.h
00002 #ifndef vil_jpeg_destination_mgr_h_
00003 #define vil_jpeg_destination_mgr_h_
00004 #ifdef VCL_NEEDS_PRAGMA_INTERFACE
00005 #pragma interface
00006 #endif
00007 //:
00008 // \file
00009 // \author fsm
00010 // \verbatim
00011 //  Modifications
00012 //     11 Oct 2002 Ian Scott - converted to vil
00013 //\endverbatim
00014 
00015 #include <vil/file_formats/vil_jpeglib.h>
00016 class vil_stream;
00017 
00018 //: this is the data source structure which allows JPEG to write to a vil_stream.
00019 struct vil_jpeg_stream_destination_mgr
00020 {
00021   struct jpeg_destination_mgr base;
00022 
00023   vil_stream *stream;           /* target stream */
00024   JOCTET * buffer;              /* start of buffer */
00025 };
00026 
00027 void
00028 vil_jpeg_init_destination (j_compress_ptr cinfo);
00029 
00030 jpeg_boolean
00031 vil_jpeg_empty_output_buffer (j_compress_ptr cinfo);
00032 
00033 void
00034 vil_jpeg_term_destination (j_compress_ptr cinfo);
00035 
00036 void
00037 vil_jpeg_stream_dst_set (j_compress_ptr cinfo, vil_stream *vs);
00038 
00039 void
00040 vil_jpeg_stream_dst_rewind(j_compress_ptr cinfo, vil_stream *vs);
00041 
00042 #endif // vil_jpeg_destination_mgr_h_