Commit Graph
82 Commits
Author SHA1 Message Date
Michael Davidsaver 250826ffb9 add reftrack to pvac 2017-11-22 12:32:38 -06:00
Michael Davidsaver dc99e2ae4c add ChannelProviderRegistry::addSingleton()
Helper for providers of singleton resources.
Useful for process-wide resources like the PDB.
2017-11-05 12:22:39 -06:00
Michael Davidsaver 5f96f5722e pvac: client monitor locking 2017-11-05 12:19:10 -06:00
Michael Davidsaver 393ac72785 minor doc 2017-10-05 15:33:48 +02:00
Michael Davidsaver 4eb8856a00 pvac: fix MonitorSync method name collision 2017-09-30 14:22:25 -05:00
Michael Davidsaver b806b7ca42 pvac: generalize sync. put() 2017-09-30 13:54:59 -05:00
Michael Davidsaver 9460fab294 pvac: ClientProvider ctor from ChannelProvider 2017-09-29 16:22:19 -05:00
Michael Davidsaver 25c7da43f2 pvac: better Requester names
pass through the client name (aka the channel name)
2017-09-06 13:49:46 -05:00
Michael Davidsaver 8a24f9cd9c Channel::createChannelProcess default ensure process=true 2017-09-06 12:48:03 -05:00
Michael Davidsaver 33fb103a4b defaults ChanneGet/Process use ChannelPut
provide default implementations of
Channel::createChannelGet() and Channel::createChannelProcess()
which proxy to Channel::createChannelPut().

Get uses ChannelPut::get().
Process uses ChannelPut::put() with an empty bit set (no data)
2017-09-05 15:45:36 -05:00
Michael Davidsaver 6ba8416736 reftrace Channel 2017-09-02 09:55:15 -05:00
Michael Davidsaver 79874e1811 reftrack more classes
include the common abstract bases used by all ChannelProviders.
2017-09-02 09:55:15 -05:00
Michael Davidsaver 98df225583 insturment with reftrack 2017-08-30 11:17:03 -05:00
Michael Davidsaver b53761d4d4 MonitorElement remove unused 2017-07-21 13:12:30 +02:00
Michael Davidsaver 937fb154c1 update release notes 2017-07-18 19:06:55 +02:00
Michael Davidsaver 97e1cd4c69 pvac: add sync. monitor 2017-07-18 17:23:21 +02:00
Michael Davidsaver 158b23cfce __attribute__ error added in gcc 4.3 2017-07-18 15:34:53 +02:00
Michael Davidsaver b2ef7cd0ec more shared_ptr compat 2017-07-18 15:10:32 +02:00
Michael Davidsaver 36be4d3bf7 pvac ensure cancel delivered 2017-07-18 14:02:47 +02:00
Michael Davidsaver 1a47e5fb0a pvac: add synchronous put to 'value' field 2017-07-18 14:02:14 +02:00
Michael Davidsaver edc54aae72 more shared_ptr compat 2017-07-18 13:21:18 +02:00
Michael Davidsaver 2c530868f6 split out caprovider as libpvAccessCA
fixup multi-library build
2017-07-17 13:51:20 +02:00
Michael Davidsaver a8d44dd8c5 remove deprecated form of ChannelProviderRegistry::getProviderNames()
I'm tired of sifting through all the auto_ptr deprecation warnings...
2017-07-17 12:00:11 +02:00
Michael Davidsaver 734b29f299 more simple client 2017-07-14 19:00:08 +02:00
Michael Davidsaver a3350a4f38 update doc 2017-07-14 18:59:02 +02:00
Michael Davidsaver 95a750c4f9 pvaTestClient rename files 2017-07-14 16:56:47 +02:00
Michael Davidsaver f1bc69816b remove compat ChannelProviderRegistry
signal effective API compatibility break due
to change in shared_ptr ownership rules
surrounding ChannelProvder.
2017-07-14 14:37:47 +02:00
Michael Davidsaver 0222463123 update requester.h
move to pvAccess namespace.
2017-07-12 14:26:28 +02:00
Michael Davidsaver 9244d78a5b add MonitorElement::Ref::attach() 2017-07-07 18:44:24 +02:00
Michael Davidsaver 006224b4d1 pva client break ref loop with ChannelRequester
pvutils: remove ChannelRequesterImpl
2017-07-07 18:44:24 +02:00
Michael Davidsaver e5a4fcba38 yet more import/export 2017-07-05 14:33:26 +02:00
Michael Davidsaver 13afc7f6c3 destroyable.h now in pva 2017-07-05 13:17:10 +02:00
Michael Davidsaver e75ba66409 move Destroyable to pva namespace 2017-07-05 11:57:10 +02:00
Michael Davidsaver ce56ac7b1c more Channel defaults 2017-07-03 19:24:00 +02:00
Michael Davidsaver 3d5696b644 compat 2017-07-03 19:23:59 +02:00
Michael Davidsaver 8b8ad08a7f minor 2017-07-03 19:23:46 +02:00
Michael Davidsaver 018858d840 add MonitorElement::Ref 2017-06-28 13:49:59 +02:00
Michael Davidsaver a3185f11da MonitorElement const and state tracking
Mark MonitorElement member pointers as const
to prevent user code from accidentally mangling.

Add 'state' tracking to help debugging
2017-06-27 15:42:27 +02:00
Michael Davidsaver 04c2df53a1 minor 2017-06-26 18:25:39 +02:00
Michael Davidsaver 7ccd8df02f PipelineMonitor -> Monitor
collapse PipelineMonitor into Monitor

no-op virtual call is probably less work than
dynamic_cast.
2017-06-22 13:09:42 +02:00
Michael Davidsaver 77bf33700e default ChannelProvider::channelList 2017-06-21 19:51:30 +02:00
Michael Davidsaver 9dbefeaee3 more doc 2017-06-21 17:41:32 +02:00
Michael Davidsaver 35d2c610bf separate ChannelProviderRegistry for client/server 2017-06-21 14:41:24 +02:00
Michael Davidsaver e7c6b83c43 add OVERRIDE FINAL to PVA client/server providers 2017-06-20 20:27:06 +02:00
Michael Davidsaver 7f625c43e3 ChannelProvider::createChannel() optional ChannelRequester 2017-06-20 19:01:22 +02:00
Michael Davidsaver 9a9896042a more doc 2017-06-20 15:33:36 +02:00
Michael Davidsaver a453dd75fe docs 2017-06-16 17:47:41 +02:00
Michael Davidsaver 8febd176bb PVA client ref. loop breaking
Adjust ownership of BaseRequestImpl sub-classes.
Keep two weak_ptr<>.
one (internal) for tracking relations with Channel.
one (external) for tracking relations w/ user code, and send Q.

external wraps internal, and calls destroy() to break
ref. loops involving internal.

death to m_thisPointer!
2017-06-07 13:33:10 +02:00
Michael Davidsaver de84fadeb7 ChannelProviderRegistry::add w/ factory function 2017-06-06 10:35:13 +02:00
Michael Davidsaver 34eeb0717a SimpleChannelProviderFactory: weak_ptr to shared instance 2017-06-06 09:46:47 +02:00