summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be_include/be_visitor_component/context_svts.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/TAO_IDL/be_include/be_visitor_component/context_svts.h')
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_component/context_svts.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/TAO/TAO_IDL/be_include/be_visitor_component/context_svts.h b/TAO/TAO_IDL/be_include/be_visitor_component/context_svts.h
new file mode 100644
index 00000000000..77d23ec62c8
--- /dev/null
+++ b/TAO/TAO_IDL/be_include/be_visitor_component/context_svts.h
@@ -0,0 +1,49 @@
+/* -*- c++ -*- */
+//=============================================================================
+/**
+ * @file context_svs.h
+ *
+ * $Id$
+ *
+ * Concrete visitor for the Component node.
+ * This provides for code generation for the Context
+ * class definition
+ *
+ *
+ * @author Jeff Parsons
+ */
+//=============================================================================
+
+#ifndef _BE_COMPONENT_CONTEXT_SVS_H_
+#define _BE_COMPONENT_CONTEXT_SVS_H_
+
+/**
+ * @class be_visitor_context_svts
+ *
+ * @brief be_visitor_context_svts
+ *
+ * This is a concrete visitor to generate the context class defn
+ * for a component.
+ */
+class be_visitor_context_svts : public be_visitor_component_scope
+{
+public:
+ be_visitor_context_svts (be_visitor_context *ctx);
+
+ ~be_visitor_context_svts (void);
+
+ virtual int visit_component (be_component *node);
+ virtual int visit_connector (be_connector *node);
+ virtual int visit_uses (be_uses *node);
+ virtual int visit_publishes (be_publishes *node);
+ virtual int visit_emits (be_emits *node);
+
+private:
+ void gen_uses_simplex (AST_Type *obj,
+ const char *port_name);
+ void gen_uses_multiplex (AST_Type *obj,
+ const char *port_name);
+};
+
+#endif /* _BE_COMPONENT_CONTEXT_SVS_H_ */
+