diff options
Diffstat (limited to 'examples/Bounded_Packet_Relay/bpr_thread.cpp')
-rw-r--r-- | examples/Bounded_Packet_Relay/bpr_thread.cpp | 131 |
1 files changed, 0 insertions, 131 deletions
diff --git a/examples/Bounded_Packet_Relay/bpr_thread.cpp b/examples/Bounded_Packet_Relay/bpr_thread.cpp deleted file mode 100644 index b0f1ac930e1..00000000000 --- a/examples/Bounded_Packet_Relay/bpr_thread.cpp +++ /dev/null @@ -1,131 +0,0 @@ -// $Id$ - -// ============================================================================ -// -// = LIBRARY -// examples -// -// = FILENAME -// bpr_thread.cpp -// -// = DESCRIPTION -// Exercises drivers for a bounded packet relay, based on threaded timer queues. -// -// = AUTHORS -// Chris Gill <cdgill@cs.wustl.edu> and -// Douglas C. Schmidt <schmidt@cs.wustl.edu> -// -// Based on the Timer Queue Test example written by -// -// Carlos O'Ryan <coryan@cs.wustl.edu> and -// Douglas C. Schmidt <schmidt@cs.wustl.edu> and -// Sergio Flores-Gaitan <sergio@cs.wustl.edu> -// -// ============================================================================ - -// The following #pragma is needed to disable a warning that occurs -// in MSVC 6 due to the overly long debugging symbols generated for -// the std::auto_ptr<Timer_Queue_Test_Driver<...> > template -// instance used by some of the methods in this file. -#ifdef _MSC_VER -# pragma warning(disable: 4786) /* identifier was truncated to '255' - characters in the browser - information */ -#endif /* _MSC_VER */ - -#include "ace/Auto_Ptr.h" -#include "Thread_Bounded_Packet_Relay.h" - -ACE_RCSID (Bounded_Packet_Relay, - bpr_thread, - "$Id$") - -typedef Bounded_Packet_Relay_Driver<Thread_Timer_Queue> - THREAD_BOUNDED_PACKET_RELAY_DRIVER; - -typedef ACE_Command_Callback<Bounded_Packet_Relay,Bounded_Packet_Relay::ACTION> - INPUT_CALLBACK; - -// A snippet from Andrew Marvell (Oliver Cromwell's poet laureate) -static const char input_text [] = -"But ever at my back I hear\n" -" Time's winged chariot hurrying near."; - -int -main (int, char *[]) -{ - // Construct a new thread manager for the input device task. Auto - // ptr ensures memory is freed when we exit this scope. - ACE_Thread_Manager *input_task_mgr; - ACE_NEW_RETURN (input_task_mgr, - ACE_Thread_Manager, - -1); - auto_ptr <ACE_Thread_Manager> mgr (input_task_mgr); - - // Construct a new input device wrapper. Auto ptr ensures memory is - // freed when we exit this scope. - Text_Input_Device_Wrapper *input_device; - ACE_NEW_RETURN (input_device, - Text_Input_Device_Wrapper (input_task_mgr, - sizeof (input_text), - input_text), - -1); - auto_ptr <Text_Input_Device_Wrapper> input (input_device); - - // Construct a new output device wrapper. Auto ptr ensures memory - // is freed when we exit this scope. - Text_Output_Device_Wrapper *output_device; - ACE_NEW_RETURN (output_device, - Text_Output_Device_Wrapper, - -1); - auto_ptr <Text_Output_Device_Wrapper> output (output_device); - - // Construct a new bounded packet relay. Auto ptr ensures memory is - // freed when we exit this scope. - Bounded_Packet_Relay *packet_relay; - ACE_NEW_RETURN (packet_relay, - Bounded_Packet_Relay (input_task_mgr, - input_device, - output_device), - -1); - auto_ptr <Bounded_Packet_Relay> relay (packet_relay); - - // Construct a receive input callback command for the relay, and register - // it with the input device. Auto ptr ensures memory is freed when we exit - // this scope. - INPUT_CALLBACK *input_callback; - ACE_NEW_RETURN (input_callback, - INPUT_CALLBACK (*packet_relay, - &Bounded_Packet_Relay::receive_input), - -1); - auto_ptr <INPUT_CALLBACK> callback (input_callback); - if (input_device->set_send_input_msg_cmd (input_callback) < 0) - { - ACE_ERROR_RETURN ((LM_ERROR, - "failed to register input callback"), - -1); - } - - // Construct a new bounded packet relay driver. Auto ptr ensures - // memory is freed when we exit this scope. - THREAD_BOUNDED_PACKET_RELAY_DRIVER *tbprd; - - ACE_NEW_RETURN (tbprd, - Thread_Bounded_Packet_Relay_Driver (packet_relay), - -1); - - auto_ptr <THREAD_BOUNDED_PACKET_RELAY_DRIVER> driver (tbprd); - - return driver->run (); - // All dynamically allocated memory is released when main() returns. -} - -#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) -template class auto_ptr <THREAD_BOUNDED_PACKET_RELAY_DRIVER>; -template class ACE_Auto_Basic_Ptr <THREAD_BOUNDED_PACKET_RELAY_DRIVER>; -template class ACE_Command_Callback <Bounded_Packet_Relay, Bounded_Packet_Relay::ACTION>; -#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) -#pragma instantiate auto_ptr <THREAD_BOUNDED_PACKET_RELAY_DRIVER> -#pragma instantiate ACE_Auto_Basic_Ptr <THREAD_BOUNDED_PACKET_RELAY_DRIVER> -#pragma instantiate ACE_Command_Callback <Bounded_Packet_Relay, Bounded_Packet_Relay::ACTION> -#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ |