diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2011-03-24 13:16:05 +0000 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2011-03-24 13:16:05 +0000 |
commit | b344c17ae152f6df1d1da81e3b2a68e131a86d49 (patch) | |
tree | 5bb72d5f3dfa2bc68544c387f81f06b9d77ac00c /ACE/tests/Process_Strategy_Test.h | |
parent | 528887fdce077c419d5ae415c5d9d3a4a47b8727 (diff) | |
download | ATCD-b344c17ae152f6df1d1da81e3b2a68e131a86d49.tar.gz |
Thu Mar 24 13:10:02 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
* tests/ACE_Init_Test.h:
* tests/ACE_Init_Test_Resource.h:
* tests/ACE_Init_Test_StdAfx.h:
* tests/Aio_Platform_Test.cpp:
* tests/Atomic_Op_Test.cpp:
* tests/Auto_Event_Test.cpp:
* tests/Auto_IncDec_Test.cpp:
* tests/Barrier_Test.cpp:
* tests/Based_Pointer_Test.cpp:
* tests/Based_Pointer_Test_Lib.cpp:
* tests/Basic_Types_Test.cpp:
* tests/Bound_Ptr_Test.h:
* tests/Buffer_Stream_Test.cpp:
* tests/Bug_2434_Regression_Test.cpp:
* tests/Bug_2653_Regression_Test.cpp:
* tests/Bug_2659_Regression_Test.cpp:
* tests/Bug_3539_Regression_Test.cpp:
* tests/Bug_3729_Regression_Test.cpp:
* tests/CDR_Array_Test.cpp:
* tests/CDR_File_Test.cpp:
* tests/CDR_Test.cpp:
* tests/Cache_Map_Manager_Test.h:
* tests/Cache_Map_Manager_Test.cpp:
* tests/Cached_Accept_Conn_Test.h:
* tests/Cached_Accept_Conn_Test.cpp:
* tests/Cached_Allocator_Test.cpp:
* tests/Cached_Conn_Test.h:
* tests/Cached_Conn_Test.cpp:
* tests/Capabilities_Test.cpp:
* tests/Codecs_Test.cpp:
* tests/Collection_Test.h:
* tests/Collection_Test.cpp:
* tests/Config_Test.h:
* tests/Config_Test.cpp:
* tests/Conn_Test.h:
* tests/Conn_Test.cpp:
* tests/DLL_Test.cpp:
* tests/DLL_Test_Impl.h:
* tests/DLL_Test_Impl.cpp:
* tests/DLList_Test.cpp:
* tests/Dirent_Test.cpp:
* tests/Dynamic_Priority_Test.cpp:
* tests/Dynamic_Test.cpp:
* tests/Enum_Interfaces_Test.cpp:
* tests/FIFO_Test.cpp:
* tests/FlReactor_Test.cpp:
* tests/Framework_Component_DLL.h:
* tests/Framework_Component_DLL.cpp:
* tests/Framework_Component_Test.h:
* tests/Future_Set_Test.cpp:
* tests/Future_Test.cpp:
* tests/Handle_Set_Test.cpp:
* tests/Hash_Map_Bucket_Iterator_Test.cpp:
* tests/Hash_Map_Manager_Test.cpp:
* tests/Hash_Multi_Map_Manager_Test.cpp:
* tests/High_Res_Timer_Test.cpp:
* tests/INET_Addr_Test.cpp:
* tests/IOStream_Test.cpp:
* tests/Intrusive_Auto_Ptr_Test.cpp:
* tests/Lazy_Map_Manager_Test.cpp:
* tests/Log_Msg_Backend_Test.cpp:
* tests/Log_Msg_Test.cpp:
* tests/Logging_Strategy_Test.cpp:
* tests/MEM_Stream_Test.h:
* tests/MEM_Stream_Test.cpp:
* tests/MM_Shared_Memory_Test.cpp:
* tests/MT_NonBlocking_Connect_Test.cpp:
* tests/MT_Reactor_Timer_Test.h:
* tests/MT_Reactor_Timer_Test.cpp:
* tests/MT_Reactor_Upcall_Test.cpp:
* tests/MT_Reference_Counted_Event_Handler_Test.cpp:
* tests/MT_Reference_Counted_Notify_Test.cpp:
* tests/MT_SOCK_Test.cpp:
* tests/Main.cpp:
* tests/Malloc_Test.h:
* tests/Malloc_Test.cpp:
* tests/Manual_Event_Test.cpp:
* tests/Map_Manager_Test.cpp:
* tests/Map_Test.h:
* tests/Map_Test.cpp:
* tests/Max_Default_Port_Test.h:
* tests/Max_Default_Port_Test.cpp:
* tests/Mem_Map_Test.cpp:
* tests/Message_Block_Test.cpp:
* tests/Message_Queue_Notifications_Test.cpp:
* tests/Message_Queue_Test.cpp:
* tests/Message_Queue_Test_Ex.cpp:
* tests/Missing_Svc_Conf_Test.cpp:
* tests/Multihomed_INET_Addr_Test.cpp:
* tests/Multihomed_INET_Addr_Test_IPV6.cpp:
* tests/NDDS_Timer_Test.cpp:
* tests/Naming_Test.cpp:
* tests/Network_Adapters_Test.h:
* tests/Network_Adapters_Test.cpp:
* tests/New_Fail_Test.cpp:
* tests/NonBlocking_Conn_Test.h:
* tests/NonBlocking_Conn_Test.cpp:
* tests/Notify_Performance_Test.cpp:
* tests/Object_Manager_Flipping_Test.cpp:
* tests/Object_Manager_Test.cpp:
* tests/Obstack_Test.cpp:
* tests/OrdMultiSet_Test.cpp:
* tests/Pipe_Test.cpp:
* tests/Priority_Buffer_Test.cpp:
* tests/Priority_Reactor_Test.h:
* tests/Priority_Reactor_Test.cpp:
* tests/Priority_Task_Test.cpp:
* tests/Proactor_Test.h:
* tests/Proactor_Timer_Test.cpp:
* tests/Process_Env_Test.cpp:
* tests/Process_Manager_Test.cpp:
* tests/Process_Manual_Event_Test.cpp:
* tests/Process_Mutex_Test.cpp:
* tests/Process_Semaphore_Test.cpp:
* tests/Process_Strategy_Test.h:
* tests/Process_Strategy_Test.cpp:
* tests/Process_Test.cpp:
* tests/QtReactor_Test.cpp:
* tests/RB_Tree_Test.h:
* tests/RB_Tree_Test.cpp:
* tests/RW_Process_Mutex_Test.cpp:
* tests/Reactor_Dispatch_Order_Test.cpp:
* tests/Reactor_Dispatch_Order_Test_Dev_Poll.cpp:
* tests/Reactor_Exceptions_Test.cpp:
* tests/Reactor_Fairness_Test.h:
* tests/Reactor_Fairness_Test.cpp:
* tests/Reactor_Notify_Test.cpp:
* tests/Reactor_Performance_Test.h:
* tests/Reactor_Performance_Test.cpp:
* tests/Reactor_Registration_Test.cpp:
* tests/Reactor_Timer_Test.cpp:
* tests/Reactors_Test.cpp:
* tests/Reader_Writer_Test.cpp:
* tests/Recursive_Condition_Bug_Test.cpp:
* tests/Recursive_Condition_Test.cpp:
* tests/Recursive_Mutex_Test.cpp:
* tests/Refcounted_Auto_Ptr_Test.h:
* tests/Refcounted_Event_Handler_Test_DevPoll.cpp:
* tests/Reference_Counted_Event_Handler_Test.cpp:
* tests/Reverse_Lock_Test.cpp:
* tests/SOCK_Connector_Test.cpp:
* tests/SOCK_Dgram_Bcast_Test.cpp:
* tests/SOCK_Dgram_Test.cpp:
* tests/SOCK_Netlink_Test.cpp:
* tests/SOCK_SEQPACK_SCTP_Test.cpp:
* tests/SOCK_Send_Recv_Test.cpp:
* tests/SOCK_Test.cpp:
* tests/SPIPE_Test.cpp:
* tests/SSL/Main.cpp:
* tests/SSL/SSL_Asynch_Stream_Test.cpp:
* tests/SSL/Thread_Pool_Reactor_SSL_Test.h:
* tests/SSL/Thread_Pool_Reactor_SSL_Test.cpp:
* tests/SString_Test.cpp:
* tests/SV_Shared_Memory_Test.cpp:
* tests/Semaphore_Test.cpp:
* tests/Sig_Handlers_Test.cpp:
* tests/Signal_Test.cpp:
* tests/Sigset_Ops_Test.cpp:
* tests/Simple_Message_Block_Test.cpp:
* tests/Singleton_Test.cpp:
* tests/Svc_Handler_Test.cpp:
* tests/TP_Reactor_Test.h:
* tests/TP_Reactor_Test.cpp:
* tests/TSS_Static_Test.cpp:
* tests/TSS_Test.cpp:
* tests/TSS_Test_Errno.h:
* tests/Task_Ex_Test.cpp:
* tests/Task_Test.cpp:
* tests/Thread_Attrs_Test.cpp:
* tests/Thread_Creation_Threshold_Test.cpp:
* tests/Thread_Manager_Test.cpp:
* tests/Thread_Mutex_Test.cpp:
* tests/Thread_Pool_Reactor_Resume_Test.h:
* tests/Thread_Pool_Reactor_Resume_Test.cpp:
* tests/Thread_Pool_Reactor_Test.h:
* tests/Thread_Pool_Reactor_Test.cpp:
* tests/Thread_Pool_Test.cpp:
* tests/Time_Service_Test.cpp:
* tests/Time_Value_Test.cpp:
* tests/Timeprobe_Test.cpp:
* tests/Timer_Cancellation_Test.cpp:
* tests/Timer_Queue_Reference_Counting_Test.cpp:
* tests/Timer_Queue_Test.cpp:
* tests/TkReactor_Test.cpp:
* tests/Tokens_Test.cpp:
* tests/UPIPE_SAP_Test.cpp:
* tests/UUID_Test.cpp:
* tests/Unbounded_Set_Test.cpp:
* tests/Unload_libACE.cpp:
* tests/Upgradable_RW_Test.h:
* tests/Upgradable_RW_Test.cpp:
* tests/Vector_Test.cpp:
* tests/WFMO_Reactor_Test.cpp:
* tests/XtAthenaReactor_Test.cpp:
* tests/XtMotifReactor_Test.cpp:
Converted to doxygen style of documentation
Diffstat (limited to 'ACE/tests/Process_Strategy_Test.h')
-rw-r--r-- | ACE/tests/Process_Strategy_Test.h | 93 |
1 files changed, 49 insertions, 44 deletions
diff --git a/ACE/tests/Process_Strategy_Test.h b/ACE/tests/Process_Strategy_Test.h index 9278e37404a..52365621ea0 100644 --- a/ACE/tests/Process_Strategy_Test.h +++ b/ACE/tests/Process_Strategy_Test.h @@ -1,20 +1,20 @@ /* -*- C++ -*- */ -// $Id$ - -// ============================================================================ -// = FILENAME -// Process_Strategy_Test.h -// -// = DESCRIPTION -// This file contains the definition of Counting_Service and -// Options. Some compilers need it in a .h file for template -// instantiation (such as AIX C Set ++). -// -// = AUTHOR -// Doug Schmidt <schmidt@cs.wustl.edu> and -// Kevin Boyle <kboyle@sanwafp.com> -// -// ============================================================================ + +//============================================================================= +/** + * @file Process_Strategy_Test.h + * + * $Id$ + * + * This file contains the definition of Counting_Service and + * Options. Some compilers need it in a .h file for template + * instantiation (such as AIX C Set ++). + * + * + * @author Doug Schmidt <schmidt@cs.wustl.edu> and Kevin Boyle <kboyle@sanwafp.com> + */ +//============================================================================= + #ifndef ACE_TESTS_PROCESS_STRATEGY_TEST_H #define ACE_TESTS_PROCESS_STRATEGY_TEST_H @@ -30,44 +30,46 @@ #include "ace/Svc_Handler.h" #include "ace/Strategies_T.h" +/** + * @class Counting_Service + * + * @brief Reads and increments the count in a shared file. + * + * Objects of this class execute in a separate process as a + * result of the <ACE_Strategy_Acceptor> and + * <ACE_Process_Strategy>. + */ class Counting_Service : public ACE_Svc_Handler <ACE_SOCK_STREAM, ACE_NULL_SYNCH> - // = TITLE - // Reads and increments the count in a shared file. - // - // = DESCRIPTION - // Objects of this class execute in a separate process as a - // result of the <ACE_Strategy_Acceptor> and - // <ACE_Process_Strategy>. { public: + /// Constructor. Counting_Service (ACE_Thread_Manager * = 0); - // Constructor. + /// Hook that is used to initialize the service (called by the + /// <ACE_Strategy_Acceptor::handle_input> Template Method). virtual int open (void *v); - // Hook that is used to initialize the service (called by the - // <ACE_Strategy_Acceptor::handle_input> Template Method). protected: // = Methods invoked via "pointer to method" table entry. + /// Handle the THREAD case. virtual int svc (void); - // Handle the THREAD case. // = Operations corresponding to requests from the client. + /// Execute the read operation on the file. int read (void); - // Execute the read operation on the file. + /// Execute the increment operation on the file. int inc (void); - // Execute the increment operation on the file. // = Hooks called by <Reactor> and <Strategy_Acceptor>. + /// Hook called by the <Reactor> when data arrives from the client. virtual int handle_input (ACE_HANDLE p = ACE_INVALID_HANDLE); - // Hook called by the <Reactor> when data arrives from the client. + /// Closing down virtual int handle_close (ACE_HANDLE = ACE_INVALID_HANDLE, ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK); - // Closing down }; class Process_Strategy : public ACE_Process_Strategy<Counting_Service> @@ -89,19 +91,22 @@ public: void *arg = 0); }; +/** + * @class Options + * + * @brief Maintains the options for this program. + */ class Options : public ACE_Event_Handler - // = TITLE - // Maintains the options for this program. { public: + /// Constructor. Options (void); - // Constructor. + /// Destructor. ~Options (void); - // Destructor. + /// Read command-line arguments and initialize options. int parse_args (int argc, ACE_TCHAR *argv[]); - // Read command-line arguments and initialize options. enum Concurrency_Type { @@ -114,28 +119,28 @@ public: Concurrency_Type concurrency_type (void); void concurrency_type (Concurrency_Type); + /// Returns the file lock. ACE_File_Lock &file_lock (void); - // Returns the file lock. + /// Returns the filename that we're using as the lock. const ACE_TCHAR *filename (void); - // Returns the filename that we're using as the lock. + /// Returns the concurrency strategy. ACE_Concurrency_Strategy <Counting_Service> *concurrency_strategy (void); - // Returns the concurrency strategy. private: + /// Concurrency strategy that we're running. Concurrency_Type concurrency_type_; - // Concurrency strategy that we're running. + /// Lock for the counting file. ACE_File_Lock file_lock_; - // Lock for the counting file. + /// Activation strategy that either forks a new process or spawns a + /// new thread for each client connection. ACE_Concurrency_Strategy<Counting_Service> *concurrency_strategy_; - // Activation strategy that either forks a new process or spawns a - // new thread for each client connection. + /// Name of the counting file. ACE_TCHAR filename_[MAXPATHLEN + 1]; - // Name of the counting file. }; #endif /* ACE_TESTS_PROCESS_STRATEGY_TEST_H */ |