This is Unofficial EPICS BASE Doxygen Site
epics::pvAccess::BaseChannelRequesterFailureMessageTransportSender Class Reference

#include "baseChannelRequester.h"

+ Inheritance diagram for epics::pvAccess::BaseChannelRequesterFailureMessageTransportSender:
+ Collaboration diagram for epics::pvAccess::BaseChannelRequesterFailureMessageTransportSender:

Public Member Functions

 BaseChannelRequesterFailureMessageTransportSender (const epics::pvData::int8 command, Transport::shared_pointer const &transport, const pvAccessID ioid, const epics::pvData::int8 qos, const epics::pvData::Status &status)
 
virtual void send (epics::pvData::ByteBuffer *buffer, TransportSendControl *control) OVERRIDE FINAL
 
- Public Member Functions inherited from epics::pvAccess::TransportSender
 POINTER_DEFINITIONS (TransportSender)
 
 TransportSender ()
 
virtual ~TransportSender ()
 
- Public Member Functions inherited from epics::pvAccess::Lockable
 POINTER_DEFINITIONS (Lockable)
 
virtual ~Lockable ()
 
virtual void lock ()
 
virtual void unlock ()
 
- Public Member Functions inherited from epics::pvAccess::fair_queue< T >::entry
 entry ()
 
 ~entry ()
 

Additional Inherited Members

- Public Attributes inherited from epics::pvAccess::TransportSender
size_t bytesTX
 
size_t bytesRX
 

Detailed Description

Definition at line 75 of file baseChannelRequester.h.

Constructor & Destructor Documentation

epics::pvAccess::BaseChannelRequesterFailureMessageTransportSender::BaseChannelRequesterFailureMessageTransportSender ( const epics::pvData::int8  command,
Transport::shared_pointer const &  transport,
const pvAccessID  ioid,
const epics::pvData::int8  qos,
const epics::pvData::Status status 
)

Definition at line 115 of file baseChannelRequester.cpp.

116  :
117  _command(command),
118  _ioid(ioid),
119  _qos(qos),
120  _status(status),
121  _transport(transport)
122 {
123 }

Member Function Documentation

void epics::pvAccess::BaseChannelRequesterFailureMessageTransportSender::send ( epics::pvData::ByteBuffer buffer,
TransportSendControl control 
)
virtual

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.

Implements epics::pvAccess::TransportSender.

Definition at line 125 of file baseChannelRequester.cpp.

126 {
127  control->startMessage(_command, sizeof(int32)/sizeof(int8) + 1);
128  buffer->putInt(_ioid);
129  buffer->put(_qos);
130  _status.serialize(buffer, control);
131 }
int8_t int8
Definition: pvType.h:75
EPICS_ALWAYS_INLINE void putInt(int32 value)
Definition: byteBuffer.h:537
void serialize(ByteBuffer *buffer, SerializableControl *flusher) const
Definition: status.cpp:45
int32_t int32
Definition: pvType.h:83

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