RCFProto

- Main Page
- Classes
- Files

- File List

All Classes Functions Typedefs
UnixLocalEndpoint.hpp
1
2 //******************************************************************************
3 // RCF - Remote Call Framework
4 //
5 // Copyright (c) 2005 - 2013, Delta V Software. All rights reserved.
6 // http://www.deltavsoft.com
7 //
8 // RCF is distributed under dual licenses - closed source or GPL.
9 // Consult your particular license for conditions of use.
10 //
11 // If you have not purchased a commercial license, you are using RCF
12 // under GPL terms.
13 //
14 // Version: 2.0
15 // Contact: support <at> deltavsoft.com
16 //
17 //******************************************************************************
18
19 #ifndef INCLUDE_RCF_UNIXLOCALENDPOINT_HPP
20 #define INCLUDE_RCF_UNIXLOCALENDPOINT_HPP
21
22 #include <RCF/Endpoint.hpp>
23 #include <RCF/Export.hpp>
24 #include <RCF/ClientTransport.hpp>
25 #include <RCF/ServerTransport.hpp>
26
27 #include <SF/SerializeParent.hpp>
28
29 #if defined(BOOST_WINDOWS)
30 #error Unix domain sockets not supported on Windows.
31 #endif
32
33 namespace RCF {
34
36 class RCF_EXPORT UnixLocalEndpoint : public Endpoint
37 {
38 public:
39
40 UnixLocalEndpoint();
41
42 // *** SWIG BEGIN ***
43
45 UnixLocalEndpoint(const std::string & socketName);
46
47 // *** SWIG END ***
48
49 ServerTransportAutoPtr createServerTransport() const;
50 ClientTransportAutoPtr createClientTransport() const;
51 EndpointPtr clone() const;
52
53 std::string asString() const;
54
55 std::string getPipeName() const
56 {
57 return mPipeName;
58 }
59
60 private:
61
62 std::string mPipeName;
63 };
64
65 } // namespace RCF
66
67 #endif // ! INCLUDE_RCF_UNIXLOCALENDPOINT_HPP