pvAccessCPP 7.1.8
Loading...
Searching...
No Matches
epics::pvAccess::ChannelArray Class Referenceabstract

Request to put and get Array Data. More...

#include <client/pv/pvAccess.h>

Inheritance diagram for epics::pvAccess::ChannelArray:
Collaboration diagram for epics::pvAccess::ChannelArray:

Public Types

typedef std::tr1::shared_ptr< ChannelArrayshared_pointer
 
typedef std::tr1::shared_ptr< const ChannelArrayconst_shared_pointer
 
typedef std::tr1::weak_ptr< ChannelArrayweak_pointer
 
typedef std::tr1::weak_ptr< const ChannelArrayconst_weak_pointer
 
typedef ChannelArrayRequester requester_type
 

Public Member Functions

virtual void putArray (epics::pvData::PVArray::shared_pointer const &putArray, size_t offset=0, size_t count=0, size_t stride=1)=0
 put to the remote array.
 
virtual void getArray (size_t offset=0, size_t count=0, size_t stride=1)=0
 get from the remote array.
 
virtual void getLength ()=0
 Get the length.
 
virtual void setLength (size_t length)=0
 Set the length and/or the capacity.
 
virtual std::tr1::shared_ptr< ChannelgetChannel ()=0
 Get a channel instance this request belongs to.
 
virtual void cancel ()=0
 Cancel any pending request.
 
virtual void lastRequest ()=0
 Announce next request as last request.
 
virtual void lock ()
 
virtual void unlock ()
 
virtual void destroy ()
 Destroy this instance.
 

Static Public Attributes

static size_t num_instances
 

Detailed Description

Request to put and get Array Data.

The data is either taken from or put in the PVArray returned by ChannelArrayRequester.channelArrayConnect.

Definition at line 283 of file pvAccess.h.

Member Typedef Documentation

◆ const_shared_pointer

std::tr1::shared_ptr<const ChannelArray> epics::pvAccess::ChannelArray::const_shared_pointer

Definition at line 285 of file pvAccess.h.

◆ const_weak_pointer

std::tr1::weak_ptr<const ChannelArray> epics::pvAccess::ChannelArray::const_weak_pointer

Definition at line 285 of file pvAccess.h.

◆ requester_type

◆ shared_pointer

std::tr1::shared_ptr<ChannelArray> epics::pvAccess::ChannelArray::shared_pointer

Definition at line 285 of file pvAccess.h.

◆ weak_pointer

std::tr1::weak_ptr<ChannelArray> epics::pvAccess::ChannelArray::weak_pointer

Definition at line 285 of file pvAccess.h.

Constructor & Destructor Documentation

◆ ~ChannelArray()

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

Definition at line 288 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.

◆ destroy()

virtual void epics::pvAccess::Destroyable::destroy ( )
inlinevirtualinherited

Destroy this instance.

Reimplemented in epics::pvAccess::MonitorFIFO.

Definition at line 30 of file destroyable.h.

◆ getArray()

virtual void epics::pvAccess::ChannelArray::getArray ( size_t offset = 0,
size_t count = 0,
size_t stride = 1 )
pure virtual

get from the remote array.

Ownership of the PVArray previously passed to ChannelArrayRequester::getArrayDone() is returned to the ChannelArray from the ChannelArrayRequester.

Parameters
offsetThe offset in the remote array, i.e. the PVArray returned by ChannelArrayRequester::channelArrayConnect.
countThe number of elements to get, 0 means "till the end of an array".
stride1 means all the elements from offset to count, 2 means every other, 3 means every third, etc.

◆ 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.

◆ 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.

◆ lock()

virtual void epics::pvAccess::Lockable::lock ( )
inlinevirtualinherited

Definition at line 97 of file pvAccess.h.

◆ putArray()

virtual void epics::pvAccess::ChannelArray::putArray ( epics::pvData::PVArray::shared_pointer const & putArray,
size_t offset = 0,
size_t count = 0,
size_t stride = 1 )
pure virtual

put to the remote array.

Ownership of the PVArray is transferred to the ChannelArray until ChannelArrayRequester::putArrayDone() or ChannelArrayRequester::channelDisconnect() is called.

Parameters
putArrayarray to put.
offsetThe offset in the remote array, i.e. the PVArray returned by ChannelArrayRequester::channelArrayConnect.
countThe number of elements to put, 0 means "entire array".
stride1 means all the elements from offset to count, 2 means every other, 3 means every third, etc.

◆ setLength()

virtual void epics::pvAccess::ChannelArray::setLength ( size_t length)
pure virtual

Set the length and/or the capacity.

Parameters
lengthThe new length.

◆ unlock()

virtual void epics::pvAccess::Lockable::unlock ( )
inlinevirtualinherited

Definition at line 98 of file pvAccess.h.

Member Data Documentation

◆ num_instances

size_t epics::pvAccess::ChannelRequest::num_instances
staticinherited

Definition at line 212 of file pvAccess.h.


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