![]() |
This is Unofficial EPICS BASE Doxygen Site
|
An easy to use alternative to Monitor. More...
#include "pvaClient.h"
Public Member Functions | |
POINTER_DEFINITIONS (PvaClientMonitor) | |
~PvaClientMonitor () | |
Destructor. More... | |
void | connect () |
Call issueConnect and then waitConnect. More... | |
void | issueConnect () |
Issue the channelMonitor connection to the channel. More... | |
epics::pvData::Status | waitConnect () |
Wait until the channelMonitor connection to the channel is complete. More... | |
void | setRequester (PvaClientMonitorRequesterPtr const &pvaClientMonitorRequester) |
Set a user callback. More... | |
void | start () |
Start monitoring. More... | |
void | start (const std::string &request) |
Start or restart the monitor with a new request. More... | |
void | stop () |
Stop monitoring. More... | |
bool | poll () |
Poll for a monitor event. More... | |
bool | waitEvent (double secondsToWait=0.0) |
Wait for a monitor event. More... | |
void | releaseEvent () |
Release the monitorElement returned by poll. More... | |
PvaClientChannelPtr | getPvaClientChannel () |
Get the PvaClientChannel;. More... | |
PvaClientMonitorDataPtr | getData () |
The data in which monitor events are placed. More... | |
void | channelStateChange (PvaClientChannelPtr const &channel, bool isConnected) |
A channel connection state change has occurred. More... | |
void | event (PvaClientMonitorPtr const &monitor) |
A monitor event has occurred. More... | |
![]() | |
POINTER_DEFINITIONS (PvaClientChannelStateChangeRequester) | |
virtual | ~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. More... | |
virtual | ~PvaClientMonitorRequester () |
virtual void | unlisten () |
The data source is no longer available. More... | |
Static Public Member Functions | |
static PvaClientMonitorPtr | create (PvaClientPtr const &pvaClient, PvaClientChannelPtr const &pvaClientChannel, epics::pvData::PVStructurePtr const &pvRequest) |
Create a PvaClientMonitor. More... | |
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. More... | |
Friends | |
class | MonitorRequesterImpl |
An easy to use alternative to Monitor.
Definition at line 1561 of file pvaClient.h.
epics::pvaClient::PvaClientMonitor::~PvaClientMonitor | ( | ) |
Destructor.
Definition at line 139 of file pvaClientMonitor.cpp.
|
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.
void epics::pvaClient::PvaClientMonitor::connect | ( | ) |
Call issueConnect and then waitConnect.
An exception is thrown if connect fails.
Definition at line 297 of file pvaClientMonitor.cpp.
|
static |
Create a PvaClientMonitor.
pvaClient | Interface to PvaClient |
pvaClientChannel | Interface to PvaClientChannel |
pvRequest | The request structure. |
Definition at line 79 of file pvaClientMonitor.cpp.
|
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.
|
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.
PvaClientMonitorDataPtr epics::pvaClient::PvaClientMonitor::getData | ( | ) |
The data in which monitor events are placed.
Definition at line 488 of file pvaClientMonitor.cpp.
PvaClientChannelPtr epics::pvaClient::PvaClientMonitor::getPvaClientChannel | ( | ) |
Get the PvaClientChannel;.
Definition at line 483 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 310 of file pvaClientMonitor.cpp.
epics::pvaClient::PvaClientMonitor::POINTER_DEFINITIONS | ( | PvaClientMonitor | ) |
bool epics::pvaClient::PvaClientMonitor::poll | ( | ) |
Poll for a monitor event.
The data will be in PvaClientData.
Definition at line 429 of file pvaClientMonitor.cpp.
void epics::pvaClient::PvaClientMonitor::releaseEvent | ( | ) |
Release the monitorElement returned by poll.
Definition at line 467 of file pvaClientMonitor.cpp.
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 352 of file pvaClientMonitor.cpp.
void epics::pvaClient::PvaClientMonitor::start | ( | ) |
Start monitoring.
Definition at line 362 of file pvaClientMonitor.cpp.
void epics::pvaClient::PvaClientMonitor::start | ( | const std::string & | request | ) |
Start or restart the monitor with a new request.
request | The new request. |
void epics::pvaClient::PvaClientMonitor::stop | ( | ) |
Stop monitoring.
Definition at line 417 of file pvaClientMonitor.cpp.
Status epics::pvaClient::PvaClientMonitor::waitConnect | ( | ) |
Wait until the channelMonitor connection to the channel is complete.
Definition at line 323 of file pvaClientMonitor.cpp.
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 444 of file pvaClientMonitor.cpp.
|
friend |
Definition at line 1700 of file pvaClient.h.