|
||||
File indexing completed on 2025-01-18 10:14:55
0001 /* 0002 * Licensed to the Apache Software Foundation (ASF) under one or more 0003 * contributor license agreements. See the NOTICE file distributed with 0004 * this work for additional information regarding copyright ownership. 0005 * The ASF licenses this file to You under the Apache License, Version 2.0 0006 * (the "License"); you may not use this file except in compliance with 0007 * the License. You may obtain a copy of the License at 0008 * 0009 * http://www.apache.org/licenses/LICENSE-2.0 0010 * 0011 * Unless required by applicable law or agreed to in writing, software 0012 * distributed under the License is distributed on an "AS IS" BASIS, 0013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 0014 * See the License for the specific language governing permissions and 0015 * limitations under the License. 0016 */ 0017 0018 /* 0019 * $Id$ 0020 */ 0021 0022 #if !defined(XERCESC_INCLUDE_GUARD_MEMORYMANAGERIMPL_HPP) 0023 #define XERCESC_INCLUDE_GUARD_MEMORYMANAGERIMPL_HPP 0024 0025 #include <xercesc/framework/MemoryManager.hpp> 0026 0027 XERCES_CPP_NAMESPACE_BEGIN 0028 0029 /** 0030 * Configurable memory manager 0031 * 0032 * <p>This is Xerces default implementation of the memory 0033 * manager interface, which will be instantiated and used 0034 * in the absence of an application's memory manager. 0035 * </p> 0036 */ 0037 0038 class XMLUTIL_EXPORT MemoryManagerImpl : public MemoryManager 0039 { 0040 public: 0041 0042 /** @name Constructor */ 0043 //@{ 0044 0045 /** 0046 * Default constructor 0047 */ 0048 MemoryManagerImpl() 0049 { 0050 } 0051 //@} 0052 0053 /** @name Destructor */ 0054 //@{ 0055 0056 /** 0057 * Default destructor 0058 */ 0059 virtual ~MemoryManagerImpl() 0060 { 0061 } 0062 //@} 0063 0064 0065 /** 0066 * This method is called to obtain the memory manager that should be 0067 * used to allocate memory used in exceptions. 0068 * 0069 * @return A pointer to the memory manager 0070 */ 0071 virtual MemoryManager* getExceptionMemoryManager(); 0072 0073 0074 /** @name The virtual methods in MemoryManager */ 0075 //@{ 0076 0077 /** 0078 * This method allocates requested memory. 0079 * 0080 * @param size The requested memory size 0081 * 0082 * @return A pointer to the allocated memory 0083 */ 0084 virtual void* allocate(XMLSize_t size); 0085 0086 /** 0087 * This method deallocates memory 0088 * 0089 * @param p The pointer to the allocated memory to be deleted 0090 */ 0091 virtual void deallocate(void* p); 0092 0093 //@} 0094 0095 private: 0096 // ----------------------------------------------------------------------- 0097 // Unimplemented constructors and operators 0098 // ----------------------------------------------------------------------- 0099 MemoryManagerImpl(const MemoryManagerImpl&); 0100 MemoryManagerImpl& operator=(const MemoryManagerImpl&); 0101 0102 }; 0103 0104 XERCES_CPP_NAMESPACE_END 0105 0106 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |