Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / tests / NestedUpcall / Triangle_Test / initiator.h
blobad059a2ddcc49f7b4a9b41fb120f242fdd80e3f7
2 //=============================================================================
3 /**
4 * @file initiator.h
6 * This class implements a simple server for the
7 * Nested Upcalls - Triangle test
9 * @author Michael Kircher
11 //=============================================================================
14 #ifndef _TRIANGLE_TEST_INITITATOR_SERVER_H
15 #define _TRIANGLE_TEST_INITITATOR_SERVER_H
17 #include "ace/Get_Opt.h"
19 #if !defined (ACE_LACKS_PRAGMA_ONCE)
20 # pragma once
21 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 #include "ace/Log_Msg.h"
24 #include "tao/Utils/ORB_Manager.h"
25 #include "Initiator_i.h"
27 /**
28 * @class Initiator_Server
30 * @brief This is the server for the Initiator in the test.
32 * See the README file for more information.
34 class Initiator_Server
37 public:
39 /// Default constructor
40 Initiator_Server (void);
42 /// Destructor
43 ~Initiator_Server (void);
45 /// read in the IOR's for the two objects A and B
46 int read_ior (ACE_TCHAR *filename, unsigned int A_B);
48 /// Initialize the Initiator_Server state - parsing arguments and ...
49 int init (int argc,
50 ACE_TCHAR **argv);
52 /// Run the orb
53 int run (void);
55 private:
56 /// Parses the commandline arguments.
57 int parse_args (void);
59 /// The IOR of object A
60 char * object_A_key_;
62 /// The IOR of object B
63 char * object_B_key_;
65 /// reference to object A
66 Object_A_var object_A_var_;
68 /// reference to object B
69 Object_B_var object_B_var_;
71 /// The ORB manager
72 TAO_ORB_Manager orb_manager_;
74 /// Implementation object of the Initiator
75 Initiator_i *initiator_i_ptr_;
77 /// Number of commandline arguments.
78 int argc_;
80 /// commandline arguments.
81 ACE_TCHAR **argv_;
83 /// IOR of my servant.
84 CORBA::String_var str_;
87 #endif /* _TRIANGLE_TEST_INITITATOR_SERVER_H */