summaryrefslogtreecommitdiff
path: root/modules/CIAO/ccm/CCM_Navigation.idl
diff options
context:
space:
mode:
Diffstat (limited to 'modules/CIAO/ccm/CCM_Navigation.idl')
-rw-r--r--modules/CIAO/ccm/CCM_Navigation.idl41
1 files changed, 41 insertions, 0 deletions
diff --git a/modules/CIAO/ccm/CCM_Navigation.idl b/modules/CIAO/ccm/CCM_Navigation.idl
new file mode 100644
index 00000000000..90e9abe8b71
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Navigation.idl
@@ -0,0 +1,41 @@
+/// $Id$
+/// Compliant with OMG 06-04-01 Section 6.4.3.3
+
+#if !defined (CCM_NAVIGATION_IDL)
+#define CCM_NAVIGATION_IDL
+
+#include "tao/orb_types.pidl"
+#include "tao/StringSeq.pidl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ typedef string FeatureName;
+ typedef sequence<FeatureName> NameList;
+
+ valuetype PortDescription
+ {
+ public FeatureName name;
+ public CORBA::RepositoryId type_id;
+ };
+
+ valuetype FacetDescription : PortDescription
+ {
+ public Object facet_ref;
+ };
+
+ typedef sequence<FacetDescription> FacetDescriptions;
+
+ exception InvalidName {};
+ interface Navigation
+ {
+ Object provide_facet (in FeatureName name)
+ raises (InvalidName);
+ FacetDescriptions get_all_facets();
+ FacetDescriptions get_named_facets (in NameList names)
+ raises (InvalidName);
+ boolean same_component (in Object object_ref);
+ };
+};
+#endif /* CCM_NAVIGATION_IDL */