pvAccessCPP
7.1.9
Toggle main menu visibility
Loading...
Searching...
No Matches
rpcService
pv
rpcServer.h
1
6
7
#ifndef RPCSERVER_H
8
#define RPCSERVER_H
9
10
#ifdef epicsExportSharedSymbols
11
# define rpcServerEpicsExportSharedSymbols
12
# undef epicsExportSharedSymbols
13
#endif
14
15
#include <pv/sharedPtr.h>
16
17
#ifdef rpcServerEpicsExportSharedSymbols
18
# define epicsExportSharedSymbols
19
# undef rpcServerEpicsExportSharedSymbols
20
#endif
21
22
#include <pv/pvAccess.h>
23
#include <pv/rpcService.h>
24
#include <pv/serverContext.h>
25
26
#include <shareLib.h>
27
28
namespace
epics
{
29
namespace
pvAccess
{
30
31
class
ServerContext
;
32
class
RPCChannelProvider;
33
35
class
epicsShareClass RPCServer :
36
public
std::tr1::enable_shared_from_this<RPCServer>
37
{
38
private
:
39
40
std::tr1::shared_ptr<ServerContext> m_serverContext;
41
std::tr1::shared_ptr<RPCChannelProvider> m_channelProviderImpl;
42
43
public
:
44
POINTER_DEFINITIONS(RPCServer);
45
46
explicit
RPCServer(
const
Configuration::const_shared_pointer& conf = Configuration::const_shared_pointer());
47
48
virtual
~RPCServer();
49
50
void
registerService(
std::string
const
& serviceName, RPCServiceAsync::shared_pointer
const
& service);
51
52
void
unregisterService(
std::string
const
& serviceName);
53
54
void
run(
int
seconds
= 0);
55
58
void
runInNewThread
(
int
seconds
= 0);
59
60
void
destroy();
61
65
void
printInfo
();
66
67
const
std::tr1::shared_ptr<ServerContext>& getServer()
const
{
return
m_serverContext; }
68
};
69
70
epicsShareFunc Channel::shared_pointer createRPCChannel(ChannelProvider::shared_pointer
const
& provider,
71
std::string
const
& channelName,
72
ChannelRequester::shared_pointer
const
& channelRequester,
73
RPCServiceAsync::shared_pointer
const
& rpcService);
74
75
}
76
}
77
78
#endif
/* RPCSERVER_H */
seconds
duration< int64_t > seconds
std::string
basic_string< char > string
epics::pvAccess::RPCServer::runInNewThread
void runInNewThread(int seconds=0)
Method requires usage of std::tr1::shared_ptr<RPCServer>.
epics::pvAccess::RPCServer::printInfo
void printInfo()
Display basic information about the context.
epics::pvAccess::ServerContext
The class representing a PVA Server context.
Definition
serverContext.h:28
epics::pvAccess
Holds all PVA related.
Definition
monitor.h:37
epics
Copyright - See the COPYRIGHT that is included with this distribution.
Generated on
for pvAccessCPP by
1.17.0