summaryrefslogtreecommitdiff
path: root/TAO/CIAO/examples/handcrafted/Philosophers/PhilosophersC.idl
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/CIAO/examples/handcrafted/Philosophers/PhilosophersC.idl')
-rw-r--r--TAO/CIAO/examples/handcrafted/Philosophers/PhilosophersC.idl52
1 files changed, 52 insertions, 0 deletions
diff --git a/TAO/CIAO/examples/handcrafted/Philosophers/PhilosophersC.idl b/TAO/CIAO/examples/handcrafted/Philosophers/PhilosophersC.idl
new file mode 100644
index 00000000000..d9f7e53f79b
--- /dev/null
+++ b/TAO/CIAO/examples/handcrafted/Philosophers/PhilosophersC.idl
@@ -0,0 +1,52 @@
+// $Id$
+
+// Hand-drafted IDL files for component testing.
+// tao_idl -Gv -I W:/ACE_wrappers/TAO -I W:/ACE_wrappers/TAO/orbsvcs/orbsvcs -I W:/ACE_wrappers/TAO/CIAO/ciao Philosophers.idl
+
+#include "Component_Base.idl"
+
+module Example
+{
+
+ exception InUse {};
+
+ interface Fork
+ /**
+ * Provided facet interface definition.
+ * It should be defined by the IDL file.
+ */
+ {
+ void get () raises (InUse);
+
+ void release ();
+ };
+
+ // ****************************************
+ // Client Side Equivalent Interfaces
+ // ****************************************
+
+ // component ForkManager
+ interface ForkManager // : ::Components::CCMObject
+ /**
+ * Client side equivalent interface.
+ * Must inherit from Components::CCMObject instead of CORBA::Object.
+ */
+ {
+ // provides Fork the_fork;
+ Fork provide_the_fork ();
+ };
+
+ // home ForkHome manages ForkManager
+ interface ForkHomeExplicit // : ::Components::CCMHome
+ {};
+
+ interface ForkHomeImplicit // : ::Components::KeylessCCMHome
+ {
+ ForkManager create ();
+ };
+
+ interface ForkHome : ForkHomeExplicit, ForkHomeImplicit
+ {
+ };
+
+};