summaryrefslogtreecommitdiff
path: root/ACE/TAO/tao/Policy.pidl
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/TAO/tao/Policy.pidl')
-rw-r--r--ACE/TAO/tao/Policy.pidl82
1 files changed, 82 insertions, 0 deletions
diff --git a/ACE/TAO/tao/Policy.pidl b/ACE/TAO/tao/Policy.pidl
new file mode 100644
index 00000000000..16bcb9d0959
--- /dev/null
+++ b/ACE/TAO/tao/Policy.pidl
@@ -0,0 +1,82 @@
+/**
+ * @file Policy.pidl
+ *
+ * $Id$
+ *
+ * @brief Pre-compiled IDL source for the CORBA::Policy related
+ * classes.
+ *
+ * This file is used to generate the code in PolicyC.{h,inl,cpp}.
+ * Also, skeleton code for the only non local Policy interface is
+ * generated from this pidl file and then the declaration code is
+ * moved to tao/PortableServer/PolicyS.{h,inl,cpp}
+ *
+ * The steps to regenerate the code are as follows:
+ *
+ * 1. Run the tao_idl compiler on the patched pidl file. The
+ * command used for this is:
+ *
+ * tao_idl.exe
+ * -o orig -Gp -Gd -GA -Ssi
+ * -Wb,stub_export_macro=TAO_Export
+ * -Wb,stub_export_include="tao/TAO_Export.h"
+ * -Wb,skel_export_macro=TAO_PortableServer_Export
+ * -Wb,skel_export_include=portableserver_export.h
+ * -Wb,pre_include="ace/pre.h"
+ * -Wb,post_include="ace/post.h"
+ * Policy.pidl
+ *
+ * 2. Then patch the generated code using patches in
+ * diff/Policy.diff. To patch the generated code in
+ * PortableServer look for diffs in PortableServer/diffs
+ * directory.
+ *
+ * Note: The diffs were generated with these commands:
+ *
+ * for i in PolicyC.{h,i,cpp}; do
+ * diff -wBbu orig/$i $i;
+ * done > diffs/Policy.diff
+ * for i in Policy{S,S_T}.{h,i,cpp}; do
+ * diff -wBbu orig/$i PortableServer/$i;
+ * done >> diffs/Policy.diff
+ */
+
+#ifndef TAO_CORBA_POLICY_PIDL
+#define TAO_CORBA_POLICY_PIDL
+
+#include "tao/UShortSeq.pidl"
+#include "tao/Current.pidl"
+#include "tao/Policy_Forward.pidl"
+
+#pragma prefix "omg.org"
+
+module CORBA
+{
+ typedef short PolicyErrorCode;
+ const PolicyErrorCode BAD_POLICY = 0;
+ const PolicyErrorCode UNSUPPORTED_POLICY = 1;
+ const PolicyErrorCode BAD_POLICY_TYPE = 2;
+ const PolicyErrorCode BAD_POLICY_VALUE = 3;
+ const PolicyErrorCode UNSUPPORTED_POLICY_VALUE = 4;
+
+ exception PolicyError
+ {
+ PolicyErrorCode reason;
+ };
+
+ exception InvalidPolicies
+ {
+ UShortSeq indices;
+ };
+
+ interface Policy
+ {
+ readonly attribute PolicyType policy_type;
+ Policy copy ();
+ void destroy ();
+ };
+};
+
+#pragma prefix ""
+
+#endif /* TAO_CORBA_POLICY_PIDL */