pvAccessCPP  7.1.2
Public Member Functions | Public Attributes | Friends | List of all members
pvac::Monitor Struct Reference

Handle for monitor subscription. More...

#include <client/pva/client.h>

Inheritance diagram for pvac::Monitor:
Inheritance graph
[legend]
Collaboration diagram for pvac::Monitor:
Collaboration graph
[legend]

Public Member Functions

 Monitor (const std::tr1::shared_ptr< Impl > &)
 
std::string name () const
 Channel name.
 
void cancel ()
 Immediate cancellation. More...
 
bool poll ()
 updates root, changed, overrun More...
 
bool complete () const
 true if all events received. More...
 
bool valid () const
 
 operator bool_type () const
 
void reset ()
 

Public Attributes

epics::pvData::PVStructure::const_shared_pointer root
 Monitor update data. More...
 
epics::pvData::BitSet changed
 
epics::pvData::BitSet overrun
 

Friends

struct MonitorSync
 
epicsShareFunc ::std::ostreamoperator<< (::std::ostream &strm, const Monitor &op)
 

Detailed Description

Handle for monitor subscription.

Definition at line 117 of file client.h.

Member Function Documentation

◆ cancel()

void pvac::Monitor::cancel ( )

Immediate cancellation.

Does not wait for remote confirmation.

Since
Up to 7.0.0 also cleared root, changed, and overrun. After 7.0.0, these data members are left unchanged.

◆ complete()

bool pvac::Monitor::complete ( ) const

true if all events received.

Check after poll()==false

◆ poll()

bool pvac::Monitor::poll ( )

updates root, changed, overrun

Returns
true if a new update was extracted from the queue.
Note
This method does not block.
MonitorEvent::Data will not be repeated until poll()==false.
Postcondition
root!=NULL (after version 6.0.0)
root!=NULL iff poll()==true (In version 6.0.0)

Member Data Documentation

◆ root

epics::pvData::PVStructure::const_shared_pointer pvac::Monitor::root

Monitor update data.

After version 6.0.0

Initially NULL, becomes !NULL the first time poll()==true. The PVStructure pointed to be root will presist until Monitor reconnect w/ type change. This can be detected by comparing root.get(). references to root may be cached subject to this test.

In version 6.0.0

NULL except after poll()==true. poll()==false sets root=NULL. references to root should not be stored between calls to poll().

Definition at line 160 of file client.h.


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