KOALA.H
/* 
 * KOALA.H 
 * Koala Object Independent of DLL/EXE Servers, Chapter 5 
 * 
 * Classes that implement the Koala object independent of 
 * whether we live in a DLL or EXE. 
 * 
 * Copyright (c)1993-1995 Microsoft Corporation, All Right Reserved 
 * 
 * Kraig Brockschmidt, Microsoft 
 * Internet  :  kraigb@microsoft.com 
 * Compuserve:  >INTERNET:kraigb@microsoft.com 
 */ 
 
 
#ifndef _KOALA_H_ 
#define _KOALA_H_ 
 
#define CHAPTER5 
#include <inole.h> 
 
//KOALA.CPP 
 
class CKoala : public IUnknown 
    { 
    protected: 
        ULONG           m_cRef;         //Object reference count 
        LPUNKNOWN       m_pUnkOuter;    //Controlling unknown 
 
        PFNDESTROYED    m_pfnDestroy;   //To call on closure 
 
    public: 
        CKoala(LPUNKNOWN, PFNDESTROYED); 
        ~CKoala(void); 
 
        BOOL Init(void); 
 
        //Non-delegating object IUnknown 
        STDMETHODIMP         QueryInterface(REFIID, PPVOID); 
        STDMETHODIMP_(ULONG) AddRef(void); 
        STDMETHODIMP_(ULONG) Release(void); 
    }; 
 
typedef CKoala *PCKoala; 
 
#endif //_KOALA_H_