| // Copyright 2014 PDFium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| |
| #ifndef _JBIG2_OBJECT_H_ |
| #define _JBIG2_OBJECT_H_ |
| #include "JBig2_Define.h" |
| class CJBig2_Module; |
| #define _JBIG2_NO_EXPECTION_ |
| class CJBig2_Object { |
| public: |
| void* operator new(size_t size, |
| CJBig2_Module* pModule, |
| const FX_CHAR* filename, |
| int line); |
| |
| void operator delete(void* p, |
| CJBig2_Module* pModule, |
| const FX_CHAR* filename, |
| int line); |
| |
| void* operator new(size_t size, CJBig2_Module* pModule); |
| |
| void operator delete(void* p); |
| |
| void operator delete(void* p, CJBig2_Module* pModule); |
| |
| void* operator new[](size_t size, |
| CJBig2_Module* pModule, |
| size_t unit_size, |
| const FX_CHAR* filename, |
| int line); |
| |
| void operator delete[](void* p, |
| CJBig2_Module* pModule, |
| size_t unit_size, |
| const FX_CHAR* filename, |
| int line); |
| |
| void* operator new[](size_t size, CJBig2_Module* pModule, size_t unit_size); |
| |
| void operator delete[](void* p); |
| |
| void operator delete[](void* p, CJBig2_Module* pModule, size_t unit_size); |
| |
| public: |
| CJBig2_Module* m_pModule; |
| }; |
| #define JBIG2_NEW new (m_pModule) |
| #define JBIG2_ALLOC(p, a) \ |
| p = JBIG2_NEW a; \ |
| p->m_pModule = m_pModule; |
| #endif |