summaryrefslogtreecommitdiff
path: root/CIAO/CIDLC/InterfaceEmitter.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'CIAO/CIDLC/InterfaceEmitter.hpp')
-rw-r--r--CIAO/CIDLC/InterfaceEmitter.hpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/CIAO/CIDLC/InterfaceEmitter.hpp b/CIAO/CIDLC/InterfaceEmitter.hpp
new file mode 100644
index 00000000000..fdd2411f912
--- /dev/null
+++ b/CIAO/CIDLC/InterfaceEmitter.hpp
@@ -0,0 +1,30 @@
+// file : CIDLC/InterfaceEmitter.hpp
+// author : Jeff Parsons <j.parsons@vanderbilt.edu>
+// cvs-id : $Id$
+
+#ifndef INTERFACEEMITTER_HPP
+#define INTERFACEEMITTER_HPP
+
+#include "CCF/CIDL/SemanticGraph.hpp"
+#include "CCF/CIDL/Traversal.hpp"
+
+#include "EmitterBase.hpp"
+
+using namespace CCF::CIDL;
+using namespace CCF::CIDL::SemanticGraph;
+
+struct InterfaceEmitter : Traversal::UnconstrainedInterface,
+ EmitterBase
+{
+ InterfaceEmitter (Context& c);
+
+ virtual void traverse (UnconstrainedInterface&);
+
+private:
+ bool add (UnconstrainedInterface&);
+
+private:
+ std::set<UnconstrainedInterface*> interfaces_;
+};
+
+#endif // INTERFACEEMITTER_HPP