Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

callout_Filter.h

Go to the documentation of this file.
00001 /* ---------------------------------------------------------------------------
00002     Phission :
00003         Realtime Vision Processing System
00004 
00005     Copyright (C) 2003-2006 Philip D.S. Thoren (pthoren@cs.uml.edu)
00006     University of Massachusetts at Lowell,
00007     Laboratory for Artificial Intelligence and Robotics
00008 
00009  ---------------------------------------------------------------------------
00010     <Add other copyrights here> 
00011  ---------------------------------------------------------------------------
00012 
00013     This file is part of Phission.
00014 
00015     Phission is free software; you can redistribute it and/or modify
00016     it under the terms of the GNU Lesser General Public License as published by
00017     the Free Software Foundation; either version 2 of the License, or
00018     (at your option) any later version.
00019 
00020     Phission is distributed in the hope that it will be useful,
00021     but WITHOUT ANY WARRANTY; without even the implied warranty of
00022     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00023     GNU Lesser General Public License for more details.
00024 
00025     You should have received a copy of the GNU Lesser General Public License
00026     along with Phission; if not, write to the Free Software
00027     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00028 
00029  ---------------------------------------------------------------------------*/
00030 #ifndef _CALLBACK_FILTER_H
00031 #define _CALLBACK_FILTER_H
00032 
00038 #include <phFilter.h>
00039 
00051 typedef int (*ph_callout_fn)( phFilter    *filter,
00052                               phImage     *workspace,
00053                               void        *user_data  );
00054 
00055 /* ------------------------------------------------------------------------ */
00060 PHAPI(class) callout_Filter : public phFilter
00061 {
00062 private:
00066     ph_callout_fn   m_callout;
00067     void           *m_data;
00068 
00069 protected:
00074     int filter();
00075 
00076 public:
00080     callout_Filter( ph_callout_fn callout           = NULL,
00081                     void         *userdata          = NULL,
00082                     uint32_t      supported_formats = phImageValidFormatMask );
00083     ~callout_Filter();
00084     
00093     int set( ph_callout_fn function,
00094              void         *userdata,
00095              uint32_t      supported_formats );
00096     
00097     int setCallout( ph_callout_fn function              );
00098     int setUserData( void          *data                 );
00099     int setSuppportedFormats( uint32_t supported_formats );
00100     
00108     phFilter *cloneFilter();
00109 
00110 };
00111  /* ImageProcessing */
00113 
00114 #endif /* _CALLBACK_FILTER_H */
00115 




Copyright (C) 2002 - 2007 Philip D.S. Thoren ( pthoren@users.sourceforge.net )
University Of Massachusetts at Lowell
Robotics Lab
SourceForge.net Logo

Generated on Sat Jun 16 02:44:08 2007 for phission by  doxygen 1.4.4