blob: 5b80fc0d25d925d7fedc88e2bacd93c1179ba316 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
//
// $Id$
//
#ifndef TAO_RTEC_DEFAULTEVENTPAYLOAD_IDL
#define TAO_RTEC_DEFAULTEVENTPAYLOAD_IDL
#pragma prefix ""
typedef sequence<octet> EventPayload;
struct RtecEventData
{
#ifndef TAO_LACKS_EVENT_CHANNEL_OCTET_SEQUENCE
long pad1;
// This two objects ensure that the encapsulated stream below is
// properly aligned; this makes the decoding of the payload more
// efficient because we can use the usual demarshalling code
// (without making extra copies).
// This is how this works:
// - The last field in the header is an 8-byte unsigned long, hence
// the header finishes on an 8 byte boundary.
// - The pad1 long has 4 bytes.
// - The length in the octet sequence adds another 4 bytes.
// - Thus the data in the octet sequence starts on an 8 bytes
// boundary too.
EventPayload payload;
#endif /* TAO_LACKS_EVENT_CHANNEL_OCTET_SEQUENCE */
#ifndef TAO_LACKS_EVENT_CHANNEL_ANY
any any_value;
#endif /* TAO_LACKS_EVENT_CHANNEL_ANY */
};
#pragma prefix ""
#endif /* TAO_RTEC_DEFAULTEVENTPAYLOAD_IDL */
|