Xerces-C++: XMemory.hpp Source File

| API Docs for SAX and DOM |
| Main Page Classes Files Related Pages # XMemory.hpp Go to the documentation of this file.
    00001 /*
    00002  * Licensed to the Apache Software Foundation (ASF) under one or more
    00003  * contributor license agreements.  See the NOTICE file distributed with
    00004  * this work for additional information regarding copyright ownership.
    00005  * The ASF licenses this file to You under the Apache License, Version 2.0
    00006  * (the "License"); you may not use this file except in compliance with
    00007  * the License.  You may obtain a copy of the License at
    00008  *
    00009  *      http://www.apache.org/licenses/LICENSE-2.0
    00010  *
    00011  * Unless required by applicable law or agreed to in writing, software
    00012  * distributed under the License is distributed on an "AS IS" BASIS,
    00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    00014  * See the License for the specific language governing permissions and
    00015  * limitations under the License.
    00016  */
    00017
    00018 /*
    00019  * $Id: XMemory.hpp 568078 2007-08-21 11:43:25Z amassari $
    00020  */
    00021
    00022
    00023 #if !defined(XMEMORY_HPP)
    00024 #define XMEMORY_HPP
    00025
    00026 #include <xercesc/util/XercesDefs.hpp>
    00027 #include <stdlib.h>
    00028
    00029 XERCES_CPP_NAMESPACE_BEGIN
    00030
    00031 class MemoryManager;
    00032
    00041 class  XMemory
    00042 {
    00043 public :
    00044     // -----------------------------------------------------------------------
    00045     //  The C++ memory management
    00046     // -----------------------------------------------------------------------
    00049
    00055     void* operator new(size_t size);
    00056
    00057 #if defined(XML_VISUALCPP)
    00058
    00065     void* operator new(size_t size, const char* file, int line);
    00073     void operator delete(void* p, const char* file, int line);
    00074 #endif
    00075
    00083     void* operator new(size_t size, MemoryManager* memMgr);
    00084
    00091     void* operator new(size_t size, void* ptr);
    00092
    00098     void operator delete(void* p);
    00099
    00100      //The Borland compiler is complaining about duplicate overloading of delete
    00101 #if !defined(XML_BORLAND)
    00102
    00108     void operator delete(void* p, MemoryManager* memMgr);
    00109
    00116     void operator delete(void* p, void* ptr);
    00117 #endif
    00118
    00120
    00121 protected :
    00122     // -----------------------------------------------------------------------
    00123     //  Hidden Constructors
    00124     // -----------------------------------------------------------------------
    00127
    00131     XMemory()
    00132     {
    00133     }
    00135
    00136 #if defined(XML_BORLAND)
    00137     virtual ~XMemory()
    00138     {
    00139     }
    00140 #endif
    00141
    00142 };
    00143
    00144 XERCES_CPP_NAMESPACE_END
    00145
    00146 #endif

Copyright © 1994-2004 The Apache Software Foundation. All Rights Reserved.