summaryrefslogtreecommitdiff
path: root/TAO/tao/RTPOA.pidl
blob: 359ec11bd26d01a25cdaa5609fc826176f423263 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
//
// $Id$
//
// ================================================================
//
// = LIBRARY
//   TAO
//
// = FILENAME
//   RTPOA.pidl
//
// = DESCRIPTION
//
//   The RTPortableServer module specified in ptc/99-05-03 (Real-Time
//   CORBA Joint Revised Submission May 28, 1999).  This file is
//   equivalent to OMG's RTPortableServer.idl.
//
//   This file was used to generate the code in
//   RTPOA{C,S,S_T}.{h,i,cpp} The command used to generate code
//   is:
//
//     tao_idl -o orig -Gp -Gd -Ge 1 -Gv \
//          -Wb,export_macro=TAO_Export \
//          -Wb,export_include=corbafwd.h \
//          -Wb,pre_include="ace/pre.h" \
//          -Wb,post_include="ace/post.h" \
//          RTPOA.pidl
//
//   after the files are generated, patches located in tao/diffs
//   directory must be applied.  The patches fix the interface
//   repository IDs, disable the code under certain configurations,
//   and eliminate cycles in the include dependencies.  Those changes
//   are required because the generated code is part of the TAO
//   library, it hardly makes any sense to change the IDL compiler to
//   support changes that are very occasional.
//
// ================================================================

#ifndef _RT_PORTABLE_SERVER_IDL_
#define _RT_PORTABLE_SERVER_IDL_

//#include <orb.idl>
#include <POA.pidl>
#include <RTCORBA.pidl>

#pragma prefix "omg.org"

module RTPortableServer
{
  interface POA : PortableServer::POA
  {
    Object create_reference_with_priority (in CORBA::RepositoryId intf,
                                           in RTCORBA::Priority priority)
    raises (WrongPolicy);

    Object create_reference_with_id_and_priority (in PortableServer::ObjectId oid,
                                                  in CORBA::RepositoryId intf,
                                                  in RTCORBA::Priority priority)
    raises (WrongPolicy);

    ObjectId activate_object_with_priority (in PortableServer::Servant p_servant,
                                            in RTCORBA::Priority priority)
    raises (ServantAlreadyActive, WrongPolicy);

    void activate_object_with_id_and_priority (in PortableServer::ObjectId oid,
                                               in PortableServer::Servant p_servant,
                                               in RTCORBA::Priority priority)
    raises ( ServantAlreadyActive, ObjectAlreadyActive, WrongPolicy );
  };
};

#pragma prefix ""

#endif /* _RT_PORTABLE_SERVER_IDL_ */