1 #include "IF_EXE_M_R_StructsC.h"
2 #include "ace/Get_Opt.h"
3 #include "ace/OS_NS_string.h"
5 const ACE_TCHAR
*ior
= ACE_TEXT ("file://test.ior");
8 parse_args (int argc
, ACE_TCHAR
*argv
[])
10 ACE_Get_Opt
get_opts (argc
, argv
, ACE_TEXT("k:"));
13 while ((c
= get_opts ()) != -1)
17 ior
= get_opts
.opt_arg ();
22 ACE_ERROR_RETURN ((LM_ERROR
,
29 // Indicates successful parsing of the command line
34 CORBA::ORB_var m_ORB_p
;
40 foo (int argc
, ACE_TCHAR
*argv
[], bool shutdown
)
42 IF_EXE_M_R::IF_ExeCtrlData_var client
;
43 IF_EXE_M_R::Test_Struct ts
;
44 IF_EXE_M_R::CORBA_BaseFOOG FOOG
;
45 IF_EXE_M_R::CORBA_FOOIInPlan bs
;
47 FOOG
.FOOD
= IF_EXE_M_R::ENUM_FOOD (0);
48 FOOG
.FOOIID
= CORBA::string_dup ("A_FOOG");
49 ACE_OS::memset (&FOOG
.startPosition
,
50 0, sizeof(IF_EXE_M_R::CORBA_LatLongFOOB
));
51 ACE_OS::memset (&FOOG
.endPosition
,
52 0, sizeof(IF_EXE_M_R::CORBA_LatLongFOOB
));
53 FOOG
.FOOBReferenceStartPosition
= IF_EXE_M_R::FOOBMode_E (0);
54 FOOG
.averageFOOHFOOB
= 0.0;
55 FOOG
.FOOBControlMode
= IF_EXE_M_R::ENUM_ControlMode (0);
56 FOOG
.datasetVersion
= 1L;
57 FOOG
.maxHorizontalFOOU
= 0L;
58 FOOG
.maxVerticalFOOU
= 0L;
59 FOOG
.FOOTDistance
= 0.0;
61 FOOG
.FOOTDuration
= 0.0;
63 FOOG
.FOOTEnergyConsum
= 0.0;
64 FOOG
.FOOAReference
= IF_EXE_M_R::FOOAMode_E (0);
65 FOOG
.FOOAControlMode
= IF_EXE_M_R::ENUM_ControlMode (0);
66 FOOG
.FOOBReferenceEndPosition
= IF_EXE_M_R::FOOBMode_E (0);
67 FOOG
.economyMode
= IF_EXE_M_R::ENUM_Selection (0);
68 FOOG
.cl_FOOSMode
= IF_EXE_M_R::ENUM_CL_FOOSMode (0);
69 FOOG
.transitionStatus
= IF_EXE_M_R::ENUM_TransitionStatus (0);
70 FOOG
.FOOKTypeStart
= IF_EXE_M_R::ENUM_FOOKType (0);
71 FOOG
.activeComponents
.length (0);
72 FOOG
.FOOKTypeEnd
= IF_EXE_M_R::ENUM_FOOKType (0);
74 bs
.type
= IF_EXE_M_R::BASE_FOOG
;
75 bs
.data
.FOOVFOOG (FOOG
);
82 if (parse_args (argc
, argv
) != 0)
85 CORBA::Object_var obj
= m_ORB_p
->string_to_object (ior
);
86 if (CORBA::is_nil (obj
.in ()))
88 ACE_ERROR_RETURN ((LM_DEBUG
,
89 "Nil Test::Hello reference <%s>\n",
93 ACE_DEBUG ((LM_DEBUG
, "RepositoryID: %s\n", obj
->_interface_repository_id()));
94 client
= IF_EXE_M_R::IF_ExeCtrlData::_narrow (obj
.in ());
95 if (CORBA::is_nil (client
.in ()))
97 ACE_ERROR_RETURN ((LM_DEBUG
,
98 "Reference is not of type IF_EXE_M_R::IF_ExeCtrlData\n"),
108 catch (const CORBA::Exception
&ex
)
110 ex
._tao_print_exception ("Exception caught:");
117 ACE_TMAIN (int argc
, ACE_TCHAR
*argv
[])
122 m_ORB_p
= CORBA::ORB_init (argc
, argv
);
123 IF_Test_client testclient
;
125 for (int i
= 0; i
< 10; i
++)
127 retval
+= testclient
.foo (argc
, argv
, i
== 9);
130 catch (const ::CORBA::Exception
&ex
)
132 ex
._tao_print_exception("ERROR : unexpected CORBA exception caugth :");