This is Unofficial EPICS BASE Doxygen Site
epics::pvDatabase Namespace Reference

Classes

class  AddRecord
 Add another record in the same database. More...
 
class  ChannelArrayLocal
 
class  ChannelGetLocal
 
class  ChannelLocal
 Channel for accessing a PVRecord. More...
 
class  ChannelProcessLocal
 
class  ChannelProviderLocal
 ChannelProvider for PVDatabase. More...
 
class  ChannelPutGetLocal
 
class  ChannelPutLocal
 
class  ChannelRPCLocal
 
class  ControlSupport
 Base interface for a ControlSupport. More...
 
class  LocalChannelProviderFactory
 
class  MonitorElementQueue
 
class  MonitorLocal
 
class  ProcessRecord
 Process another record in the same database. More...
 
class  PVDatabase
 The interface for a database of PVRecords. More...
 
class  PVListener
 Listener for PVRecord::message. More...
 
class  PVRecord
 Base interface for a PVRecord. More...
 
class  PVRecordClient
 An interface implemented by code that accesses the record. More...
 
class  PVRecordField
 Interface for a field of a record. More...
 
class  PVRecordStructure
 Interface for a field that is a structure. More...
 
class  PVSupport
 Base interface for a PVSupport. More...
 
class  RemoveRecord
 Remove another record in the same database. More...
 
class  ScalarAlarmSupport
 Base interface for a ScalarAlarmSupport. More...
 
class  TraceRecord
 Trace activity of PVRecord. More...
 

Typedefs

typedef std::tr1::shared_ptr< AddRecordAddRecordPtr
 
typedef std::tr1::shared_ptr< ChannelProviderLocalChannelProviderLocalPtr
 
typedef std::tr1::weak_ptr< ChannelProviderLocalChannelProviderLocalWPtr
 
typedef std::tr1::shared_ptr< ChannelLocalChannelLocalPtr
 
typedef std::tr1::weak_ptr< ChannelLocalChannelLocalWPtr
 
typedef std::tr1::shared_ptr< ControlSupportControlSupportPtr
 
typedef std::tr1::shared_ptr< epicsThread > EpicsThreadPtr
 
typedef std::tr1::shared_ptr< ProcessRecordProcessRecordPtr
 
typedef std::tr1::shared_ptr< PVRecordPVRecordPtr
 
typedef std::tr1::weak_ptr< PVRecordPVRecordWPtr
 
typedef std::map< std::string, PVRecordPtrPVRecordMap
 
typedef std::tr1::shared_ptr< PVRecordFieldPVRecordFieldPtr
 
typedef std::vector< PVRecordFieldPtrPVRecordFieldPtrArray
 
typedef std::tr1::shared_ptr< PVRecordFieldPtrArrayPVRecordFieldPtrArrayPtr
 
typedef std::tr1::shared_ptr< PVRecordStructurePVRecordStructurePtr
 
typedef std::tr1::weak_ptr< PVRecordStructurePVRecordStructureWPtr
 
typedef std::tr1::shared_ptr< PVRecordClientPVRecordClientPtr
 
typedef std::tr1::weak_ptr< PVRecordClientPVRecordClientWPtr
 
typedef std::tr1::shared_ptr< PVListenerPVListenerPtr
 
typedef std::tr1::weak_ptr< PVListenerPVListenerWPtr
 
typedef std::tr1::shared_ptr< PVDatabasePVDatabasePtr
 
typedef std::tr1::weak_ptr< PVDatabasePVDatabaseWPtr
 
typedef std::tr1::shared_ptr< PVSupportPVSupportPtr
 
typedef std::tr1::shared_ptr< RemoveRecordRemoveRecordPtr
 
typedef std::tr1::shared_ptr< ScalarAlarmSupportScalarAlarmSupportPtr
 
typedef std::tr1::shared_ptr< TraceRecordTraceRecordPtr
 
typedef std::tr1::shared_ptr< ChannelProcessLocalChannelProcessLocalPtr
 
typedef std::tr1::shared_ptr< ChannelGetLocalChannelGetLocalPtr
 
typedef std::tr1::shared_ptr< ChannelPutLocalChannelPutLocalPtr
 
typedef std::tr1::shared_ptr< ChannelPutGetLocalChannelPutGetLocalPtr
 
typedef std::tr1::shared_ptr< ChannelRPCLocalChannelRPCLocalPtr
 
typedef std::tr1::shared_ptr< ChannelArrayLocalChannelArrayLocalPtr
 
typedef std::tr1::shared_ptr< PVArrayPVArrayPtr
 
typedef std::tr1::shared_ptr< MonitorLocalMonitorLocalPtr
 
typedef std::tr1::shared_ptr< MonitorElementQueueMonitorElementQueuePtr
 
typedef std::tr1::shared_ptr< MonitorRequesterMonitorRequesterPtr
 

Functions

std::ostream & operator<< (std::ostream &o, const PVRecord &record)
 
epicsShareFunc epics::pvData::MonitorPtr createMonitorLocal (PVRecordPtr const &pvRecord, epics::pvData::MonitorRequester::shared_pointer const &monitorRequester, epics::pvData::PVStructurePtr const &pvRequest)
 
epicsShareFunc ChannelProviderLocalPtr getChannelProviderLocal ()
 
MonitorPtr createMonitorLocal (PVRecordPtr const &pvRecord, MonitorRequester::shared_pointer const &monitorRequester, PVStructurePtr const &pvRequest)
 

Typedef Documentation

typedef std::tr1::shared_ptr<AddRecord> epics::pvDatabase::AddRecordPtr

Definition at line 21 of file addRecord.h.

Definition at line 55 of file channelLocal.cpp.

Definition at line 47 of file channelLocal.cpp.

typedef std::tr1::shared_ptr<ChannelLocal> epics::pvDatabase::ChannelLocalPtr

Definition at line 36 of file channelProviderLocal.h.

Definition at line 38 of file channelProviderLocal.h.

Definition at line 45 of file channelLocal.cpp.

Definition at line 33 of file channelProviderLocal.h.

Definition at line 35 of file channelProviderLocal.h.

Definition at line 51 of file channelLocal.cpp.

Definition at line 49 of file channelLocal.cpp.

Definition at line 53 of file channelLocal.cpp.

Definition at line 21 of file controlSupport.h.

typedef std::tr1::shared_ptr<epicsThread> epics::pvDatabase::EpicsThreadPtr

Definition at line 23 of file processRecord.h.

Definition at line 50 of file monitorFactory.cpp.

typedef std::tr1::shared_ptr<MonitorLocal> epics::pvDatabase::MonitorLocalPtr

Definition at line 39 of file monitorFactory.cpp.

Definition at line 132 of file monitorFactory.cpp.

typedef std::tr1::shared_ptr<ProcessRecord> epics::pvDatabase::ProcessRecordPtr

Definition at line 25 of file processRecord.h.

typedef std::tr1::shared_ptr<PVArray> epics::pvDatabase::PVArrayPtr

Definition at line 952 of file channelLocal.cpp.

typedef std::tr1::shared_ptr<PVDatabase> epics::pvDatabase::PVDatabasePtr

Definition at line 43 of file pvDatabase.h.

typedef std::tr1::weak_ptr<PVDatabase> epics::pvDatabase::PVDatabaseWPtr

Definition at line 45 of file pvDatabase.h.

typedef std::tr1::shared_ptr<PVListener> epics::pvDatabase::PVListenerPtr

Definition at line 39 of file pvDatabase.h.

typedef std::tr1::weak_ptr<PVListener> epics::pvDatabase::PVListenerWPtr

Definition at line 41 of file pvDatabase.h.

Definition at line 35 of file pvDatabase.h.

Definition at line 37 of file pvDatabase.h.

typedef std::tr1::shared_ptr<PVRecordField> epics::pvDatabase::PVRecordFieldPtr

Definition at line 26 of file pvDatabase.h.

Definition at line 28 of file pvDatabase.h.

Definition at line 29 of file pvDatabase.h.

typedef std::map<std::string,PVRecordPtr> epics::pvDatabase::PVRecordMap

Definition at line 24 of file pvDatabase.h.

typedef std::tr1::shared_ptr<PVRecord> epics::pvDatabase::PVRecordPtr

Definition at line 21 of file pvDatabase.h.

Definition at line 31 of file pvDatabase.h.

Definition at line 33 of file pvDatabase.h.

typedef std::tr1::weak_ptr<PVRecord> epics::pvDatabase::PVRecordWPtr

Definition at line 23 of file pvDatabase.h.

typedef std::tr1::shared_ptr<PVSupport> epics::pvDatabase::PVSupportPtr

Definition at line 25 of file pvSupport.h.

typedef std::tr1::shared_ptr<RemoveRecord> epics::pvDatabase::RemoveRecordPtr

Definition at line 21 of file removeRecord.h.

Definition at line 24 of file scalarAlarmSupport.h.

typedef std::tr1::shared_ptr<TraceRecord> epics::pvDatabase::TraceRecordPtr

Definition at line 22 of file traceRecord.h.

Function Documentation

epicsShareFunc epics::pvData::MonitorPtr epics::pvDatabase::createMonitorLocal ( PVRecordPtr const &  pvRecord,
epics::pvData::MonitorRequester::shared_pointer const &  monitorRequester,
epics::pvData::PVStructurePtr const &  pvRequest 
)
MonitorPtr epics::pvDatabase::createMonitorLocal ( PVRecordPtr const &  pvRecord,
MonitorRequester::shared_pointer const &  monitorRequester,
PVStructurePtr const &  pvRequest 
)

Definition at line 455 of file monitorFactory.cpp.

459 {
460  MonitorLocalPtr monitor(new MonitorLocal(
461  monitorRequester,pvRecord));
462  bool result = monitor->init(pvRequest);
463  if(!result) {
464  MonitorPtr monitor;
466  monitorRequester->monitorConnect(
467  failedToCreateMonitorStatus,monitor,structure);
468  return nullMonitor;
469  }
470  if(pvRecord->getTraceLevel()>0)
471  {
472  cout << "MonitorFactory::createMonitor"
473  << " recordName " << pvRecord->getRecordName() << endl;
474  }
475  return monitor;
476 }
pvac::PutEvent result
Definition: clientSync.cpp:117
std::tr1::shared_ptr< const Structure > StructureConstPtr
Definition: pvIntrospect.h:162
std::tr1::shared_ptr< MonitorLocal > MonitorLocalPtr
std::tr1::shared_ptr< Monitor > MonitorPtr
Definition: monitor.h:44
ChannelProviderLocalPtr epics::pvDatabase::getChannelProviderLocal ( )

Definition at line 56 of file channelProviderLocal.cpp.

57 {
58  static int firstTime = 1;
59  if (firstTime) {
60  firstTime = 0;
61  ChannelProviderFactory::shared_pointer factory(
62  new LocalChannelProviderFactory());
63  ChannelProviderRegistry::servers()->add(factory);
64  }
65  ChannelProvider::shared_pointer channelProvider =
66  ChannelProviderRegistry::servers()->getProvider(providerName);
67  return std::tr1::dynamic_pointer_cast<ChannelProviderLocal>(channelProvider);
68 }
shared_ptr< T > dynamic_pointer_cast(shared_ptr< U > const &r) BOOST_NOEXCEPT
Definition: shared_ptr.hpp:808
GLBLTYPE ELLLIST servers
Definition: server.h:193
epicsShareFunc std::ostream & epics::pvDatabase::operator<< ( std::ostream &  o,
const PVRecord record 
)

Definition at line 313 of file pvRecord.cpp.

314 {
315  o << format::indent() << "record " << record.getRecordName() << endl;
316  {
318  o << *record.getPVRecordStructure()->getPVStructure();
319  }
320  return o;
321 }
PVRecordStructurePtr getPVRecordStructure() const
Get the top level PVRecordStructure.
Definition: pvDatabase.h:135
std::string getRecordName() const
Get the name of the record.
Definition: pvDatabase.h:129