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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
// $Id$
#include "be_connector.h"
#include "be_visitor.h"
#include "utl_identifier.h"
be_connector::be_connector (
UTL_ScopedName *n,
AST_Connector *base_connector)
: COMMON_Base (false,
false),
AST_Decl (AST_Decl::NT_connector,
n),
AST_Type (AST_Decl::NT_connector,
n),
UTL_Scope (AST_Decl::NT_connector),
AST_Interface (n,
0,
0,
0,
0,
false,
false),
AST_Component (n,
base_connector,
0,
0,
0,
0),
AST_Connector (n,
base_connector),
be_scope (AST_Decl::NT_connector),
be_decl (AST_Decl::NT_connector,
n),
be_type (AST_Decl::NT_connector,
n),
be_interface (n,
0,
0,
0,
0,
false,
false),
be_component (n,
base_connector,
0,
0,
0,
0),
dds_connector_ (false),
ami_connector_ (false)
{
if (! this->imported ())
{
this->check_ancestors ();
}
}
be_connector::~be_connector (void)
{
}
void
be_connector::destroy (void)
{
this->AST_Connector::destroy ();
this->be_component::destroy ();
}
int
be_connector::accept (be_visitor *visitor)
{
return visitor->visit_connector (this);
}
bool
be_connector::dds_connector (void)
{
return this->dds_connector_;
}
bool
be_connector::ami_connector (void)
{
return this->ami_connector_;
}
void
be_connector::check_ancestors (void)
{
/// Start from derived connector since we are no longer
/// (2010-05-05) putting derived DDS4CCM connector declarations
/// in application IDL.
AST_Connector *base = this;
while (base != 0)
{
const char *base_fname = base->full_name ();
if (ACE_OS::strcmp (base_fname, "CCM_DDS::DDS_TopicBase") == 0)
{
this->dds_connector_ = true;
idl_global->dds_connector_seen_ = true;
break;
}
else if (ACE_OS::strcmp (base_fname, "CCM_AMI::AMI4CCM_Base") == 0)
{
this->ami_connector_ = true;
idl_global->ami_connector_seen_ = true;
break;
}
base = base->base_connector ();
}
}
IMPL_NARROW_FROM_DECL (be_connector)
IMPL_NARROW_FROM_SCOPE (be_connector)
|