diff options
Diffstat (limited to 'TAO/orbsvcs/tests/AVStreams/Latency/control.cpp')
-rw-r--r-- | TAO/orbsvcs/tests/AVStreams/Latency/control.cpp | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/TAO/orbsvcs/tests/AVStreams/Latency/control.cpp b/TAO/orbsvcs/tests/AVStreams/Latency/control.cpp index f55cc39902d..0cec49350d2 100644 --- a/TAO/orbsvcs/tests/AVStreams/Latency/control.cpp +++ b/TAO/orbsvcs/tests/AVStreams/Latency/control.cpp @@ -12,11 +12,14 @@ const char *ping_ior = "file://ping.ior"; const char *pong_ior = "file://pong.ior"; const char *ping_address = "224.9.9.2:12345"; const char *pong_address = "224.9.9.2:23456"; +const char *protocol = "UDP"; + +int milliseconds = 30000; int parse_args (int argc, char *argv[]) { - ACE_Get_Opt get_opts (argc, argv, "f:g:s:r:"); + ACE_Get_Opt get_opts (argc, argv, "f:g:s:r:t:p:"); int c; while ((c = get_opts ()) != -1) @@ -30,14 +33,22 @@ parse_args (int argc, char *argv[]) pong_ior = get_opts.optarg; break; - case 's': + case 'r': ping_address = get_opts.optarg; break; - case 'r': + case 's': pong_address = get_opts.optarg; break; + case 't': + milliseconds = ACE_OS::atoi (get_opts.optarg); + break; + + case 'p': + protocol = get_opts.optarg; + break; + case '?': default: ACE_ERROR_RETURN ((LM_ERROR, @@ -46,6 +57,8 @@ parse_args (int argc, char *argv[]) "-g <ping_ior> " "-s <ping_address> " "-r <pong_address> " + "-t <milliseconds> " + "-p protocols " "\n", argv [0]), -1); @@ -64,6 +77,8 @@ int main (int argc, char *argv[]) av_core->init (argc, argv, ACE_TRY_ENV); ACE_TRY_CHECK; + parse_args (argc, argv); + TAO_ORB_Manager* orb_manager = av_core->orb_manager (); @@ -94,7 +109,7 @@ int main (int argc, char *argv[]) "IN", "UNS:ping", "", - "UDP", + protocol, &ping_addr); flow_spec[0] = CORBA::string_dup (ping.entry_to_string ()); @@ -104,12 +119,12 @@ int main (int argc, char *argv[]) "OUT", "UNS:pong", "", - "UDP", + protocol, &pong_addr); flow_spec[1] = CORBA::string_dup (pong.entry_to_string ()); TAO_StreamCtrl stream_control_impl; - + AVStreams::StreamCtrl_var stream_control = stream_control_impl._this (ACE_TRY_ENV); ACE_TRY_CHECK; @@ -142,7 +157,7 @@ int main (int argc, char *argv[]) stream_control->start (flow_spec, ACE_TRY_ENV); ACE_TRY_CHECK; - ACE_Time_Value tv (10, 0); + ACE_Time_Value tv (0, milliseconds * 1000); if (orb->run (tv) == -1) ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "orb->run"), -1); ACE_DEBUG ((LM_DEBUG, "event loop finished\n")); @@ -151,8 +166,8 @@ int main (int argc, char *argv[]) stream_control->stop (flow_spec, ACE_TRY_ENV); ACE_TRY_CHECK; - root_poa->destroy (1, 1, ACE_TRY_ENV); - ACE_TRY_CHECK; + // root_poa->destroy (1, 1, ACE_TRY_ENV); + // ACE_TRY_CHECK; } ACE_CATCHANY { |