Commit Graph
191 Commits
Author SHA1 Message Date
Michael Davidsaver d07d2dd30c pvalink put pvRequest 2018-04-18 14:49:43 -07:00
Michael Davidsaver 197e079ad5 pvalink time: key 2018-04-18 14:22:46 -07:00
Michael Davidsaver 27fd0868cf pvalink more processing 2018-04-18 12:29:39 -07:00
Michael Davidsaver e165919e84 pvalink: lset behavior 2018-04-18 12:03:53 -07:00
Michael Davidsaver 2934c8a1e4 minor 2018-04-18 10:46:52 -07:00
Michael Davidsaver c0ac33dc4b pvif handle NELM=1, NORD=0
Sometimes a DBF "scalar" isn't really a scalar.
2018-04-17 22:36:49 -07:00
Michael Davidsaver afe5232653 pvalink pipeline option 2018-04-17 20:38:44 -07:00
Michael Davidsaver 1cc1d1857e fix DBR2PVD() DBF_ENUM handling
must treat DBF_ENUM differently in
pvif than in dbf_copy as the storage
types used are different.
2018-04-17 19:10:54 -07:00
Michael Davidsaver c55d50c158 fix pvalink shutdown during tests 2018-04-17 19:10:54 -07:00
Michael Davidsaver 520ac5a0b5 introduce pv/qsrv.h
workaround EPICS+RTEMS make fault
2018-04-17 19:10:54 -07:00
Michael Davidsaver 9192a872c7 resurrect testpvalink 2018-04-17 19:10:54 -07:00
Michael Davidsaver 79bd35dd3c re-enable PVA links at runtime 2018-04-17 19:10:54 -07:00
Michael Davidsaver f0be2f7016 rewrite pvalink using 3.16 link support API 2018-04-17 19:10:54 -07:00
Michael Davidsaver cd2c1762b7 pvd <-> dbf
Yet more type conversions.

This is a complement to pvif.h in that
PVIF calls into dbPut() which this code is
called by dbPut().
2018-04-17 19:10:54 -07:00
Michael Davidsaver 8b8e421a65 pvif type code mapping cleanup
DBR2PVD() remove default: so that missed case is a compile warning.
return -1 for invalid codes.

PVD2DBR() correct int64 (not used so far)
2018-04-17 19:10:54 -07:00
Michael Davidsaver f3173682fb add weak_ptr threaded work queue 2018-04-17 19:10:54 -07:00
Michael Davidsaver 266f2f9d2d softIocMain.cpp no FINAL_LOCATION for RTEMS 2018-04-17 17:52:43 -07:00
Michael Davidsaver 4a0275a476 missing includes 2018-03-19 15:38:02 -07:00
Michael Davidsaver 9c10c82e82 pdb: ChannelList include groups 2018-03-08 12:24:15 -05:00
Michael Davidsaver d229efbb66 pvif: DBCH cleanup
avoid some duplication
2018-02-14 11:10:09 -08:00
Michael Davidsaver 392a44b791 pvif: DBCH drop unused overload 2018-02-14 10:52:52 -08:00
Michael Davidsaver 6982fa2d8f pvif: DBCH fix NULL check 2018-02-14 10:52:37 -08:00
Michael Davidsaver b7de8ba8b0 some more OVERRIDE/FINAL 2018-02-07 11:11:25 -08:00
Michael Davidsaver a1cb3d302a QSRV implement channelList
just list record names.
2018-02-07 11:04:29 -08:00
Michael Davidsaver b6b6ac3305 fix pdb monitor locking
Guard PV*Monitor::complete to prevent
concurrent access from dbEvent callback,
and PVA server calling release().
2018-02-07 09:29:40 -08:00
Michael Davidsaver 1635e75c86 eliminate seperate mutex for BaseMonitor 2018-02-06 17:47:51 -08:00
Michael Davidsaver 6e77fc85b6 epicsExport.h must be last 2018-02-06 16:16:30 -08:00
Michael Davidsaver 8a9a3550b9 fixup dllimport/export 2018-02-06 15:29:49 -08:00
Michael Davidsaver 95a74aa134 use dbInitEntryFromRecord() from 3.16.1 2018-01-30 12:14:22 -08:00
Michael Davidsaver 9cc417103b pvif: consolidate timestamp translation 2018-01-30 08:19:31 -08:00
Michael Davidsaver 47f2211d9b remove use of auto_ptr
not really necessary, and will hopefully
will build on win32.
2017-12-08 15:51:57 -05:00
Michael Davidsaver 3dfdda667a avoid possible lock order issue with interested_remove
Ensure that Monitors aren't destroy()'d with an extra,
unnecessary, lock held.
2017-12-08 15:51:57 -05:00
Andrew Johnson 0567f6a67d Fixes needed for older VxWorks GCC 2017-11-29 16:53:18 -06:00
Michael Davidsaver dd48d9355c export QSRV version 2017-11-27 17:18:49 -06:00
Michael Davidsaver d2ee1e07db pdb: add 'dbgl' iocsh command 2017-11-22 15:14:32 -06:00
Michael Davidsaver d0035f319f pdbApp: reduce noise when constructing groups 2017-11-22 14:34:48 -06:00
Michael Davidsaver 74f9fd2718 testpdb debugging 2017-11-17 16:48:17 -06:00
Michael Davidsaver 413102a4bc pvif: more put bitset
Better handling of put w/ compressed bitset
2017-11-14 10:49:56 -06:00
Michael Davidsaver 00f69c43d9 pdb: import block=true warning 2017-11-13 13:15:45 -06:00
Michael Davidsaver f9c1489fcc pvif: enable array of string
turns out I did the hard part already...
2017-11-13 11:39:19 -06:00
Michael Davidsaver c8644494f0 pdb: single monitor hold strong ref to PV
ensure sequenced shutdown when subscription closed.
2017-11-13 11:15:31 -06:00
Michael Davidsaver e472e552a0 pdb: consistent provider name
getProviderName() should match the registered name.
2017-11-09 15:49:58 -06:00
Michael Davidsaver 3a53e96b47 pdb: more changes to monitor list handling 2017-11-05 17:55:03 -06:00
Michael Davidsaver e7fa7b624e less noise 2017-11-05 17:27:38 -06:00
Michael Davidsaver 5aa52a20de pdb fix monitor lock order
Don't hold PDB*PV::lock while iterating interested list,
and post()ing.
2017-11-05 17:13:55 -06:00
Michael Davidsaver 1a8de8cd85 minor 2017-11-05 17:13:55 -06:00
Michael Davidsaver 9ca13fec05 use ChannelProviderRegistry::addSingleton() 2017-11-05 17:13:55 -06:00
Michael Davidsaver c79f3624bd add meta-data mappings
map:
* display.description to DESC
* display.format based on PREC
* valueAlarm.*Limit based on alarm limits

format is always empty if qsrvDisableFormat=1
which is the default as I worry that
clients will this printf() spec is unfortunate ways.
2017-11-02 14:43:15 -05:00
Michael Davidsaver bf6597a6c2 yet more win32 2017-11-02 10:33:23 -05:00
Michael Davidsaver 673cb7283d another win32 attempt 2017-11-01 21:25:34 -05:00