00001 /* 00002 * Copyright (c) 1998, University of Amsterdam, The Netherlands. 00003 * All rights reserved. 00004 * 00005 * 00006 * Author(s): 00007 * Dennis Koelma (koelma@wins.uva.nl) 00008 * Edo Poll (poll@wins.uva.nl) 00009 */ 00010 00011 #ifndef HxSampleFunctorTem_h 00012 #define HxSampleFunctorTem_h 00013 00014 #include "HxSampleFunctorTable.h" 00015 #include "HxPoint.h" 00016 #include "HxValueList.h" 00017 00019 template <class ArgType, class ResType> 00020 class HxSampleFunctorTem 00021 { 00022 public: 00024 HxSampleFunctorTem(HxString name); 00025 00026 virtual ~HxSampleFunctorTem(); 00027 00029 virtual void init() = 0; 00030 00032 virtual void next(ArgType pixV, ArgType maskV, HxPoint p) = 0; 00033 00035 virtual void result(HxValueListBackInserter res) = 0; 00036 00038 virtual int hasPhase2(); 00039 00041 virtual void init2(); 00042 00044 virtual void next2(ArgType pixV, ArgType maskV, HxPoint p); 00045 00047 virtual void result2(HxValueListBackInserter res); 00048 00049 private: 00050 HxSampleFunctorTem(); 00051 HxString _name; 00052 }; 00053 00054 #ifdef INC_TEMPLATE_SRC 00055 #include "HxSampleFunctorTem.c" 00056 #endif 00057 00058 #endif