Commit Graph

472 Commits

Author SHA1 Message Date
Michael Davidsaver 4e2f9554a8 server ensure channel onClose() has run 2020-08-10 12:09:55 -07:00
Michael Davidsaver a2f478cc24 server: fixup channel state handling 2020-08-10 12:09:55 -07:00
Michael Davidsaver 6a46e44da9 fix SharedPV onLastDisconnect when not open() 2020-08-10 12:09:55 -07:00
Michael Davidsaver 67843eb392 more config 2020-08-10 12:09:55 -07:00
Michael Davidsaver a6e7e9488d parse IPs with aToIPAddr()
evutil_parse_sockaddr_port() doesn't accept port zero.
2020-08-10 12:09:55 -07:00
Michael Davidsaver 4322eb1491 relax parsing of bool from EPICS_PVA* 2020-08-10 12:09:55 -07:00
Michael Davidsaver 47594c9528 more testpvreq 2020-08-10 12:09:55 -07:00
Michael Davidsaver e52397fb63 Operation::cancel() return true if cancelled 2020-08-10 12:09:55 -07:00
Michael Davidsaver a16a9cc584 client Context::rpc() pass const Value& 2020-08-10 12:09:55 -07:00
Michael Davidsaver 8182b01ef1 minor 2020-08-10 12:09:55 -07:00
Michael Davidsaver edce454dc7 avoid unnecesary copies 2020-08-10 12:09:55 -07:00
Michael Davidsaver 33b6f362db client: Handle orphaned Operations
Allow Operation instances to outlive
the Context through which they were
created.
2020-08-10 12:09:55 -07:00
Michael Davidsaver 5f421ce46b doc 2020-08-10 12:09:55 -07:00
Michael Davidsaver 3b9dd9c405 client Operation expose PV name
Desirable to include in error messages if nothing else
2020-08-10 12:09:55 -07:00
Michael Davidsaver c8f72f5319 detect attempt to call() into inactive loop 2020-08-10 12:09:55 -07:00
Michael Davidsaver 5079be41fe minor 2020-07-26 20:46:12 -07:00
Michael Davidsaver 8fd2f9df8f client Builder rawRequest() take const ref 2020-07-26 20:46:12 -07:00
Michael Davidsaver 64400c5050 client Builders allow default ctor
simplify handling of Builders
2020-07-26 20:46:12 -07:00
Michael Davidsaver 2d475eed74 Add Context::request() builder 2020-07-26 20:46:12 -07:00
Michael Davidsaver e36db5527c Server fail hard on invalid EPICS_PVAS_INTF_ADDR_LIST 2020-07-26 20:46:12 -07:00
Michael Davidsaver 63912a017a add operator<< for Server 2020-07-26 20:46:12 -07:00
Michael Davidsaver 9328d193af indented std::ostream w/ xalloc() 2020-07-26 20:46:12 -07:00
Michael Davidsaver e8649ecdd2 add StaticSource::close() 2020-07-26 20:46:12 -07:00
Michael Davidsaver ce80e8897b Pass SharedPV& to onFirstConnect()/onLastDisconnect()
For consistency among the on*() callbacks.
2020-07-26 20:46:12 -07:00
Michael Davidsaver 80ee77c2ea Add StaticSource::list() 2020-07-26 20:46:12 -07:00
Michael Davidsaver e31e6cda36 Add copy variant of SharedPV::fetch() 2020-07-26 20:46:12 -07:00
Michael Davidsaver 24f3478c98 post() with const ref.
Added "safety" of passing move-able reference
is an illusion since no use_count()==1 test
is done.  Instead extra (shallow) copies
were made for each subscriber.

Instead.  Pass const reference, redefine
MonitorControlOp::post() to transfer ownership,
and make only a single copy in SharedPV::post().
2020-07-26 20:46:12 -07:00
Michael Davidsaver 7debb1fae3 update Config handling
rename from_env() -> fromEnv()
add fromDefs()
2020-07-26 20:46:12 -07:00
Michael Davidsaver c282d94621 testdata MSVC TODO 2020-07-22 11:26:41 -07:00
Michael Davidsaver f4576d4c33 Include input string when reporting parsing error (as NoConvert) 2020-07-22 11:14:57 -07:00
Michael Davidsaver 51386c81b4 convertArr() ignore types when count==0 2020-07-22 11:14:57 -07:00
Michael Davidsaver 5210b7041d fix TypeDef amend 2020-07-22 11:14:57 -07:00
Michael Davidsaver 90203c9b86 truncate when storing scalar numeric 2020-07-19 21:07:15 -07:00
Michael Davidsaver 06e26a0ec5 Value iteration take 3 2020-07-19 21:07:15 -07:00
Michael Davidsaver 0e972ecc71 more testshared 2020-07-19 21:07:15 -07:00
Michael Davidsaver 2381f28c73 allow unselection/clear of Union/Any 2020-07-19 21:07:15 -07:00
Michael Davidsaver f22715063c allow Union deref w/o field name 2020-07-19 21:07:15 -07:00
Michael Davidsaver 38c15e655f fix/test allocArray 2020-07-19 21:07:15 -07:00
Michael Davidsaver f2777e319b fix shared_array::convertTo() 2020-07-16 12:37:48 -07:00
Michael Davidsaver c8c12d9c54 add allocArray() 2020-07-16 12:37:48 -07:00
Michael Davidsaver 01ff23f5b3 add TypeCode::arrayType() 2020-07-16 12:37:48 -07:00
Michael Davidsaver 290a2689fc add Value::lookup() 2020-07-16 12:37:48 -07:00
Michael Davidsaver bb7ac1e8e6 rework iteration, extend to Union 2020-07-16 12:37:48 -07:00
Michael Davidsaver 2d799c275a add Value::nmembers() 2020-07-16 12:37:48 -07:00
Michael Davidsaver 3a7478579f fixup Value::Iterable
default constructable, movable, copyable

expose iterator typedef
2020-07-16 12:37:48 -07:00
Michael Davidsaver b9e025a6dd Value::compareType() -> Value::equalType() 2020-07-03 20:54:47 -07:00
Michael Davidsaver 479f0f1f4d fix spelling in public headers 2020-07-03 20:54:47 -07:00
Michael Davidsaver b1b71f1520 gcc 5.4 compat 2020-07-03 20:54:47 -07:00
Michael Davidsaver 651d7d18fb test template methods of TypeDef 2020-06-29 07:36:23 -07:00
karlosp 3a264e0d12 Fix missing pointer dereference 2020-06-29 06:59:16 -07:00