#include "responseHandlers.h"
|
virtual | ~ServerChannelPutRequesterImpl () |
|
virtual void | channelPutConnect (const epics::pvData::Status &status, ChannelPut::shared_pointer const &channelPut, epics::pvData::Structure::const_shared_pointer const &structure) OVERRIDE FINAL |
|
virtual void | putDone (const epics::pvData::Status &status, ChannelPut::shared_pointer const &channelPut) OVERRIDE FINAL |
|
virtual void | getDone (const epics::pvData::Status &status, ChannelPut::shared_pointer const &channelPut, epics::pvData::PVStructure::shared_pointer const &pvStructure, epics::pvData::BitSet::shared_pointer const &bitSet) OVERRIDE FINAL |
|
virtual void | destroy () OVERRIDE FINAL |
|
ChannelPut::shared_pointer | getChannelPut () |
|
virtual std::tr1::shared_ptr< ChannelRequest > | getOperation () OVERRIDE FINAL |
| The Operation associated with this Requester, except for GetField and Monitor (which are special snowflakes...) More...
|
|
epics::pvData::BitSet::shared_pointer | getPutBitSet () |
|
epics::pvData::PVStructure::shared_pointer | getPutPVStructure () |
|
void | send (epics::pvData::ByteBuffer *buffer, TransportSendControl *control) OVERRIDE FINAL |
|
| POINTER_DEFINITIONS (BaseChannelRequester) |
|
| BaseChannelRequester (ServerContextImpl::shared_pointer const &context, std::tr1::shared_ptr< ServerChannel > const &channel, const pvAccessID ioid, Transport::shared_pointer const &transport) |
|
virtual | ~BaseChannelRequester () |
|
bool | startRequest (epics::pvData::int32 qos) |
|
void | stopRequest () |
|
epics::pvData::int32 | getPendingRequest () |
|
virtual std::string | getRequesterName () OVERRIDE FINAL |
|
virtual void | message (std::string const &message, epics::pvData::MessageType messageType) OVERRIDE FINAL |
|
virtual void | stats (Stats &s) const OVERRIDE FINAL |
| Query current counter values. More...
|
|
| POINTER_DEFINITIONS (TransportSender) |
|
| TransportSender () |
|
virtual | ~TransportSender () |
|
| POINTER_DEFINITIONS (Lockable) |
|
virtual | ~Lockable () |
|
virtual void | lock () |
|
virtual void | unlock () |
|
| entry () |
|
| ~entry () |
|
virtual | ~NetStats () |
|
| POINTER_DEFINITIONS (Destroyable) |
|
| POINTER_DEFINITIONS (ChannelPutRequester) |
|
virtual | ~ChannelPutRequester () |
|
| POINTER_DEFINITIONS (ChannelBaseRequester) |
|
| ChannelBaseRequester () |
|
virtual | ~ChannelBaseRequester () |
|
virtual void | channelDisconnect (bool destroy) |
|
|
static ChannelPutRequester::shared_pointer | create (ServerContextImpl::shared_pointer const &context, std::tr1::shared_ptr< ServerChannel > const &channel, const pvAccessID ioid, Transport::shared_pointer const &transport, epics::pvData::PVStructure::shared_pointer const &pvRequest) |
|
static void | message (Transport::shared_pointer const &transport, const pvAccessID ioid, const std::string message, const epics::pvData::MessageType messageType) |
|
static void | sendFailureMessage (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 342 of file responseHandlers.h.
Definition at line 1328 of file responseHandlers.cpp.
BaseChannelRequester(ServerContextImpl::shared_pointer const &context, std::tr1::shared_ptr< ServerChannel > const &channel, const pvAccessID ioid, Transport::shared_pointer const &transport)
virtual epics::pvAccess::ServerChannelPutRequesterImpl::~ServerChannelPutRequesterImpl |
( |
| ) |
|
|
inlinevirtual |
void epics::pvAccess::ServerChannelPutRequesterImpl::activate |
( |
epics::pvData::PVStructure::shared_pointer const & |
pvRequest | ) |
|
|
protected |
Definition at line 1344 of file responseHandlers.cpp.
const std::tr1::shared_ptr< ServerChannel > _channel
#define INIT_EXCEPTION_GUARD(cmd, var, code)
bool startRequest(epics::pvData::int32 qos)
std::tr1::shared_ptr< ServerChannelPutRequesterImpl > shared_pointer
void epics::pvAccess::ServerChannelPutRequesterImpl::channelPutConnect |
( |
const epics::pvData::Status & |
status, |
|
|
ChannelPut::shared_pointer const & |
channelPut, |
|
|
epics::pvData::Structure::const_shared_pointer const & |
structure |
|
) |
| |
|
virtual |
The client and server have both processed the createChannelPut request.
- Parameters
-
status | Completion status. |
channelPut | The channelPut interface or null if the request failed. |
structure | The introspection interface of requested put/get structure or nullptr if the request failed. |
Implements epics::pvAccess::ChannelPutRequester.
Definition at line 1352 of file responseHandlers.cpp.
1357 _channelPut = channelPut;
1361 _bitSet = createBitSetFor(_pvStructure, _bitSet);
1365 TransportSender::shared_pointer thisSender = shared_from_this();
epics::pvData::Mutex _mutex
shared_ptr< T > static_pointer_cast(shared_ptr< U > const &r) BOOST_NOEXCEPT
A lock for multithreading.
const Transport::shared_pointer _transport
Data interface for a structure,.
virtual void destroy() OVERRIDE FINAL
ChannelPutRequester::shared_pointer epics::pvAccess::ServerChannelPutRequesterImpl::create |
( |
ServerContextImpl::shared_pointer const & |
context, |
|
|
std::tr1::shared_ptr< ServerChannel > const & |
channel, |
|
|
const pvAccessID |
ioid, |
|
|
Transport::shared_pointer const & |
transport, |
|
|
epics::pvData::PVStructure::shared_pointer const & |
pvRequest |
|
) |
| |
|
static |
Definition at line 1334 of file responseHandlers.cpp.
1339 ChannelPutRequester::shared_pointer thisPointer = tp;
ServerChannelPutRequesterImpl(ServerContextImpl::shared_pointer const &context, std::tr1::shared_ptr< ServerChannel > const &channel, const pvAccessID ioid, Transport::shared_pointer const &transport)
void activate(epics::pvData::PVStructure::shared_pointer const &pvRequest)
void epics::pvAccess::ServerChannelPutRequesterImpl::destroy |
( |
| ) |
|
|
virtual |
Destroy this instance.
Implements epics::pvAccess::Destroyable.
Definition at line 1400 of file responseHandlers.cpp.
1409 ChannelPut::shared_pointer channelPut = _channelPut;
1416 _channelPut->destroy();
1417 _channelPut.reset();
const std::tr1::shared_ptr< ServerChannel > _channel
epics::pvData::Mutex _mutex
A lock for multithreading.
std::tr1::shared_ptr< ServerChannelPutRequesterImpl > shared_pointer
ChannelPut::shared_pointer epics::pvAccess::ServerChannelPutRequesterImpl::getChannelPut |
( |
| ) |
|
void epics::pvAccess::ServerChannelPutRequesterImpl::getDone |
( |
const epics::pvData::Status & |
status, |
|
|
ChannelPut::shared_pointer const & |
channelPut, |
|
|
epics::pvData::PVStructure::shared_pointer const & |
pvStructure, |
|
|
epics::pvData::BitSet::shared_pointer const & |
bitSet |
|
) |
| |
|
virtual |
The get request is done. This is always called with no locks held.
Ownership transfer as with ChannelGetRequester::getDone()
- Parameters
-
status | Completion status. |
channelPut | The channelPut interface. |
pvStructure | The PVStructure that holds the data or nullptr if the request failed. |
bitSet | The bitSet for that shows what data has changed or nullptr if the request failed. |
Implements epics::pvAccess::ChannelPutRequester.
Definition at line 1385 of file responseHandlers.cpp.
1393 _pvStructure->copyUnchecked(*pvStructure, *_bitSet);
1396 TransportSender::shared_pointer thisSender = shared_from_this();
epics::pvData::Mutex _mutex
A lock for multithreading.
const Transport::shared_pointer _transport
virtual std::tr1::shared_ptr<ChannelRequest> epics::pvAccess::ServerChannelPutRequesterImpl::getOperation |
( |
| ) |
|
|
inlinevirtual |
BitSet::shared_pointer epics::pvAccess::ServerChannelPutRequesterImpl::getPutBitSet |
( |
| ) |
|
PVStructure::shared_pointer epics::pvAccess::ServerChannelPutRequesterImpl::getPutPVStructure |
( |
| ) |
|
void epics::pvAccess::ServerChannelPutRequesterImpl::putDone |
( |
const epics::pvData::Status & |
status, |
|
|
ChannelPut::shared_pointer const & |
channelPut |
|
) |
| |
|
virtual |
The request is done. This is always called with no locks held.
- Parameters
-
status | Completion status. |
channelPut | The channelPut interface. |
Implements epics::pvAccess::ChannelPutRequester.
Definition at line 1375 of file responseHandlers.cpp.
1381 TransportSender::shared_pointer thisSender = shared_from_this();
epics::pvData::Mutex _mutex
A lock for multithreading.
const Transport::shared_pointer _transport
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 1440 of file responseHandlers.cpp.
1444 ChannelPut::shared_pointer channelPut;
1447 channelPut = _channelPut;
1449 if (!channelPut && !(request &
QOS_INIT))
1468 else if ((
QOS_GET & request) != 0)
1471 _bitSet->serialize(buffer, control);
1472 _pvStructure->serialize(buffer, control, _bitSet.get());
EPICS_ALWAYS_INLINE void putInt(int32 value)
epics::pvData::Mutex _mutex
A lock for multithreading.
void serialize(ByteBuffer *buffer, SerializableControl *flusher) const
EPICS_ALWAYS_INLINE void putByte(int8 value)
virtual void cachedSerialize(std::tr1::shared_ptr< const Field > const &field, ByteBuffer *buffer)=0
epics::pvData::int32 getPendingRequest()
virtual void destroy() OVERRIDE FINAL
virtual void startMessage(epics::pvData::int8 command, std::size_t ensureCapacity, epics::pvData::int32 payloadSize=0)=0
The documentation for this class was generated from the following files: