NT4/private/dcomidl/iface.idl
2020-09-30 17:12:29 +02:00

60 lines
1.9 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//+---------------------------------------------------------------------------
//
// Copyright (C) 1992, Microsoft Corporation.
//
// File: iface.idl
//
// Contents: Public definitions used for xmiting interfaces via RPC
//
// History: 28-Jan-93 Ricksa Created.
//
// Notes: These definitions are used for transmitting interfaces
// via RPC.
//
//----------------------------------------------------------------------------
[ uuid(5C0EB534-BF9F-101A-8818-02608C4D2359),
version(0.1),
pointer_default(unique)
]
interface XmitDefs
{
import "wtypes.idl";
typedef struct
{
DWORD callcat; // CALLCATEGORY
DWORD dwClientThread;
} LOCALTHIS;
// CALLCATEGORY is used internally and represents the categories of calls
// that can be made.
// DCOMWORK - Get rid of the unused internal types.
typedef enum tagCALLCATEGORY
{
CALLCAT_NOCALL = 0, // no call in progress
CALLCAT_SYNCHRONOUS = 1, // normal sychornous call
CALLCAT_ASYNC = 2, // asynchronous call
CALLCAT_INPUTSYNC = 3, // input-synchronous call
CALLCAT_INTERNALSYNC = 4, // internal ssync call
CALLCAT_INTERNALINPUTSYNC = 5, // internal inputssync call
CALLCAT_SCMCALL = 6 // important scm call
} CALLCATEGORY;
// wire representation of an entire interface. used for wrapping a
// marshalled interface in a stream representation CXmitRpcStream.
typedef struct tagInterfaceData
{
ULONG ulCntData; // size of data
[length_is(ulCntData)] BYTE abData[1024]; // data BUGBUG: sizeis()
} InterfaceData;
typedef [unique] InterfaceData * PInterfaceData;
#pragma midl_echo("// BUGBUG: until the length_is midl option is fixed, we ")
#pragma midl_echo("// have a different computation for the size of the IFD.")
#pragma midl_echo("#define IFD_SIZE(pIFD) (sizeof(InterfaceData) + pIFD->ulCntData - 1024)")
}