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

plfilter.h

00001 /*
00002 /--------------------------------------------------------------------
00003 |
00004 |      $Id: plfilter_8h-source.html,v 1.4 2004/09/15 15:26:29 uzadow Exp $
00005 |
00006 |      Copyright (c) 1996-2002 Ulrich von Zadow
00007 |
00008 \--------------------------------------------------------------------
00009 */
00010 
00011 #if !defined(AFX_FILTER_H__3CED06E1_1B40_11D3_B142_444553540000__INCLUDED_)
00012 #define AFX_FILTER_H__3CED06E1_1B40_11D3_B142_444553540000__INCLUDED_
00013 
00014 #if _MSC_VER >= 1000
00015 #pragma once
00016 #endif // _MSC_VER >= 1000
00017 
00018 class PLBmpBase;
00019 class PLBmp;
00020 
00021 #ifndef AFX_PLOBJECT_H__E40881E3_C809_11D3_97BC_0050046F615E__INCLUDED_
00022 #include "plobject.h"
00023 #endif
00024 
00025 //! Base class for filters that operate on bitmaps. Derived classes need
00026 //! to override either the ApplyInPlace or the Apply function. The base-class
00027 //! versions of these functions simply implement one function in terms of the
00028 //! other.
00029 class PLFilter : public PLObject  
00030 {
00031 public:
00032   //!
00033   PLFilter();
00034   //!
00035   virtual ~PLFilter() = 0;
00036 
00037   //! In-Place Apply. Applies the filter to pBmp. The base-class
00038   //! version copies the bitmap after calling Apply (pBmp, pTempBmp).
00039   virtual void ApplyInPlace(PLBmp * pBmp) const;  
00040 
00041   //! Applies the Filter to pBmpSource and stores the result in
00042   //! pBmpDest. The base-class version copies the bitmap before calling
00043   //! ApplyInPlace (pBmpDest).
00044   virtual void Apply(PLBmpBase * pBmpSource, PLBmp * pBmpDest) const;
00045 };
00046 
00047 #endif // !defined(AFX_FILTER_H__3CED06E1_1B40_11D3_B142_444553540000__INCLUDED_)
00048 
00049 /*
00050 /--------------------------------------------------------------------
00051 |
00052 |      $Log: plfilter_8h-source.html,v $
00052 |      Revision 1.4  2004/09/15 15:26:29  uzadow
00052 |      Linux compatibility changes, doc update.
00052 |
00053 |      Revision 1.5  2004/06/15 10:26:13  uzadow
00054 |      Initial nonfunctioning version of plbmpbase.
00055 |
00056 |      Revision 1.4  2004/06/06 12:56:38  uzadow
00057 |      Doxygenified documentation.
00058 |
00059 |      Revision 1.3  2003/08/03 12:03:22  uzadow
00060 |      Added unicode support; fixed some header includes.
00061 |
00062 |      Revision 1.2  2002/03/03 16:59:26  uzadow
00063 |      Changed PLFilter so it's pure virtual.
00064 |
00065 |      Revision 1.1  2001/09/16 19:03:23  uzadow
00066 |      Added global name prefix PL, changed most filenames.
00067 |
00068 |      Revision 1.4  2001/01/15 15:05:31  uzadow
00069 |      Added PLBmp::ApplyFilter() and PLBmp::CreateFilteredCopy()
00070 |
00071 |      Revision 1.3  2000/01/16 20:43:15  anonymous
00072 |      Removed MFC dependencies
00073 |
00074 |      Revision 1.2  1999/11/27 18:45:48  Ulrich von Zadow
00075 |      Added/Updated doc comments.
00076 |
00077 |      Revision 1.1  1999/10/21 16:05:17  Ulrich von Zadow
00078 |      Moved filters to separate directory. Added Crop, Grayscale and
00079 |      GetAlpha filters.
00080 |
00081 |      Revision 1.1  1999/10/19 21:29:44  Ulrich von Zadow
00082 |      Added filters.
00083 |
00084 |
00085 \--------------------------------------------------------------------
00086 */

Generated on Mon Sep 13 16:16:40 2004 for paintlib by doxygen 1.3.2