Commit Graph
86 Commits
Author SHA1 Message Date
Michael Davidsaver 6ccca1ce58 const-ify string constants
yes really...
2018-05-18 10:12:34 -07:00
mrkraimer 5b32b4e072 implement suggestions from Andrew 2018-02-15 15:57:00 -05:00
mrkraimer 952c482d68 merge with latest from epics-base 2018-02-08 07:58:52 -05:00
mrkraimer fcaeb414a0 termination and error handling changes.
epicsAtExit is no longer used to call ca_context_destroy.
It is now called from the destructor for CAChannelProvider.

Several changes were made for handling errors.
2018-02-06 10:20:29 -05:00
Michael Davidsaver a039b48c1f caProvider: remove deprecation warnings
make no-op destroy() private to prevent
accidental usage.
2018-01-31 12:49:10 -08:00
Michael Davidsaver d33356ced6 drop deprecated 2018-01-31 12:48:59 -08:00
mrkraimer cb21eb4f1e prevent CAChannel::disconnectChannel() from calling ca_clear_channel twice
This was causing a crash when exiting
2018-01-30 05:08:43 -05:00
mrkraimer 4d2e682a95 make changes suggested by andrew that remove warning messages 2018-01-29 10:19:56 -05:00
mrkraimer d3ce104c33 fix issue #77 2017-12-23 06:35:23 -05:00
Michael Davidsaver c4fe7150c9 caChannel: no need for weak pvRequest
Operations should keep their pvRequest alive.
The only danger of ref. loops with pvRequest
is via PVUnion, which is outside the scope
of pvAccessCPP.
2017-12-19 11:38:26 -06:00
mrkraimer e4182d0b00 fix incorrect logic 2017-11-18 07:05:34 -05:00
mrkraimer 32d0ece858 fix all problems raised in issue #71 2017-11-17 15:18:21 -05:00
mrkraimer 784c6665a6 make pvRequest weak_pointer for get, put, and monitor 2017-11-14 09:11:27 -05:00
mrkraimer 6cd7de069a remove lastRequest messages; in activate only make callback if connected 2017-11-13 05:53:24 -05:00
mrkraimer 84976121d3 remove obsolete reference counting 2017-10-10 10:09:49 -04:00
mrkraimer adcf13f02f Merge https://github.com/epics-base/pvAccessCPP 2017-10-10 09:00:14 -04:00
Michael Davidsaver 60c97c3e88 drop MBLIB 2017-10-05 11:10:27 +02:00
Michael Davidsaver e14b811b53 install CONFIG_PVA_CORE 2017-10-05 11:00:01 +02:00
mrkraimer 39c8eb90e0 remove more code for destroy 2017-09-06 14:06:41 -04:00
mrkraimer a652086e91 channelGet, etc now have shared_ptr to Channel 2017-09-05 06:01:43 -04:00
mrkraimer 30650bfa48 merge latest from epics-base 2017-09-01 14:34:51 -04:00
mrkraimer 734ad725ea changes for RAII 2017-09-01 10:34:15 -04:00
Andrew Johnson f1e938b039 Add epicsShare decorations to caProvider 2017-08-31 15:10:44 -05:00
Michael Davidsaver 146b445832 caProvider add reftrack counters 2017-08-30 17:51:52 -05:00
mrkraimer d18af2ec27 another attempt to fix win32 shared build 2017-08-07 16:29:39 -04:00
mrkraimer 180895c1e0 attempt to fix win32 shared build 2017-08-07 15:26:22 -04:00
mrkraimer d36e6f31b1 CAProvider: only CAClientFactory is public 2017-08-07 11:05:20 -04:00
mrkraimer d70e0b2542 CACMonitor: if already started defend against start being called after reconnect 2017-08-05 15:19:01 -04:00
mrkraimer 5199742bce always call getConnect, putConnect, monitorConnect when reconnecting 2017-08-05 07:34:21 -04:00
mrkraimer f18fe3dca4 call channelDisconnect 2017-08-04 14:15:42 -04:00
mrkraimer b519422df5 record[block=] record[queueSize=] createChannelGet, createChannelPut, and createMonitor before channel connects 2017-07-28 10:36:29 -04:00
mrkraimer f7874396b9 more changes to pull from epics-base 2017-07-21 09:41:15 -04:00
mrkraimer 01b0b821e4 pull from epics-base 2017-07-21 06:22:41 -04:00
Michael Davidsaver ae501327cd don't install internal caChannel.h 2017-07-18 18:18:14 +02:00
Michael Davidsaver 9db8e8ddec pvAccessCA import/export 2017-07-17 15:22:36 +02:00
Michael Davidsaver 132189a5eb more makefile 2017-07-17 14:43:50 +02:00
Michael Davidsaver eef51a9a6d automatic ClientFactory::start()
register the "pva" provider automatically.
2017-07-17 14:29:27 +02:00
Michael Davidsaver 2c530868f6 split out caprovider as libpvAccessCA
fixup multi-library build
2017-07-17 13:51:20 +02:00
Michael Davidsaver e75ba66409 move Destroyable to pva namespace 2017-07-05 11:57:10 +02:00
Michael Davidsaver 405410660d caChannel: remove boilerplate 2017-07-03 19:24:01 +02:00
Michael Davidsaver ec88dcb7d4 hide local symbols 2017-07-03 19:24:00 +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 35d2c610bf separate ChannelProviderRegistry for client/server 2017-06-21 14:41:24 +02:00
Michael Davidsaver 7f625c43e3 ChannelProvider::createChannel() optional ChannelRequester 2017-06-20 19:01:22 +02:00
Michael Davidsaver 64b77f6da3 caProvider: start/stop with atexit 2017-06-20 11:32:15 +02:00
Michael Davidsaver 6926d911ee caProvider: init issues
avoid static init order issues
ref. count to allow multiple calls to CAClientFactory::start()
2017-06-06 09:46:47 +02:00
mrkraimer b37baf8ecb changes suggested by Michael Davidsaver 2017-06-04 14:52:53 -04:00
mrkraimer 0f8a3b2b7d changes explained in MRKCHANGES.md 2017-06-04 07:49:28 -04:00
Michael Davidsaver b05e7699b5 remove no-op lock/unlock from Lock sub-classes 2017-05-24 17:20:17 -04:00
Michael Davidsaver 9dbd354bc0 caProvider: pretend to allow create with Configuration 2017-05-09 18:23:45 -04:00