diff options
Diffstat (limited to 'TAO/CIAO/examples/handcrafted/Philosophers/PhilosophersC.idl')
-rw-r--r-- | TAO/CIAO/examples/handcrafted/Philosophers/PhilosophersC.idl | 52 |
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 + { + }; + +}; |