This is Unofficial EPICS BASE Doxygen Site
PDBGroupChannel Struct Reference

#include "pdbgroup.h"

+ Inheritance diagram for PDBGroupChannel:
+ Collaboration diagram for PDBGroupChannel:

Public Member Functions

 POINTER_DEFINITIONS (PDBGroupChannel)
 
 PDBGroupChannel (const PDBGroupPV::shared_pointer &pv, const std::tr1::shared_ptr< epics::pvAccess::ChannelProvider > &prov, const epics::pvAccess::ChannelRequester::shared_pointer &req)
 
virtual ~PDBGroupChannel ()
 
virtual epics::pvAccess::ChannelPut::shared_pointer createChannelPut (epics::pvAccess::ChannelPutRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) OVERRIDE FINAL
 
virtual epics::pvData::Monitor::shared_pointer createMonitor (epics::pvData::MonitorRequester::shared_pointer const &requester, epics::pvData::PVStructure::shared_pointer const &pvRequest) OVERRIDE FINAL
 
virtual void printInfo (std::ostream &out) OVERRIDE FINAL
 
- Public Member Functions inherited from BaseChannel
 BaseChannel (const std::string &name, const std::tr1::weak_ptr< epics::pvAccess::ChannelProvider > &prov, const epics::pvAccess::ChannelRequester::shared_pointer &req, const epics::pvData::StructureConstPtr &dtype)
 
virtual ~BaseChannel ()
 
virtual std::string getRequesterName () OVERRIDE
 
virtual void destroy () OVERRIDE FINAL
 
virtual std::tr1::shared_ptr< epics::pvAccess::ChannelProvidergetProvider () OVERRIDE FINAL
 
virtual std::string getRemoteAddress () OVERRIDE
 
virtual std::string getChannelName () OVERRIDE FINAL
 
virtual std::tr1::shared_ptr< epics::pvAccess::ChannelRequestergetChannelRequester () OVERRIDE FINAL
 
virtual void getField (epics::pvAccess::GetFieldRequester::shared_pointer const &requester, std::string const &subField) OVERRIDE
 
- Public Member Functions inherited from epics::pvAccess::Channel
 POINTER_DEFINITIONS (Channel)
 
 Channel ()
 
virtual ~Channel ()
 
virtual void message (std::string const &message, epics::pvData::MessageType messageType)
 
virtual ConnectionState getConnectionState ()
 
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 ()
 
- Public Member Functions inherited from epics::pvAccess::Requester
 POINTER_DEFINITIONS (Requester)
 
virtual ~Requester ()
 
virtual void message (std::string const &message, MessageType messageType=errorMessage)
 
- Public Member Functions inherited from epics::pvAccess::Destroyable
 POINTER_DEFINITIONS (Destroyable)
 

Public Attributes

PDBGroupPV::shared_pointer pv
 
std::vector< ASCLIENTaspvt
 
ASCred cred
 
- Public Attributes inherited from BaseChannel
epicsMutex lock
 
const std::string pvname
 
const epics::pvAccess::ChannelProvider::weak_pointer provider
 
const requester_type::weak_pointer requester
 
const epics::pvData::StructureConstPtr fielddesc
 

Static Public Attributes

static size_t num_instances
 
- Static Public Attributes inherited from epics::pvAccess::Channel
static size_t num_instances
 
static const char * ConnectionStateNames [] = { "NEVER_CONNECTED", "CONNECTED", "DISCONNECTED", "DESTROYED" }
 

Additional Inherited Members

- Public Types inherited from BaseChannel
typedef epicsGuard< epicsMutex > guard_t
 
- Public Types inherited from epics::pvAccess::Channel
enum  ConnectionState { NEVER_CONNECTED, CONNECTED, DISCONNECTED, DESTROYED }
 
typedef ChannelRequester requester_type
 
- Protected Member Functions inherited from epics::pvAccess::Destroyable
virtual ~Destroyable ()
 

Detailed Description

Definition at line 136 of file pdbgroup.h.

Constructor & Destructor Documentation

PDBGroupChannel::PDBGroupChannel ( const PDBGroupPV::shared_pointer &  pv,
const std::tr1::shared_ptr< epics::pvAccess::ChannelProvider > &  prov,
const epics::pvAccess::ChannelRequester::shared_pointer &  req 
)

Definition at line 250 of file pdbgroup.cpp.

253  :BaseChannel(pv->name, prov, req, pv->fielddesc)
254  ,pv(pv)
255 {
256  epics::atomic::increment(num_instances);
257 }
static size_t num_instances
Definition: pdbgroup.h:146
Definition: tool_lib.h:67
PDBGroupPV::shared_pointer pv
Definition: pdbgroup.h:141
BaseChannel(const std::string &name, const std::tr1::weak_ptr< epics::pvAccess::ChannelProvider > &prov, const epics::pvAccess::ChannelRequester::shared_pointer &req, const epics::pvData::StructureConstPtr &dtype)
Definition: pvahelper.h:21
char * name
Definition: tool_lib.h:69
PDBGroupChannel::~PDBGroupChannel ( )
virtual

Definition at line 259 of file pdbgroup.cpp.

260 {
261  epics::atomic::decrement(num_instances);
262 }
static size_t num_instances
Definition: pdbgroup.h:146

Member Function Documentation

pva::ChannelPut::shared_pointer PDBGroupChannel::createChannelPut ( epics::pvAccess::ChannelPutRequester::shared_pointer const &  requester,
epics::pvData::PVStructure::shared_pointer const &  pvRequest 
)
virtual

Definition at line 270 of file pdbgroup.cpp.

273 {
274  PDBGroupPut::shared_pointer ret(new PDBGroupPut(shared_from_this(), requester, pvRequest));
275  requester->channelPutConnect(pvd::Status(), ret, fielddesc);
276  return ret;
277 }
const requester_type::weak_pointer requester
Definition: pvahelper.h:35
const epics::pvData::StructureConstPtr fielddesc
Definition: pvahelper.h:36
pva::Monitor::shared_pointer PDBGroupChannel::createMonitor ( epics::pvData::MonitorRequester::shared_pointer const &  requester,
epics::pvData::PVStructure::shared_pointer const &  pvRequest 
)
virtual

Definition at line 280 of file pdbgroup.cpp.

283 {
284  PDBGroupMonitor::shared_pointer ret(new PDBGroupMonitor(pv->shared_from_this(), requester, pvRequest));
285  ret->weakself = ret;
286  assert(!!pv->complete);
287  guard_t G(pv->lock);
288  ret->connect(G, pv->complete);
289  return ret;
290 }
#define assert(exp)
Declare that a condition should be true.
Definition: epicsAssert.h:70
Definition: tool_lib.h:67
const requester_type::weak_pointer requester
Definition: pvahelper.h:35
epicsGuard< epicsMutex > guard_t
Definition: pvahelper.h:31
PDBGroupChannel::POINTER_DEFINITIONS ( PDBGroupChannel  )
void PDBGroupChannel::printInfo ( std::ostream &  out)
virtual

Prints detailed information about the context to the specified output stream.

Parameters
outthe output stream.

Reimplemented from BaseChannel.

Definition at line 264 of file pdbgroup.cpp.

265 {
266  out<<"PDBGroupChannel";
267 }

Member Data Documentation

std::vector<ASCLIENT> PDBGroupChannel::aspvt

Definition at line 142 of file pdbgroup.h.

ASCred PDBGroupChannel::cred

Definition at line 144 of file pdbgroup.h.

size_t PDBGroupChannel::num_instances
static

Definition at line 146 of file pdbgroup.h.

PDBGroupPV::shared_pointer PDBGroupChannel::pv

Definition at line 141 of file pdbgroup.h.


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