#ifdef __HANDLEMAP_HPP #define _HANDLEMAP_HPP template class HandleMap { public: HandleMap(); virtual ~HandleMap(); unsigned long insert(T t); unsigned long queryHandle(T t); T queryThing(unsigned long handle); void remove(T t); private: struct entry { H handle; T thing; entry *next; }; entry *firstEntry; unsigned long nextHandle; }; #include "handlemap.hpp" #endif