|
pvaClientCPP 4.8.1
|
An easy to use alternative to Monitor. More...
#include <pv/pvaClient.h>
Public Member Functions | |
| POINTER_DEFINITIONS (PvaClientMonitor) | |
| ~PvaClientMonitor () | |
| Destructor. | |
| void | connect () |
| Call issueConnect and then waitConnect. | |
| void | issueConnect () |
| Issue the channelMonitor connection to the channel. | |
| epics::pvData::Status | waitConnect () |
| Wait until the channelMonitor connection to the channel is complete. | |
| void | setRequester (PvaClientMonitorRequesterPtr const &pvaClientMonitorRequester) |
| Set a user callback. | |
| void | start () |
| Start monitoring. | |
| void | start (const std::string &request) |
| Start or restart the monitor with a new request. | |
| void | stop () |
| Stop monitoring. | |
| bool | poll () |
| Poll for a monitor event. | |
| bool | waitEvent (double secondsToWait=0.0) |
| Wait for a monitor event. | |
| void | releaseEvent () |
| Release the monitorElement returned by poll. | |
| PvaClientChannelPtr | getPvaClientChannel () |
| Get the PvaClientChannel;. | |
| PvaClientMonitorDataPtr | getData () |
| The data in which monitor events are placed. | |
| void | channelStateChange (PvaClientChannelPtr const &channel, bool isConnected) |
| A channel connection state change has occurred. | |
| void | event (PvaClientMonitorPtr const &monitor) |
| A monitor event has occurred. | |
| POINTER_DEFINITIONS (PvaClientChannelStateChangeRequester) | |
| POINTER_DEFINITIONS (PvaClientMonitorRequester) | |
| virtual void | monitorConnect (epics::pvData::Status const &status, PvaClientMonitorPtr const &monitor, epics::pvData::StructureConstPtr const &structure) |
| The server has returned a message that the monitor is connected. | |
| virtual void | unlisten () |
| The data source is no longer available. | |
Static Public Member Functions | |
| static PvaClientMonitorPtr | create (PvaClientPtr const &pvaClient, PvaClientChannelPtr const &pvaClientChannel, epics::pvData::PVStructurePtr const &pvRequest) |
| Create a PvaClientMonitor. | |
| static PvaClientMonitorPtr | create (PvaClientPtr const &pvaClient, std::string const &channelName, std::string const &providerName, std::string const &request, PvaClientChannelStateChangeRequesterPtr const &stateChangeRequester=PvaClientChannelStateChangeRequesterPtr(), PvaClientMonitorRequesterPtr const &monitorRequester=PvaClientMonitorRequesterPtr()) EPICS_DEPRECATED |
| Create a PvaClientMonitor. | |
Friends | |
| class | MonitorRequesterImpl |
An easy to use alternative to Monitor.
Definition at line 1512 of file pvaClient.h.
| epics::pvaClient::PvaClientMonitor::~PvaClientMonitor | ( | ) |
Destructor.
Definition at line 139 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
|
virtual |
A channel connection state change has occurred.
Warning A call to a method that blocks should not be made by this method.
| channel | The channel. |
| isConnected | The new connection status. |
Implements epics::pvaClient::PvaClientChannelStateChangeRequester.
Definition at line 151 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
| void epics::pvaClient::PvaClientMonitor::connect | ( | ) |
Call issueConnect and then waitConnect.
An exception is thrown if connect fails.
Definition at line 299 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug(), issueConnect(), and waitConnect().
|
static |
Create a PvaClientMonitor.
| pvaClient | Interface to PvaClient |
| pvaClientChannel | Interface to PvaClientChannel |
| pvRequest | The request structure. |
|
static |
Create a PvaClientMonitor.
| pvaClient | Interface to PvaClient |
| channelName | channel name |
| providerName | provider name |
| request | The request. |
| stateChangeRequester | The state change requester. Can be null. |
| monitorRequester | The monitor requester. Can be null; |
Definition at line 90 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug(), and MonitorRequesterImpl.
|
virtual |
A monitor event has occurred.
| monitor | The PvaClientMonitor that received the event. |
Implements epics::pvaClient::PvaClientMonitorRequester.
Definition at line 170 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
| PvaClientMonitorDataPtr epics::pvaClient::PvaClientMonitor::getData | ( | ) |
The data in which monitor events are placed.
Definition at line 477 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
| PvaClientChannelPtr epics::pvaClient::PvaClientMonitor::getPvaClientChannel | ( | ) |
Get the PvaClientChannel;.
Definition at line 472 of file pvaClientMonitor.cpp.
| void epics::pvaClient::PvaClientMonitor::issueConnect | ( | ) |
Issue the channelMonitor connection to the channel.
This can only be called once. An exception is thrown if connect fails.
| runtime_error | if failure. |
Definition at line 312 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
Referenced by connect().
|
inlinevirtualinherited |
The server has returned a message that the monitor is connected.
| status | Completion status. |
| monitor | The monitor |
| structure | The structure defining the data. |
Definition at line 1482 of file pvaClient.h.
|
inherited |
| epics::pvaClient::PvaClientMonitor::POINTER_DEFINITIONS | ( | PvaClientMonitor | ) |
|
inherited |
| bool epics::pvaClient::PvaClientMonitor::poll | ( | ) |
Poll for a monitor event.
The data will be in PvaClientData.
Definition at line 418 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
Referenced by waitEvent().
| void epics::pvaClient::PvaClientMonitor::releaseEvent | ( | ) |
Release the monitorElement returned by poll.
Definition at line 456 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
| void epics::pvaClient::PvaClientMonitor::setRequester | ( | PvaClientMonitorRequesterPtr const & | pvaClientMonitorRequester | ) |
Set a user callback.
| pvaClientMonitorRequester | The requester which must be implemented by the caller. |
Definition at line 341 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
| void epics::pvaClient::PvaClientMonitor::start | ( | ) |
Start monitoring.
Definition at line 351 of file pvaClientMonitor.cpp.
References connect(), and epics::pvaClient::PvaClient::getDebug().
| void epics::pvaClient::PvaClientMonitor::start | ( | const std::string & | request | ) |
Start or restart the monitor with a new request.
| request | The new request. |
Definition at line 372 of file pvaClientMonitor.cpp.
References connect(), epics::pvaClient::PvaClient::getDebug(), and MonitorRequesterImpl.
| void epics::pvaClient::PvaClientMonitor::stop | ( | ) |
Stop monitoring.
Definition at line 406 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
|
inlinevirtualinherited |
The data source is no longer available.
Definition at line 1495 of file pvaClient.h.
| Status epics::pvaClient::PvaClientMonitor::waitConnect | ( | ) |
Wait until the channelMonitor connection to the channel is complete.
Definition at line 325 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug().
Referenced by connect().
| bool epics::pvaClient::PvaClientMonitor::waitEvent | ( | double | secondsToWait = 0.0 | ) |
Wait for a monitor event.
The data will be in PvaClientData.
| secondsToWait | Time to wait for event. |
Definition at line 433 of file pvaClientMonitor.cpp.
References epics::pvaClient::PvaClient::getDebug(), and poll().
|
friend |
Definition at line 1651 of file pvaClient.h.