![]() |
This is Unofficial EPICS BASE Doxygen Site
|
#include "pvAccess.h"
Public Types | |
enum | ConnectionState { NEVER_CONNECTED, CONNECTED, DISCONNECTED, DESTROYED } |
typedef ChannelRequester | requester_type |
Public Member Functions | |
POINTER_DEFINITIONS (Channel) | |
Channel () | |
virtual | ~Channel () |
virtual std::string | getRequesterName () |
virtual void | message (std::string const &message, epics::pvData::MessageType messageType) |
virtual std::tr1::shared_ptr< ChannelProvider > | getProvider ()=0 |
virtual std::string | getRemoteAddress ()=0 |
virtual ConnectionState | getConnectionState () |
virtual std::string | getChannelName ()=0 |
virtual std::tr1::shared_ptr< ChannelRequester > | getChannelRequester ()=0 |
virtual bool | isConnected () |
virtual void | getField (GetFieldRequester::shared_pointer const &requester, std::string const &subField) |
virtual AccessRights | getAccessRights (epics::pvData::PVField::shared_pointer const &pvField) |
virtual ChannelProcess::shared_pointer | createChannelProcess (ChannelProcessRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) |
virtual ChannelGet::shared_pointer | createChannelGet (ChannelGetRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) |
virtual ChannelPut::shared_pointer | createChannelPut (ChannelPutRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) |
virtual ChannelPutGet::shared_pointer | createChannelPutGet (ChannelPutGetRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) |
virtual ChannelRPC::shared_pointer | createChannelRPC (ChannelRPCRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) |
virtual Monitor::shared_pointer | createMonitor (MonitorRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) |
virtual ChannelArray::shared_pointer | createChannelArray (ChannelArrayRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) |
virtual void | printInfo () |
virtual void | printInfo (std::ostream &out) |
![]() | |
POINTER_DEFINITIONS (Requester) | |
virtual | ~Requester () |
virtual void | message (std::string const &message, MessageType messageType=errorMessage) |
![]() | |
POINTER_DEFINITIONS (Destroyable) | |
virtual void | destroy ()=0 |
Static Public Attributes | |
static size_t | num_instances |
static const char * | ConnectionStateNames [] = { "NEVER_CONNECTED", "CONNECTED", "DISCONNECTED", "DESTROYED" } |
Additional Inherited Members | |
![]() | |
virtual | ~Destroyable () |
The interface through which Operations (get, put, monitor, ...) are initiated.
Handle for a Channel returned by ChannelProvider::createChannel()
At any given moment a Channel may be CONNECTED or DISCONNECTED. (NEVER_CONNECTED and DESTORYED are special cases of DISCONNECTED)
A Channel is required to honor calls to Channel::create*() methods while in the disconnected state.
A Channel is required to maintain a strong reference (shared_ptr<>) to the ChannelProvider through which it was created.
Definition at line 886 of file pvAccess.h.
Definition at line 893 of file pvAccess.h.
Channel connection status.
Enumerator | |
---|---|
NEVER_CONNECTED | |
CONNECTED | |
DISCONNECTED | |
DESTROYED |
Definition at line 906 of file pvAccess.h.
epics::pvAccess::Channel::Channel | ( | ) |
Definition at line 26 of file pvAccess.cpp.
|
virtual |
Definition at line 27 of file pvAccess.cpp.
|
virtual |
Initiate a request for a Array (get) action.
ChannelArrayRequester::channelArrayConnect() may be called before createChannelArray() returns, or at some time afterwards.
Failure is indicated by a call to channelArrayConnect with !Error::isOk()
Create a ChannelArray.
channelArrayRequester | The ChannelArrayRequester |
pvRequest | Additional options (e.g. triggering). |
ChannelArray
instance.Definition at line 365 of file pvAccess.cpp.
|
virtual |
Initiate a request for a Get action.
ChannelGetRequester::channelGetConnect() may be called before createChannelGet() returns, or at some time afterwards.
Failure is indicated by a call to channelProcessConnect with !Error::isOk()
Definition at line 308 of file pvAccess.cpp.
|
virtual |
Initiate a request for a Process action.
ChannelProcessRequester::channelProcessConnect() may be called before createChannelProcess() returns, or at some time afterwards.
Failure is indicated by a call to channelProcessConnect with !Error::isOk()
Definition at line 167 of file pvAccess.cpp.
|
virtual |
Initiate a request for a Put action.
ChannelPutRequester::channelPutConnect() may be called before createChannelPut() returns, or at some time afterwards.
Failure is indicated by a call to channelProcessConnect with !Error::isOk()
Definition at line 326 of file pvAccess.cpp.
|
virtual |
Initiate a request for a PutGet action.
ChannelPutGetRequester::channelPutGetConnect() may be called before createChannelPutGet() returns, or at some time afterwards.
Failure is indicated by a call to channelProcessConnect with !Error::isOk()
Definition at line 336 of file pvAccess.cpp.
|
virtual |
Initiate a request for a RPC action.
ChannelRPCRequester::channelRPCConnect() may be called before createChannelRPC() returns, or at some time afterwards.
Failure is indicated by a call to channelProcessConnect with !Error::isOk()
Reimplemented in epics::pvAccess::RPCChannel.
Definition at line 346 of file pvAccess.cpp.
|
virtual |
Initiate a request for a Monitor action.
MonitorRequester::channelMonitorConnect() may be called before createMonitor() returns, or at some time afterwards.
Failure is indicated by a call to monitorConnect with !Error::isOk()
Definition at line 355 of file pvAccess.cpp.
|
virtual |
Not useful...
pvField | The field for which access rights is desired. |
Reimplemented in epics::pvDatabase::ChannelLocal, epics::pvAccess::RPCChannel, epics::pvAccess::ca::CAChannel, and GWChannel.
Definition at line 57 of file pvAccess.cpp.
|
pure virtual |
The name passed to ChannelProvider::createChannel()
Implemented in epics::pvDatabase::ChannelLocal, epics::pvAccess::RPCChannel, epics::pvAccess::ca::CAChannel, BaseChannel, pvas::detail::SharedChannel, and GWChannel.
|
pure virtual |
The ChannelRequester passed to ChannelProvider::createChannel()
std::tr1::bad_weak_ptr |
Implemented in epics::pvDatabase::ChannelLocal, epics::pvAccess::RPCChannel, epics::pvAccess::ca::CAChannel, BaseChannel, pvas::detail::SharedChannel, and GWChannel.
|
virtual |
Poll the connection state in more detail
Reimplemented in epics::pvDatabase::ChannelLocal, TestPVChannel, epics::pvAccess::RPCChannel, epics::pvAccess::ca::CAChannel, and GWChannel.
Definition at line 47 of file pvAccess.cpp.
|
virtual |
Initiate a request to retrieve a description of the structure of this Channel.
While the type described by calls to getField() should match what is provided for all operations except RPC.
GetFieldRequester::getDone() will be called before getField() returns, or at some time afterwards.
Reimplemented in epics::pvAccess::ca::CAChannel.
Definition at line 51 of file pvAccess.cpp.
|
pure virtual |
The ChannelProvider from which this Channel was requested. May never be NULL.
Implemented in epics::pvDatabase::ChannelLocal, epics::pvAccess::RPCChannel, epics::pvAccess::ca::CAChannel, pvas::detail::SharedChannel, BaseChannel, and GWChannel.
|
pure virtual |
Returns the channel's remote address, signal name, etc... For example:
The value returned here will changed depending on the connection status. A disconnected channel should return an empty() string.
Implemented in epics::pvDatabase::ChannelLocal, TestPVChannel, epics::pvAccess::RPCChannel, epics::pvAccess::ca::CAChannel, pvas::detail::SharedChannel, BaseChannel, and GWChannel.
|
virtual |
The requester must have a name.
Implements epics::pvAccess::Requester.
Reimplemented in epics::pvAccess::RPCChannel, epics::pvDatabase::ChannelLocal, BaseChannel, and GWChannel.
Definition at line 29 of file pvAccess.cpp.
|
virtual |
Poll connection state
Reimplemented in epics::pvDatabase::ChannelLocal.
Definition at line 49 of file pvAccess.cpp.
|
virtual |
Reimplemented in epics::pvDatabase::ChannelLocal.
Definition at line 35 of file pvAccess.cpp.
epics::pvAccess::Channel::POINTER_DEFINITIONS | ( | Channel | ) |
|
inlinevirtual |
Prints detailed information about the context to the standard output stream.
Reimplemented in epics::pvDatabase::ChannelLocal.
Definition at line 1126 of file pvAccess.h.
|
inlinevirtual |
Prints detailed information about the context to the specified output stream.
out | the output stream. |
Reimplemented in epics::pvDatabase::ChannelLocal, epics::pvAccess::RPCChannel, PDBGroupChannel, epics::pvAccess::ca::CAChannel, PDBSingleChannel, GWChannel, and BaseChannel.
Definition at line 1132 of file pvAccess.h.
|
static |
Definition at line 910 of file pvAccess.h.
|
static |
Definition at line 895 of file pvAccess.h.