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
karlosp
3a264e0d12
Fix missing pointer dereference
2020-06-29 06:59:16 -07:00
Michael Davidsaver
6dbd7f5263
NTScalar explicit ctor
...
Avoid possibility of accidental incomplete
initialization.
2020-06-25 17:26:02 -07:00
Michael Davidsaver
9f9f038055
allow Null Member
...
Makes Member easier to work with.
2020-06-25 17:26:02 -07:00
Michael Davidsaver
b8be9bd058
fix Value iteration
...
Usage encouraged accidental use of temporary addresses.
Value top(...);
for(auto mem : top["sub"].ichildren()) {
}
ichildren() stores Value* to out of scope temporary
returned by top["sub"].
2020-06-25 11:40:03 -07:00
Michael Davidsaver
5e05249b7d
Allow ID for StructA/UnionA
2020-06-25 11:40:03 -07:00
Michael Davidsaver
783c53b4d0
minor
2020-06-25 11:40:03 -07:00
Michael Davidsaver
7a9d5cb6ab
WIN32: SetErrorMode(0)
2020-06-16 16:39:00 -07:00
Michael Davidsaver
b6ee231ba8
ensure osiSockAttach()
2020-06-16 16:38:59 -07:00
Michael Davidsaver
d6156890f4
print array of quoted strings
2020-06-09 15:03:02 -07:00
Michael Davidsaver
027e590fba
improve type change error messages
2020-05-22 09:17:22 -07:00
Michael Davidsaver
69efc4b8a9
minor
2020-05-22 09:17:22 -07:00
Michael Davidsaver
a556e7e290
fix array of scalar xcode
2020-05-18 19:01:37 -07:00
Michael Davidsaver
609768a33d
add client channel cache
...
Maintain unused channels for 20 seconds before closing.
2020-05-07 18:45:16 -07:00
Michael Davidsaver
47790e5943
ResultWaiter::complete() only once
2020-05-07 18:45:16 -07:00
Michael Davidsaver
6c98614356
minor
2020-05-07 18:45:16 -07:00
Michael Davidsaver
b2826a5234
shared_array(begin, end) use std::distance()
2020-04-25 14:49:39 -07:00
Michael Davidsaver
8ed99da20a
3.14 compat no -fvisibility=hidden
2020-04-25 14:40:43 -07:00
Michael Davidsaver
add99065e9
thread_local -> ThreadEvent
...
at least GLIBC runs TLS dtors before atexit() callbacks
on exit() or return from main().
Use epicsThreadPrivate which doesn't cleanup locals for main().
2020-04-25 14:40:43 -07:00
Michael Davidsaver
549fd92f87
change Server::listSource()
2020-04-25 14:40:43 -07:00
Michael Davidsaver
1a462617a4
minor
2020-04-25 14:40:43 -07:00
Michael Davidsaver
88d23a0314
shared_array add iterator range ctor
2020-04-21 14:37:29 -07:00
Michael Davidsaver
e741e41159
conn limit sequential messages
...
Process at most 4 messages from one connection
before re-contending.
2020-04-17 17:39:01 -07:00
Michael Davidsaver
2a0dd0ee4f
minor
2020-04-17 17:18:23 -07:00
Michael Davidsaver
7e6a08def7
fix Delta print of Union
2020-04-17 14:19:30 -07:00
Michael Davidsaver
d65abb28ea
shared_array fix print of char[]
2020-04-17 14:19:30 -07:00
Michael Davidsaver
ed5bcc8a4f
fix handling of segmented messages
2020-04-17 14:16:44 -07:00
Michael Davidsaver
c32d1ae0e2
fix pipeline w/ queueSize=1
...
Maybe not so useful, but shouldn't stall
2020-04-17 12:10:43 -07:00
Michael Davidsaver
48ca7b34c7
fix VERSION_INT() order
...
defined in pvxs/version.h included via utilpvt.h
2020-04-16 22:01:38 -07:00
Klemen Vodopivec
02f24a74e7
Made it build on EPICS 3.14.12.6, all unit tests pass.
2020-04-16 22:01:38 -07:00
Michael Davidsaver
46bcf877c9
replace epicsParse*() with std::sto*()
2020-04-16 22:01:38 -07:00
Michael Davidsaver
6bb0a364be
MSVC is weird
...
if the log_*_printf() macros include the format
string in __VA_ARGS__ then MSVC helpfully
changes the order of arguments!
So what should be
_log_printf(lvl, "format", "prefix", arg1, arg2)
instead becomes
_log_printf(lvl, "format", arg1, arg2, "prefix")
when expanded by the preprocessor!
Excluding the format string from __VA_ARGS__ seems to
avoid the issue.
2020-04-13 21:39:22 -07:00
Michael Davidsaver
6ffcf60a3c
3.14 compat
2020-04-13 18:06:40 -07:00
Michael Davidsaver
c158bbd6b0
doc
2020-04-13 18:06:40 -07:00
Michael Davidsaver
bc30f4c840
add Value::ifMarked()
2020-04-13 18:06:40 -07:00
Michael Davidsaver
5d7de7254f
workaround MSVC weirdness
2020-04-13 18:06:40 -07:00
Michael Davidsaver
f1cc5a2aa6
minor thread_local
2020-04-13 18:06:40 -07:00
Michael Davidsaver
8c7654f492
quiet some MSVC warnings
2020-04-12 23:29:30 -07:00
Michael Davidsaver
b0eecb949f
fixup client operation object lifetime
2020-04-12 23:29:30 -07:00