This is Unofficial EPICS BASE Doxygen Site
epics::pvAccess::Monitor Class Referenceabstract

#include "monitor.h"

+ Inheritance diagram for epics::pvAccess::Monitor:
+ Collaboration diagram for epics::pvAccess::Monitor:

Classes

struct  Impl
 
struct  Stats
 

Public Types

typedef MonitorRequester requester_type
 

Public Member Functions

 POINTER_DEFINITIONS (Monitor)
 
virtual ~Monitor ()
 
virtual epics::pvData::Status start ()=0
 
virtual epics::pvData::Status stop ()=0
 
virtual MonitorElementPtr poll ()=0
 
virtual void release (MonitorElementPtr const &monitorElement)=0
 
virtual void getStats (Stats &s) const
 
virtual void reportRemoteQueueStatus (epics::pvData::int32 freeElements)
 
- Public Member Functions inherited from epics::pvAccess::Destroyable
 POINTER_DEFINITIONS (Destroyable)
 
virtual void destroy ()=0
 

Additional Inherited Members

- Protected Member Functions inherited from epics::pvAccess::Destroyable
virtual ~Destroyable ()
 

Detailed Description

Access to Monitor subscription and queue

Downstream interface to access a monitor queue (via poll() and release() )

Definition at line 69 of file monitor.h.

Member Typedef Documentation

Constructor & Destructor Documentation

virtual epics::pvAccess::Monitor::~Monitor ( )
inlinevirtual

Definition at line 74 of file monitor.h.

74 {}

Member Function Documentation

virtual void epics::pvAccess::Monitor::getStats ( Stats s) const
inlinevirtual

Reimplemented in BaseMonitor, and epics::pvAccess::MonitorFIFO.

Definition at line 106 of file monitor.h.

106  {
107  s.nfilled = s.noutstanding = s.nempty = 0;
108  }
epics::pvAccess::Monitor::POINTER_DEFINITIONS ( Monitor  )
virtual MonitorElementPtr epics::pvAccess::Monitor::poll ( )
pure virtual

If monitor has occurred return data.

Returns
monitorElement for modified data. Must call get to determine if data is available.

May recursively call MonitorRequester::unlisten()

Implemented in epics::pvAccess::MonitorFIFO, epics::pvAccess::ca::CAChannelMonitor, TestPVMonitor, epics::pvDatabase::MonitorLocal, and MonitorUser.

virtual void epics::pvAccess::Monitor::release ( MonitorElementPtr const &  monitorElement)
pure virtual

Release a MonitorElement that was returned by poll. A poll() must be called after the release() to check the presence of any modified data.

Parameters
monitorElement

Implemented in epics::pvAccess::MonitorFIFO, epics::pvAccess::ca::CAChannelMonitor, and epics::pvDatabase::MonitorLocal.

virtual void epics::pvAccess::Monitor::reportRemoteQueueStatus ( epics::pvData::int32  freeElements)
inlinevirtual

Report remote queue status.

Parameters
freeElementsnumber of free elements.

Reimplemented in epics::pvAccess::MonitorFIFO.

Definition at line 114 of file monitor.h.

114 {}
virtual epics::pvData::Status epics::pvAccess::Monitor::start ( )
pure virtual
virtual epics::pvData::Status epics::pvAccess::Monitor::stop ( )
pure virtual

The documentation for this class was generated from the following file: