pvaClientGet is a synchronous wrapper for the pvAccess::ChannelGet API, which is a callback based API. Thus it is easier to use than pvAccess::ChannelGet itself.
An instance of PvaClientGet is created via a call to one of the following:
class PvaClientChannel ... { ... PvaClientGetPtr get(std::string const & request = "field(value,alarm,timeStamp)"); PvaClientGetPtr createGet(std::string const & request = ""); PvaClientGetPtr createGet(epics::pvData::PVStructurePtr const & pvRequest); ... };An instance of PvaClientGet connects to a single channel. PvaClientGet has both synchronous methods, which block, and non blocking methods.
PvaClientChannel has methods:
connect Calls issueConnect and then waitConnect. issueConnect issues a request to the server to create the server side of ChannelPut. waitConnect blocks until server responds that it has created the ChannelPut. get Calls issueGet and then waitGet. issueGet issues a get request to the server. waitGet waits until the server send a message that the get is complete. getData get the data.issueConnect and issueGet do not block. All other methods can block.