Export (0) Print
Expand All

transmit_as

Instructs the compiler to associate a presented type that client and server applications manipulate, with a transmitted type.

[ transmit_as(
   type
) ]

Parameter

type
Specifies the data type that is transmitted between client and server.

Attribute Context

Applies to typedef
Repeatable No
Required attributes None
Invalid attributes None

For more information about the attribute contexts, see Attribute Contexts.

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;

See Also

IDL Attributes | Typedef, Enum, Union, and Struct Attributes | export | Attributes Samples

Show:
© 2015 Microsoft