4 #include <pv/pvAccess.h>
8 struct GWChannel :
public epics::pvAccess::Channel
11 static size_t num_instances;
14 const ChannelCacheEntry::shared_pointer entry;
15 const requester_type::weak_pointer requester;
16 const std::string address;
17 const epics::pvAccess::ChannelProvider::weak_pointer server_provder;
19 GWChannel(
const ChannelCacheEntry::shared_pointer& e,
20 const epics::pvAccess::ChannelProvider::weak_pointer& srvprov,
21 const requester_type::weak_pointer&,
22 const std::string& addr);
27 virtual std::string getRequesterName();
30 virtual void destroy();
33 virtual std::tr1::shared_ptr<epics::pvAccess::ChannelProvider> getProvider();
34 virtual std::string getRemoteAddress();
36 virtual ConnectionState getConnectionState();
37 virtual std::string getChannelName();
38 virtual std::tr1::shared_ptr<epics::pvAccess::ChannelRequester> getChannelRequester();
40 virtual void getField(epics::pvAccess::GetFieldRequester::shared_pointer
const & requester,
41 std::string
const & subField);
42 virtual epics::pvAccess::AccessRights getAccessRights(epics::pvData::PVField::shared_pointer
const & pvField);
43 virtual epics::pvAccess::ChannelProcess::shared_pointer createChannelProcess(
44 epics::pvAccess::ChannelProcessRequester::shared_pointer
const & channelProcessRequester,
45 epics::pvData::PVStructure::shared_pointer
const & pvRequest);
46 virtual epics::pvAccess::ChannelGet::shared_pointer createChannelGet(
47 epics::pvAccess::ChannelGetRequester::shared_pointer
const & channelGetRequester,
48 epics::pvData::PVStructure::shared_pointer
const & pvRequest);
49 virtual epics::pvAccess::ChannelPut::shared_pointer createChannelPut(
50 epics::pvAccess::ChannelPutRequester::shared_pointer
const & channelPutRequester,
51 epics::pvData::PVStructure::shared_pointer
const & pvRequest);
52 virtual epics::pvAccess::ChannelPutGet::shared_pointer createChannelPutGet(
53 epics::pvAccess::ChannelPutGetRequester::shared_pointer
const & channelPutGetRequester,
54 epics::pvData::PVStructure::shared_pointer
const & pvRequest);
55 virtual epics::pvAccess::ChannelRPC::shared_pointer createChannelRPC(
56 epics::pvAccess::ChannelRPCRequester::shared_pointer
const & channelRPCRequester,
57 epics::pvData::PVStructure::shared_pointer
const & pvRequest);
58 virtual epics::pvData::Monitor::shared_pointer createMonitor(
59 epics::pvData::MonitorRequester::shared_pointer
const & monitorRequester,
60 epics::pvData::PVStructure::shared_pointer
const & pvRequest);
61 virtual epics::pvAccess::ChannelArray::shared_pointer createChannelArray(
62 epics::pvAccess::ChannelArrayRequester::shared_pointer
const & channelArrayRequester,
63 epics::pvData::PVStructure::shared_pointer
const & pvRequest);
65 virtual void printInfo(std::ostream& out);