Main Page   Class Overview   Pixels   Images   Geometry   Quick Index  

HxNeighbFunctorTable.h

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 HxNeighbFunctorTable_h
00012 #define HxNeighbFunctorTable_h
00013 
00014 #include "HxString.h"
00015 #include <map>
00016 
00017 template <class ArgType, class ResType>
00018 class HxNeighbFunctorTem;
00019 
00020 template <class ArgType, class ResType>
00021 class L_HXIMAGEREP HxNeighbFunctorTable
00022 {
00023 public:
00024 
00025     typedef HxNeighbFunctorTem<ArgType, ResType> HxNeighbFunctorTem;
00026     typedef std::map<HxString, HxNeighbFunctorTem*, std::less<HxString> >  Map;
00027 
00028     static HxNeighbFunctorTable* instance();
00029     void                        insert(HxString name, HxNeighbFunctorTem* nf);
00030     void                        erase(HxString name);
00031     HxNeighbFunctorTem*         find(HxString name);
00032 
00033 protected:
00034                                 HxNeighbFunctorTable();
00035                                 HxNeighbFunctorTable(const HxNeighbFunctorTable&);
00036 
00037 private:
00038     static HxNeighbFunctorTable<ArgType, ResType>*   _instance;
00039     static Map*                 _map;
00040 };
00041 
00042 #ifdef INC_TEMPLATE_SRC
00043 #ifdef HX_EXPORT_TEMPLATE
00044 #include "HxNeighbFunctorTable.c"
00045 #endif
00046 #endif
00047 
00048 #endif

Generated on Tue Jan 8 13:59:15 2002 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001