00001 /* 00002 /-------------------------------------------------------------------- 00003 | 00004 | $Id: pltiffencex.h,v 1.2 2002/03/31 13:36:42 uzadow Exp $ 00005 | 00006 | Copyright (c) 1996-2002 Ulrich von Zadow 00007 | 00008 \-------------------------------------------------------------------- 00009 */ 00010 00011 #ifndef INCL_PLTIFFENCEX 00012 #define INCL_PLTIFFENCEX 00013 00014 #include "pltiffenc.h" 00015 00016 //! Expanded tiff encoder class. 00017 //! Basic tiff output is available via "PLTIFFEncoder::MakeFileFromBmp()". 00018 //! This does not compress data or allow any informative tag to be set. 00019 //! For those who need greater control, PLTIFFDecoderEx is provided. 00020 class PLTIFFEncoderEx : public PLTIFFEncoder 00021 { 00022 00023 public: 00024 //! Creates an encoder 00025 PLTIFFEncoderEx(); 00026 00027 //! Destroys an encoder 00028 virtual ~PLTIFFEncoderEx(); 00029 00030 //! Bind DataSink to Encoder (the link is the TIFF* member) 00031 bool Associate( PLDataSink* ); 00032 00033 //! Flush the output 00034 void Dissociate( void ); 00035 00036 //! SetBaseTabs and SetField make their base class equivalent usable, 00037 //! without requiring the user to know about the libtiff internals (TIFF*) 00038 int SetBaseTags( PLBmp* ); 00039 00040 //! SetBaseTabs and SetField make their base class equivalent usable, 00041 //! without requiring the user to know about the libtiff internals (TIFF*) 00042 int SetField( int tag_id, ... ); 00043 00044 protected: 00045 //! Sets up LIBTIFF environment and calls LIBTIFF to encode an image. 00046 virtual void DoEncode( PLBmp*, PLDataSink* = 0 ); 00047 00048 private: 00049 TIFF* m_TiffToken; 00050 }; 00051 00052 #endif 00053 /* 00054 /-------------------------------------------------------------------- 00055 | 00056 | $Log: pltiffencex.h,v $ 00057 | Revision 1.2 2002/03/31 13:36:42 uzadow 00058 | Updated copyright. 00059 | 00060 | Revision 1.1 2001/09/16 19:03:22 uzadow 00061 | Added global name prefix PL, changed most filenames. 00062 | 00063 | Revision 1.3 2000/01/16 20:43:15 anonymous 00064 | Removed MFC dependencies 00065 | 00066 | Revision 1.2 1999/11/27 18:45:48 Ulrich von Zadow 00067 | Added/Updated doc comments. 00068 | 00069 | Revision 1.1 1999/10/19 21:30:42 Ulrich von Zadow 00070 | B. Delmee - Initial revision 00071 | 00072 | 00073 -------------------------------------------------------------------- 00074 */