Remote Call Framework 3.2
UnixLocalEndpoint.hpp
1 
2 //******************************************************************************
3 // RCF - Remote Call Framework
4 //
5 // Copyright (c) 2005 - 2020, 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: 3.2
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(RCF_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 
41 
42  // *** SWIG BEGIN ***
43 
45  UnixLocalEndpoint(const std::string & socketName);
46 
47  // *** SWIG END ***
48 
49  ServerTransportUniquePtr createServerTransport() const;
50  ClientTransportUniquePtr 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
std::shared_ptr< Endpoint > EndpointPtr
Reference counted wrapper for RCF::Endpoint.
Definition: RcfFwd.hpp:118
std::unique_ptr< ClientTransport > ClientTransportUniquePtr
Unique pointer wrapper for RCF::ClientTransport.
Definition: RcfFwd.hpp:44
Base class for all network endpoint types.
Definition: Endpoint.hpp:41
Definition: AmiIoHandler.hpp:24
Represents a UNIX local socket endpoint. Only available on UNIX platforms.
Definition: UnixLocalEndpoint.hpp:36