pvAccessCPP 7.1.8
Loading...
Searching...
No Matches
epics::pvAccess::MonitorElement::Ref Class Reference

A (single ownership) smart pointer to extract a MonitorElement from a Monitor queue. More...

#include <client/pv/monitor.h>

Public Member Functions

 Ref (Monitor &M)
 
 Ref (const Monitor::shared_pointer &M)
 
void swap (Ref &o)
 
MonitorElementPtr letGo ()
 analogous to auto_ptr<>::release() but given a different name to avoid being confused with Monitor::release()
 
void attach (Monitor &M)
 
void attach (const Monitor::shared_pointer &M)
 
bool next ()
 
void reset ()
 
Refoperator++ ()
 
 operator hidden_bool_type () const
 
MonitorElementoperator-> ()
 
MonitorElementoperator* ()
 
MonitorElementget ()
 
bool operator== (const Ref &o) const
 
bool operator!= (const Ref &o) const
 

Detailed Description

A (single ownership) smart pointer to extract a MonitorElement from a Monitor queue.

To fetch a single element

epics::pvAccess::Monitor::shared_pointer mon(....);
if(elem) {
// do something with element
assert(elem->pvStructurePtr->getSubField("foo"));
} else {
// queue was empty
}
A (single ownership) smart pointer to extract a MonitorElement from a Monitor queue.
Definition monitor.h:147

To fetch all available elements (c++11)

epics::pvAccess::Monitor::shared_pointer mon(....);
for(auto& elem : *mon) {
assert(elem.pvStructurePtr->getSubField("foo"));
}

To fetch all available elements (c++98)

epics::pvAccess::Monitor::shared_pointer mon(....);
for(epics::pvAccess::MonitorElement::Ref it(mon); it; ++it) {
MonitorElement& elem(*it);
assert(elem.pvStructurePtr->getSubField("foo"));
}
An element for a monitorQueue.
Definition monitor.h:54

Definition at line 146 of file monitor.h.

Constructor & Destructor Documentation

◆ Ref() [1/3]

epics::pvAccess::MonitorElement::Ref::Ref ( )
inline

Definition at line 151 of file monitor.h.

◆ Ref() [2/3]

epics::pvAccess::MonitorElement::Ref::Ref ( Monitor & M)
inline

Definition at line 152 of file monitor.h.

◆ Ref() [3/3]

epics::pvAccess::MonitorElement::Ref::Ref ( const Monitor::shared_pointer & M)
inline

Definition at line 153 of file monitor.h.

◆ ~Ref()

epics::pvAccess::MonitorElement::Ref::~Ref ( )
inline

Definition at line 154 of file monitor.h.

Member Function Documentation

◆ attach() [1/2]

void epics::pvAccess::MonitorElement::Ref::attach ( const Monitor::shared_pointer & M)
inline

Definition at line 176 of file monitor.h.

◆ attach() [2/2]

void epics::pvAccess::MonitorElement::Ref::attach ( Monitor & M)
inline

Definition at line 172 of file monitor.h.

◆ get()

MonitorElement * epics::pvAccess::MonitorElement::Ref::get ( )
inline

Definition at line 203 of file monitor.h.

◆ letGo()

MonitorElementPtr epics::pvAccess::MonitorElement::Ref::letGo ( )
inline

analogous to auto_ptr<>::release() but given a different name to avoid being confused with Monitor::release()

Definition at line 167 of file monitor.h.

◆ next()

bool epics::pvAccess::MonitorElement::Ref::next ( )
inline

Definition at line 180 of file monitor.h.

◆ operator hidden_bool_type()

epics::pvAccess::MonitorElement::Ref::operator hidden_bool_type ( ) const
inline

Definition at line 199 of file monitor.h.

◆ operator!=()

bool epics::pvAccess::MonitorElement::Ref::operator!= ( const Ref & o) const
inline

Definition at line 206 of file monitor.h.

◆ operator*()

MonitorElement & epics::pvAccess::MonitorElement::Ref::operator* ( )
inline

Definition at line 202 of file monitor.h.

◆ operator++()

Ref & epics::pvAccess::MonitorElement::Ref::operator++ ( )
inline

Definition at line 189 of file monitor.h.

◆ operator->()

MonitorElement * epics::pvAccess::MonitorElement::Ref::operator-> ( )
inline

Definition at line 201 of file monitor.h.

◆ operator==()

bool epics::pvAccess::MonitorElement::Ref::operator== ( const Ref & o) const
inline

Definition at line 205 of file monitor.h.

◆ reset()

void epics::pvAccess::MonitorElement::Ref::reset ( )
inline

Definition at line 185 of file monitor.h.

◆ swap()

void epics::pvAccess::MonitorElement::Ref::swap ( Ref & o)
inline

Definition at line 161 of file monitor.h.


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