Adobe.com
Contents Suites Classes Class Index Member Index

VTableSupport.hpp File Reference

#include "AIHeaderBegin.h"
#include "AIHeaderEnd.h"

Go to the source code of this file.

Defines

#define FIXUP_VTABLE(CLASSNAME)
#define FIXUP_VTABLE_EX(CLASSNAME, BASECLASS)
#define FIXUP_VTABLE_EX1(CLASSNAME)

Define Documentation

#define FIXUP_VTABLE ( CLASSNAME   ) 
Value:
public: \
        static void FixupVTable(CLASSNAME *pThis) {pThis = new(pThis) CLASSNAME((FixupVTableSignature) 0);} \
private: \
        typedef ai::int32 FixupVTableSignature; \
        CLASSNAME(FixupVTableSignature) {} \
        static void *operator new(size_t /*uiSize*/, CLASSNAME * pThis) {return pThis;} \
        static void operator delete(void * /*pMem*/, CLASSNAME * /*pThis*/) {} \
#define FIXUP_VTABLE_EX ( CLASSNAME,
BASECLASS   ) 
Value:
public: \
        void *operator new(size_t uiSize) {return BASECLASS::operator new(uiSize);} \
        void operator delete(void *pMem) {BASECLASS::operator delete(pMem);} \
        FIXUP_VTABLE(CLASSNAME)
#define FIXUP_VTABLE_EX1 ( CLASSNAME   ) 
Value:
public: \
        void *operator new(size_t uiSize) {return ::operator new(uiSize);} \
        void operator delete(void *pMem) {::operator delete(pMem); } \
        FIXUP_VTABLE(CLASSNAME)


Contents Suites Classes Class Index Member Index
Adobe Solutions Network
 
Copyright © 2016 Adobe Systems Incorporated. All rights reserved.
Terms of Use Online Privacy Policy Adobe and accessibility Avoid software piracy Permissions and Trademarks