transmit_as
Instructs the compiler to associate a presented type that client and server applications manipulate, with a transmitted type.
Syntax
[ transmit_as(type) ]
Parameters
type
Specifies the data type that is transmitted between client and server.
Remarks
The transmit_as C++ attribute has the same functionality as the transmit_as MIDL attribute.
Example
The following code shows a use of the transmit_as attribute:
// cpp_attr_ref_transmit_as.cpp
// compile with: /LD
#include "windows.h"
[module(name="MyLibrary")];
[export] typedef struct _TREE_NODE_TYPE {
unsigned short data;
struct _TREE_NODE_TYPE * left;
struct _TREE_NODE_TYPE * right;
} TREE_NODE_TYPE;
[export] struct PACKED_NODE {
unsigned short data; // same as normal node
int index; // array index of parent
};
// A left node recursive built array of
// the nodes in the tree. Can be unpacked with
// that knowledge
[export] typedef struct _TREE_XMIT_TYPE {
int count;
[size_is(count)] PACKED_NODE node[];
} TREE_XMIT_TYPE;
[transmit_as(TREE_XMIT_TYPE)] typedef TREE_NODE_TYPE * TREE_TYPE;
Requirements
Attribute context | Value |
---|---|
Applies to | typedef |
Repeatable | No |
Required attributes | None |
Invalid attributes | None |
For more information about the attribute contexts, see Attribute Contexts.
See also
IDL Attributes
Typedef, Enum, Union, and Struct Attributes
export