3 //=============================================================================
5 * @file MEM_Stream_Test.h
7 * This file has the class definitions needed for template generation in
8 * MEM_Stream_Test.cpp. They have to be in a separate file so AIX xlC can
9 * find them at auto-instantiate time.
11 * @author Steve Huston <shuston@riverace.com>
13 //=============================================================================
16 #ifndef ACE_TESTS_MEM_STREAM_TEST_H
17 #define ACE_TESTS_MEM_STREAM_TEST_H
19 #if !defined (ACE_LACKS_PRAGMA_ONCE)
21 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 #include "ace/MEM_Stream.h"
24 #include "ace/Reactor.h"
25 #include "ace/Svc_Handler.h"
26 #include "ace/Synch_Traits.h"
28 #if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
33 * @brief Simple class for reading in the data and then sending it back
35 class Echo_Handler
: public ACE_Svc_Handler
<ACE_MEM_STREAM
, ACE_SYNCH
>
38 /// The Svc_Handler callbacks.
39 Echo_Handler (ACE_Thread_Manager
*thr_mgr
= 0);
40 virtual int open (void *);
41 static void reset_handler (void);
42 virtual int handle_input (ACE_HANDLE h
);
43 virtual int handle_close (ACE_HANDLE handle
,
44 ACE_Reactor_Mask close_mask
);
45 virtual int svc (void);
48 ACE_TCHAR name_
[MAXPATHLEN
];
52 #endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS */
54 #endif /* ACE_TESTS_MEM_STREAM_TEST_H */