//+------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1992 - 1992. // // File: crpctyp.hxx // // Contents: test basice rpc method calls // // Classes: CRpcTypes // // History: 06-Aug-92 Ricksa Created // //-------------------------------------------------------------------------- #ifndef __RPCTYPES__ #define __RPCTYPES__ #include #include // interface definition extern "C" const GUID CLSID_RpcTypes; //+------------------------------------------------------------------------- // // Class: CRpcTypes // // Purpose: Class to test parameter passing in ole proxies // // Interface: QueryInterface // AddRef // Release // // History: 06-Aug-92 Ricksa Created // //-------------------------------------------------------------------------- class CRpcTypes : INHERIT_TRACKING, public IRpcTypes { public: CRpcTypes(void); STDMETHOD(QueryInterface)(REFIID riid, void **ppunk); DECLARE_STD_REFCOUNTING; // IRpcTypes methods STDMETHOD(GuidsIn)( REFCLSID rclsid, CLSID clsid, REFIID riid, IID iid, GUID guid); STDMETHOD(GuidsOut)( CLSID *pclsid, IID *piid, GUID *pguid); STDMETHOD(DwordIn)( DWORD dw, ULONG ul, LONG lg, LARGE_INTEGER li, ULARGE_INTEGER uli); STDMETHOD(DwordOut)( DWORD *pdw, ULONG *pul, LONG *plg, LARGE_INTEGER *pli, ULARGE_INTEGER *puli); STDMETHOD(WindowsIn)( POINTL pointl, SIZEL sizel, RECTL rectl, FILETIME filetime, PALETTEENTRY paletentry, LOGPALETTE *plogpalet); STDMETHOD(WindowsOut)( POINTL *ppointl, SIZEL *psizel, RECTL *prectl, FILETIME *pfiletime, PALETTEENTRY *ppaletentry, LOGPALETTE **pplogpalet); STDMETHOD(OleStgmedIn)(STGMEDIUM *pstgmedium); STDMETHOD(OleStgmedOut)(STGMEDIUM *pstgmedium); STDMETHOD(OleClipFmtIn)(STGMEDIUM *pstgmedium); STDMETHOD(OleClipFmtOut)(STGMEDIUM *pstgmedium); STDMETHOD(OleStatdataOut)(STATDATA **ppstatdata); STDMETHOD(OleStatStgOut)(STATSTG *pstatstg); STDMETHOD(OleFormatEtcIn)(FORMATETC *pformatetc); STDMETHOD(OleFormatEtcOut)(FORMATETC *pformatetc); STDMETHOD(OleDvTargetIn)(DVTARGETDEVICE *pdvtargetdevice); STDMETHOD(OleVerbIn)(OLEVERB *poleverb); STDMETHOD(OleMenuIn)(OLEMENUGROUPWIDTHS *pmenugroup); STDMETHOD(OleFrameOut)(OLEINPLACEFRAMEINFO *pframeinfo); STDMETHOD(OleSnbIn)(SNB snb); STDMETHOD(VoidPtrIn)( ULONG cb, void *pv); STDMETHOD(VoidPtrOut)( void *pv, ULONG cb, ULONG *pcb); private: ~CRpcTypes(void); }; #endif // __RPCTYPES__