home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Windows Gam…ming Gurus (2nd Edition)
/
Disc2.iso
/
msdn_vcb
/
samples
/
vc98
/
sdk
/
com
/
inole2
/
chap02
/
reuse
/
interfac.h
< prev
next >
Wrap
C/C++ Source or Header
|
1995-05-03
|
1KB
|
52 lines
/*
* INTERFAC.H
*
* Definition of IAnimal and IKoala used to demonstrate
* reusability mechanisms.
*
* Copyright (c)1993-1995 Microsoft Corporation, All Rights Reserved
*
* Kraig Brockschmidt, Microsoft
* Internet : kraigb@microsoft.com
* Compuserve: >INTERNET:kraigb@microsoft.com
*/
#ifndef _INTERFAC_H_
#define _INTERFAC_H_
DECLARE_INTERFACE_(IAnimal, IUnknown)
{
//IUnknown members
STDMETHOD(QueryInterface) (THIS_ REFIID, PPVOID) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
//IAnimal members
STDMETHOD(Eat)(THIS) PURE;
STDMETHOD(Sleep)(THIS) PURE;
STDMETHOD(Procreate)(THIS) PURE;
};
typedef IAnimal *PANIMAL;
DECLARE_INTERFACE_(IKoala, IUnknown)
{
//IUnknown members
STDMETHOD(QueryInterface) (THIS_ REFIID, PPVOID) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
//IKoala members
STDMETHOD(ClimbEucalyptusTrees)(THIS) PURE;
STDMETHOD(PouchOpensDown)(THIS) PURE;
STDMETHOD(SleepForHoursAfterEating)(THIS) PURE;
};
typedef IKoala *PKOALA;
#endif //_INTERFAC_H_