48 epics::pvData::MonitorElement::shared_pointer
lastelem;
75 MonitorCacheEntry::shared_pointer
entry;
76 epics::pvData::MonitorRequester::weak_pointer
req;
88 std::set<epics::pvData::MonitorElementPtr>
inuse;
92 MonitorUser(
const MonitorCacheEntry::shared_pointer&);
95 virtual void destroy();
117 epics::pvAccess::Channel::shared_pointer
channel;
118 epics::pvAccess::ChannelRequester::shared_pointer
requester;
138 CRequester(
const ChannelCacheEntry::shared_pointer& p);
140 ChannelCacheEntry::weak_pointer
chan;
145 epics::pvAccess::Channel::shared_pointer
const & channel);
146 virtual void channelStateChange(epics::pvAccess::Channel::shared_pointer
const & channel,
155 typedef std::map<std::string, ChannelCacheEntry::shared_pointer >
entries_t;
162 epics::pvAccess::ChannelProvider::shared_pointer
provider;
171 ChannelCache(
const epics::pvAccess::ChannelProvider::shared_pointer& prov);
174 ChannelCacheEntry::shared_pointer
lookup(
const std::string& name);
177 #endif // CHANCACHE_H
epics::pvData::BitSetPtr empty
MonitorCacheEntry::shared_pointer entry
virtual void unlisten(epics::pvData::MonitorPtr const &monitor)
epics::pvData::MonitorRequester::weak_pointer req
epicsMutex & mutex() const
epics::pvData::MonitorPtr mon
ChannelCacheEntry *const chan
epics::pvAccess::Channel::shared_pointer channel
POINTER_DEFINITIONS(MonitorCacheEntry)
mon_entries_t mon_entries
virtual std::string getRequesterName()
epicsMutex & mutex() const
std::vector< epicsUInt8 > pvrequest_t
epics::pvAccess::ChannelProvider::shared_pointer provider
weak_value_map< pvrequest_t, MonitorCacheEntry > mon_entries_t
virtual ~MonitorCacheEntry()
std::tr1::shared_ptr< const Structure > StructureConstPtr
weak_set< GWChannel > interested_t
Mark external symbols and entry points for shared libraries.
bucket * lookup(char *name)
epics::pvData::MonitorElementPtr overflowElement
epics::pvData::Status startresult
epics::pvAccess::ChannelRequester::shared_pointer requester
ChannelCacheEntry::weak_pointer chan
epicsMutex & mutex() const
MonitorCacheEntry(ChannelCacheEntry *ent, const epics::pvData::PVStructure::shared_pointer &pvr)
std::tr1::weak_ptr< GWChannel > srvchan
epics::pvData::StructureConstPtr typedesc
APIs for the epicsMutex mutual exclusion semaphore.
const std::string channelName
std::map< std::string, ChannelCacheEntry::shared_pointer > entries_t
virtual void monitorEvent(epics::pvData::MonitorPtr const &monitor)
Callback implemented by monitor clients.
static size_t num_instances
static size_t num_instances
epicsTimerQueueActive * timerQueue
ChannelCache *const cache
epicsMutex & mutex() const
static size_t num_instances
weak_set< MonitorUser > interested_t
std::tr1::shared_ptr< MonitorElement > MonitorElementPtr
epics::pvData::MonitorElement::shared_pointer lastelem
virtual void monitorConnect(epics::pvData::Status const &status, epics::pvData::MonitorPtr const &monitor, epics::pvData::StructureConstPtr const &structure)
static size_t num_instances
MonitorCacheEntry::pvrequest_t pvrequest_t
std::tr1::shared_ptr< Monitor > MonitorPtr
std::deque< epics::pvData::MonitorElementPtr > filled
std::set< epics::pvData::MonitorElementPtr > inuse