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

A request that expects an response. More...

#include <remote/pv/remote.h>

Inheritance diagram for epics::pvAccess::ResponseRequest:
Collaboration diagram for epics::pvAccess::ResponseRequest:

Public Types

typedef std::tr1::shared_ptr< ResponseRequestshared_pointer
 
typedef std::tr1::shared_ptr< const ResponseRequestconst_shared_pointer
 
typedef std::tr1::weak_ptr< ResponseRequestweak_pointer
 
typedef std::tr1::weak_ptr< const ResponseRequestconst_weak_pointer
 

Public Member Functions

virtual pvAccessID getIOID () const =0
 Get I/O ID.
 
virtual void timeout ()=0
 Timeout notification.
 
virtual void cancel ()=0
 Cancel response request (always to be called to complete/destroy).
 
virtual void reportStatus (Channel::ConnectionState status)=0
 Report status to clients (e.g.
 
virtual std::tr1::shared_ptr< ChannelBaseRequestergetRequester ()=0
 used by MessageHandler and reportChannelStateChange().
 
virtual void response (Transport::shared_pointer const &transport, epics::pvData::int8 version, epics::pvData::ByteBuffer *payloadBuffer)=0
 Notification response.
 
virtual void send (epics::pvData::ByteBuffer *buffer, TransportSendControl *control)=0
 Called by transport.
 
virtual void lock ()
 
virtual void unlock ()
 

Public Attributes

size_t bytesTX
 
size_t bytesRX
 

Detailed Description

A request that expects an response.

Responses identified by its I/O ID.

Definition at line 353 of file remote.h.

Member Typedef Documentation

◆ const_shared_pointer

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

Definition at line 355 of file remote.h.

◆ const_weak_pointer

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

Definition at line 355 of file remote.h.

◆ shared_pointer

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

Definition at line 355 of file remote.h.

◆ weak_pointer

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

Definition at line 355 of file remote.h.

Constructor & Destructor Documentation

◆ ~ResponseRequest()

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

Definition at line 357 of file remote.h.

Member Function Documentation

◆ getIOID()

virtual pvAccessID epics::pvAccess::ResponseRequest::getIOID ( ) const
pure virtual

Get I/O ID.

Returns
ioid

◆ getRequester()

virtual std::tr1::shared_ptr< ChannelBaseRequester > epics::pvAccess::ResponseRequest::getRequester ( )
pure virtual

used by MessageHandler and reportChannelStateChange().

May return NULL

◆ lock()

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

Definition at line 97 of file pvAccess.h.

◆ reportStatus()

virtual void epics::pvAccess::ResponseRequest::reportStatus ( Channel::ConnectionState status)
pure virtual

Report status to clients (e.g.

disconnected).

Parameters
statusto report.

◆ response()

virtual void epics::pvAccess::ResponseRequest::response ( Transport::shared_pointer const & transport,
epics::pvData::int8 version,
epics::pvData::ByteBuffer * payloadBuffer )
pure virtual

Notification response.

Parameters
transport
version
payloadBuffer

◆ send()

virtual void epics::pvAccess::TransportSender::send ( epics::pvData::ByteBuffer * buffer,
TransportSendControl * control )
pure virtualinherited

Called by transport.

By this call transport gives callee ownership over the buffer. Calls on TransportSendControl instance must be made from calling thread. Moreover, ownership is valid only for the time of call of this method. NOTE: these limitations allow efficient implementation.

Implemented in epics::pvAccess::BeaconEmitter.

◆ unlock()

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

Definition at line 98 of file pvAccess.h.

Member Data Documentation

◆ bytesRX

size_t epics::pvAccess::TransportSender::bytesRX
inherited

Definition at line 157 of file remote.h.

◆ bytesTX

size_t epics::pvAccess::TransportSender::bytesTX
inherited

Definition at line 156 of file remote.h.


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