Merge pull request #2216 from jwillemsen/jwi-cxxversionchecks
[ACE_TAO.git] / ACE / examples / Service_Configurator / IPC-tests / server / Handle_R_Dgram.h
blobc2181e86b55f4d9ac096315f530914a3525da70a
1 // -*- C++ -*-
2 /* Handles INET datagram messages from remote hosts. */
4 #ifndef _HANDLE_R_DGRAM_H
5 #define _HANDLE_R_DGRAM_H
7 #include "ace/Service_Config.h"
9 #if !defined (ACE_LACKS_PRAGMA_ONCE)
10 # pragma once
11 #endif /* ACE_LACKS_PRAGMA_ONCE */
13 #include "ace/Service_Types.h"
14 #include "ace/INET_Addr.h"
15 #include "ace/SOCK_Dgram.h"
16 #include "ace/Log_Msg.h"
17 #include "ace/svc_export.h"
19 class ACE_Svc_Export Handle_R_Dgram : public ACE_Service_Object, public ACE_SOCK_Dgram
21 public:
22 Handle_R_Dgram ();
23 virtual int init (int argc, ACE_TCHAR *argv[]);
24 virtual int info (ACE_TCHAR **, size_t) const;
25 virtual int fini ();
27 private:
28 int open (const ACE_INET_Addr &r, int async = 0);
29 virtual ACE_HANDLE get_handle () const;
30 virtual int handle_input (ACE_HANDLE fd);
31 virtual int handle_close (ACE_HANDLE fd, ACE_Reactor_Mask);
33 static u_short DEFAULT_PORT;
36 extern ACE_Service_Object_Type rd;
38 #if defined (__ACE_INLINE__)
39 #define ACE_INLINE inline
40 #include "Handle_R_Dgram.inl"
41 #else
42 #define ACE_INLINE
43 #endif /* __ACE_INLINE__ */
45 #endif /* _HANDLE_R_DGRAM_H */