Merge pull request #2216 from jwillemsen/jwi-cxxversionchecks
[ACE_TAO.git] / TAO / tao / Messaging / Messaging.h
blob7a3aa49b9a05de37c003f5d96965a170368d2ba2
1 // -*- C++ -*-
3 // ================================================================
4 /**
5 * @file Messaging.h
7 * Include all the required headers to use CORBA Messaging easily.
9 * @author Carlos O'Ryan <coryan@uci.edu>
11 // ================================================================
13 #ifndef TAO_MESSAGING_H
14 #define TAO_MESSAGING_H
16 #include /**/ "ace/pre.h"
18 #include "tao/Messaging/messaging_export.h"
20 #define TAO_MESSAGING_SAFE_INCLUDE
21 #include "tao/Messaging/MessagingC.h"
22 #undef TAO_MESSAGING_SAFE_INCLUDE
24 #include "tao/Messaging/MessagingA.h"
25 #include "tao/Messaging/TAO_ExtC.h"
26 #include "tao/Policy_CurrentC.h"
27 #include "tao/Policy_ManagerC.h"
28 #include "tao/TAOC.h"
30 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
32 class TAO_Messaging_Export TAO_Messaging_Initializer
34 public:
35 /// Used to force the initialisation of the ORB code.
36 static int init ();
39 static const int TAO_Requires_Messaging_Initializer = TAO_Messaging_Initializer::init ();
41 enum TAO_AMI_Reply_Status
43 /// Reply is normal.
44 TAO_AMI_REPLY_OK,
46 /// Reply is not normal and no exceptions
47 TAO_AMI_REPLY_NOT_OK,
49 /// An user exception was raised.
50 TAO_AMI_REPLY_USER_EXCEPTION,
52 /// An system exception was raised.
53 TAO_AMI_REPLY_SYSTEM_EXCEPTION,
55 /// A location forward exception was raised.
56 TAO_AMI_REPLY_LOCATION_FORWARD,
58 /// A location forward perm exception was raised.
59 TAO_AMI_REPLY_LOCATION_FORWARD_PERM
62 class TAO_InputCDR;
64 /// Typedef for the Reply Handler Skeleton.
65 /// This is handcrafted not generated by the IDL compiler.
66 typedef void (*TAO_Reply_Handler_Stub)(
67 TAO_InputCDR &,
68 Messaging::ReplyHandler_ptr,
69 CORBA::ULong reply_status);
71 TAO_END_VERSIONED_NAMESPACE_DECL
73 #include /**/ "ace/post.h"
74 #endif /* TAO_MESSAGING_H */