00001
00002
00003
00004 #ifndef UTILMM_SMART_COUNT_POINTER_HEADER
00005 # define UTILMM_SMART_COUNT_POINTER_HEADER
00006 #include "utilmm/config/config.h"
00007
00008 #include "utilmm/smart/bits/ref_count_manager.hh"
00009 #include "utilmm/smart/bits/simple_memory.hh"
00010 #include "utilmm/smart/pointer.hh"
00011
00012 namespace utilmm {
00013 namespace smart {
00014
00043 template<typename Ty>
00044 struct count_pointer {
00045 private:
00046 typedef ref_count::simple_memory<Ty> mem_type;
00047 typedef ref_count::manager<mem_type> manager_type;
00048
00049 public:
00055 typedef pointer<manager_type> type;
00056 };
00057
00058 }
00059 }
00060
00061 #endif // UTILMM_SMART_COUNT_POINTER_HEADER
00062