blob: e163e7a26bd1d95dc96907b26aaaa554ba855f04 (
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
// -*- IDL -*-
// ================================================================
/**
* @file TAO.pidl
*
* $Id$
*
* This file contains TAO-specific idl interfaces (not part of CORBA
* 2.6).
*
* The steps to regenerate the code are as follows:
*
* 1. Run the tao_idl compiler on the pidl file. The command used for
* this is:
*
* tao_idl
* -o orig -Gp -Gd -Ge 1 -Gv -DCORBA3
* -Wb,export_macro=TAO_Export
* -Wb,pre_include="ace/pre.h"
* -Wb,post_include="ace/post.h"
* -Wb,export_include="tao/corbafwd.h" TAO.pidl
*
* 2. Then patch the generated code. The patch fixes the interface
* repository IDs, disables the code under certain configurations,
* and eliminates cycles in the include dependencies.
*
* Apply patches using the following commands:
*
* patch < diffs/TAOC.h.diff
* patch < diffs/TAOC.i.diff
* patch < diffs/TAOC.cpp.diff
*
* @note The diffs were generated with these commands:
*
* diff -wBbu orig/TAOC.h TAOC.h > diffs/TAOC.h.diff
* diff -wBbu orig/TAOC.i TAOC.i > diffs/TAOC.i.diff
* diff -wBbu orig/TAOC.cpp TAOC.cpp > diffs/TAOC.cpp.diff
*/
// ================================================================
#ifndef TAO_TAO_IDL
#define TAO_TAO_IDL
#include "Policy.pidl"
#include "TimeBase.pidl"
#include "Messaging_SyncScope.pidl"
#pragma prefix "tao"
module TAO
{
//
// Buffering constraint.
//
typedef unsigned short BufferingConstraintMode;
const BufferingConstraintMode BUFFER_FLUSH = 0x00;
// Note that timeout, message_count, and message_bytes can be or'd.
const BufferingConstraintMode BUFFER_TIMEOUT = 0x01;
const BufferingConstraintMode BUFFER_MESSAGE_COUNT = 0x02;
const BufferingConstraintMode BUFFER_MESSAGE_BYTES = 0x04;
struct BufferingConstraint
{
BufferingConstraintMode mode;
TimeBase::TimeT timeout;
unsigned long message_count;
unsigned long message_bytes;
};
const CORBA::PolicyType BUFFERING_CONSTRAINT_POLICY_TYPE = 0x54410001;
local interface BufferingConstraintPolicy : CORBA::Policy
{
readonly attribute BufferingConstraint buffering_constraint;
};
// = TAO specific.
const Messaging::SyncScope SYNC_EAGER_BUFFERING = Messaging::SYNC_NONE;
const Messaging::SyncScope SYNC_DELAYED_BUFFERING = -2;
};
#pragma prefix ""
#endif /* TAO_TAO_IDL */
|