00001 /* 00002 /-------------------------------------------------------------------- 00003 | 00004 | $Id: plmemsink.h,v 1.4 2003/08/03 12:03:20 uzadow Exp $ 00005 | 00006 | Copyright (c) 1996-2002 Ulrich von Zadow 00007 | 00008 \-------------------------------------------------------------------- 00009 */ 00010 00011 #ifndef INCL_PLMEMSINK 00012 #define INCL_PLMEMSINK 00013 00014 #include "pldatasink.h" 00015 #include "plpaintlibdefs.h" 00016 00017 //! This is a class which takes a memory region as a destination of 00018 //! picture data. The result is an encoded (for example, jpeg-compressed) 00019 //! image in memory. 00020 class PLMemSink : public PLDataSink 00021 { 00022 00023 public: 00024 //! 00025 PLMemSink 00026 (); 00027 00028 //! 00029 virtual ~PLMemSink 00030 (); 00031 00032 //! 00033 virtual int Open 00034 ( const char * pszFName, 00035 int MaxFileSize 00036 ); 00037 #ifdef _WINDOWS 00038 //! 00039 virtual int OpenW 00040 ( const wchar_t * pszwFName, 00041 int MaxFileSize 00042 ); 00043 #endif 00044 00045 //! 00046 virtual void Close 00047 (); 00048 00049 //! Returns a pointer to the compressed image. 00050 virtual PLBYTE* GetBytes(); 00051 00052 private: 00053 PLBYTE * m_pDataBuf; 00054 }; 00055 00056 #endif 00057 00058 /* 00059 /-------------------------------------------------------------------- 00060 | 00061 | $Log: plmemsink.h,v $ 00062 | Revision 1.4 2003/08/03 12:03:20 uzadow 00063 | Added unicode support; fixed some header includes. 00064 | 00065 | Revision 1.3 2002/02/24 13:00:22 uzadow 00066 | Documentation update; removed buggy PLFilterRotate. 00067 | 00068 | Revision 1.2 2001/10/06 22:03:26 uzadow 00069 | Added PL prefix to basic data types. 00070 | 00071 | Revision 1.1 2001/09/16 19:03:22 uzadow 00072 | Added global name prefix PL, changed most filenames. 00073 | 00074 | Revision 1.2 2001/02/04 14:31:52 uzadow 00075 | Member initialization list cleanup (Erik Hoffmann). 00076 | 00077 | Revision 1.1 2000/10/12 21:57:26 uzadow 00078 | no message 00079 | 00080 | 00081 | 00082 \-------------------------------------------------------------------- 00083 */