pvAccessCPP  7.1.5
Public Types | Public Member Functions | Static Public Attributes | List of all members
epics::pvAccess::ChannelPutGet Class Referenceabstract

Channel access put/get request. More...

#include <client/pv/pvAccess.h>

Inheritance diagram for epics::pvAccess::ChannelPutGet:
Inheritance graph
[legend]
Collaboration diagram for epics::pvAccess::ChannelPutGet:
Collaboration graph
[legend]

Public Types

typedef ChannelPutGetRequester requester_type
 

Public Member Functions

 POINTER_DEFINITIONS (ChannelPutGet)
 
virtual void putGet (epics::pvData::PVStructure::shared_pointer const &pvPutStructure, epics::pvData::BitSet::shared_pointer const &putBitSet)=0
 Issue a put/get request. More...
 
virtual void getPut ()=0
 Get the put PVStructure. More...
 
virtual void getGet ()=0
 Get the get PVStructure. More...
 
 POINTER_DEFINITIONS (ChannelRequest)
 
 POINTER_DEFINITIONS (Destroyable)
 
 POINTER_DEFINITIONS (Lockable)
 
virtual std::tr1::shared_ptr< ChannelgetChannel ()=0
 Get a channel instance this request belongs to. More...
 
virtual void cancel ()=0
 Cancel any pending request. More...
 
virtual void lastRequest ()=0
 Announce next request as last request. More...
 
virtual void destroy ()
 Destroy this instance.
 
virtual void lock ()
 
virtual void unlock ()
 

Static Public Attributes

static size_t num_instances
 

Detailed Description

Channel access put/get request.

The put is performed first, followed optionally by a process request, and then by a get request.

Definition at line 684 of file pvAccess.h.

Member Function Documentation

◆ cancel()

virtual void epics::pvAccess::ChannelRequest::cancel ( )
pure virtualinherited

Cancel any pending request.

Completion will be reported via request's response callback:

  • if cancel() request is issued after the request was already complete, request success/failure completion will be reported and cancel() request ignored.
  • if the request was actually canceled, cancellation completion is reported.

◆ getChannel()

virtual std::tr1::shared_ptr<Channel> epics::pvAccess::ChannelRequest::getChannel ( )
pure virtualinherited

Get a channel instance this request belongs to.

Returns
the channel instance.

◆ getGet()

virtual void epics::pvAccess::ChannelPutGet::getGet ( )
pure virtual

Get the get PVStructure.

The record will not be processed. Completion status is reported by calling ChannelPutGetRequester.getGetDone() callback.

◆ getPut()

virtual void epics::pvAccess::ChannelPutGet::getPut ( )
pure virtual

Get the put PVStructure.

The record will not be processed. Completion status is reported by calling ChannelPutGetRequester.getPutDone() callback.

◆ lastRequest()

virtual void epics::pvAccess::ChannelRequest::lastRequest ( )
pure virtualinherited

Announce next request as last request.

When last request will be completed (regardless of completion status) the remote and local instance will be destroyed.

◆ putGet()

virtual void epics::pvAccess::ChannelPutGet::putGet ( epics::pvData::PVStructure::shared_pointer const &  pvPutStructure,
epics::pvData::BitSet::shared_pointer const &  putBitSet 
)
pure virtual

Issue a put/get request.

If process was requested when the ChannelPutGet was created this is a put, process, get. Completion status is reported by calling ChannelPutGetRequester.putGetDone() callback.

Parameters
pvPutStructureThe PVStructure that holds the putData.
putBitSetputPVStructure bit-set (selects what fields to put).

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