00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #if !defined(MEMORYMANAGER_HPP)
00023 #define MEMORYMANAGER_HPP
00024
00025 #include <xercesc/util/XercesDefs.hpp>
00026 #include <stdlib.h>
00027
00028
00029 XERCES_CPP_NAMESPACE_BEGIN
00030
00031
00038 class MemoryManager
00039 {
00040 public:
00041
00042
00043
00044
00047
00051 virtual ~MemoryManager()
00052 {
00053 }
00055
00056
00057
00058
00059
00062
00070 virtual void* allocate(size_t size) = 0;
00071
00077 virtual void deallocate(void* p) = 0;
00078
00080
00081
00082 protected :
00083
00084
00085
00088
00092 MemoryManager()
00093 {
00094 }
00096
00097
00098
00099 private:
00100
00101
00102
00103 MemoryManager(const MemoryManager&);
00104 MemoryManager& operator=(const MemoryManager&);
00105 };
00106
00107 XERCES_CPP_NAMESPACE_END
00108
00109 #endif