summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be_include/be_visitor_interface/amh_ss.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/TAO_IDL/be_include/be_visitor_interface/amh_ss.h')
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_interface/amh_ss.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/TAO/TAO_IDL/be_include/be_visitor_interface/amh_ss.h b/TAO/TAO_IDL/be_include/be_visitor_interface/amh_ss.h
new file mode 100644
index 00000000000..c65578519df
--- /dev/null
+++ b/TAO/TAO_IDL/be_include/be_visitor_interface/amh_ss.h
@@ -0,0 +1,47 @@
+// -*- C++ -*-
+
+//=============================================================================
+/**
+ * @file amh_ss.h
+ *
+ * $Id$
+ *
+ * Specialized interface visitor for AMH
+ *
+ * @author Darrell Brunsch <brunsch@cs.wustl.edu>
+ */
+//=============================================================================
+
+#ifndef AMH_INTERFACE_SS_H
+#define AMH_INTERFACE_SS_H
+
+
+class be_visitor_amh_interface_ss : public be_visitor_interface_ss
+{
+public:
+ be_visitor_amh_interface_ss (be_visitor_context *ctx);
+
+ int visit_interface (be_interface *node);
+ int visit_operation (be_operation *node);
+ int visit_attribute (be_attribute *node);
+
+ ~be_visitor_amh_interface_ss (void);
+
+protected:
+ virtual void this_method (be_interface *node);
+ virtual void dispatch_method (be_interface *node);
+
+ virtual void generate_send_reply (TAO_OutStream * os);
+
+ virtual int generate_amh_classes (be_interface *node);
+ virtual int generate_proxy_classes (be_interface *node);
+// virtual int generate_downcast_implementation (be_interface *node,
+// TAO_OutStream *os);
+ virtual int generate_copy_ctor (be_interface *node,
+ TAO_OutStream *os);
+ virtual ACE_CString generate_flat_name (be_interface *node);
+ virtual ACE_CString generate_local_name (be_interface *node);
+ virtual ACE_CString generate_full_skel_name (be_interface *node);
+};
+
+#endif /* AMH_INTERFACE_SS_H */