Michael Davidsaver
bef616632c
add ValueBuilder
2017-07-03 17:34:38 +02:00
Michael Davidsaver
568ee1fa85
add debugPtr.h to troubleshoot shared_ptr problems
...
A wrapper around shared_ptr which tracks backwards references
to help untangle complicated ownership situations (aka. ref loop
waiting to happen).
2017-06-26 15:59:45 +02:00
Michael Davidsaver
18283b44b2
more sharedPtr
2017-06-19 14:15:06 +02:00
Michael Davidsaver
278696b28e
more sharedPtr compat
2017-06-15 18:23:20 +02:00
Michael Davidsaver
d272afc128
fixup sharedPtr
2017-06-14 13:59:02 +02:00
Michael Davidsaver
a72451cdbe
Add Destroyable::cleaner to help w/ shared_ptr<> wrapping
2017-06-06 18:38:55 +02:00
Michael Davidsaver
e82489b158
Timer: actually join thread
2017-06-02 11:03:46 +02:00
Michael Davidsaver
22da026888
deprecate unused Queue, MessageQueue, Executor, and TimeFunction
2017-05-15 15:12:28 -04:00
Michael Davidsaver
def0a63008
Queue remove nullElement
...
avoid potential 0=1 situation.
2017-05-15 14:53:54 -04:00
Michael Davidsaver
c5ce75888e
Merge remote-tracking branch 'md/overhaulbytebuf'
...
* md/overhaulbytebuf:
overhaul byteBuffer implementation
2017-05-10 15:36:49 -04:00
Michael Davidsaver
fc2adf98ba
Status: add helpers
...
so that
epics::pvData::Status(epics::pvData::Status::STATUSTYPE_WARNING, msg)
can become
epics::pvData::Status::warn(msg)
2017-04-15 16:19:23 -04:00
Michael Davidsaver
a3c57a5077
bitSet: add logical_and()/_or()
...
Basic logical operations for tests
where a temporary can be avoided.
2017-04-15 16:19:15 -04:00
Michael Davidsaver
28b5dd0163
shared_ptr: further simplify static_shared_vector<>()
2017-04-15 16:06:01 -04:00
Michael Davidsaver
a9111d78d3
overhaul byteBuffer implementation
...
align(n) now fills skipped bytes with '\0'.
align(n,f) to choose a different fill value.
No other changes intended
Use intrinsic byte order swapping builtins for gcc, clang, and msvc.
use assert() to check pre/post conditions.
Remove unused condition macros and unreachable code.
Add tests of byte swapping primitives and
test the correctness of unaligned operations.
add illustrations of flip() and rewind()
2017-04-07 15:09:47 -04:00
Dave Hickin
d978c4c3bf
Fix for MinGW
...
Fixes #42
2016-09-07 10:45:39 +01:00
Dave Hickin
d9072402db
Update source boilerplate for new LICENSE file
2016-07-22 15:56:43 +01:00
dhickin
e5b6a88551
Merge pull request #30 from mdavidsaver/requestermsg
...
Default implementation for Requester::message()
2016-04-12 16:01:45 +01:00
Andrew Johnson
605d4e99b9
Remove remaining 'undef epicsExportSharedSymbols' stuff
2016-04-11 15:24:46 -05:00
Andrew Johnson
47bb62b051
Disable another useless MSVC warning
2016-03-28 16:41:29 -05:00
Andrew Johnson
ed5f48b353
EPICS sources use vxWorks for arch-detection
2016-03-28 16:41:28 -05:00
Andrew Johnson
fa6c2c7683
EPICS sources use _MINGW for arch-detection
2016-03-28 16:41:28 -05:00
Andrew Johnson
3fadc9b481
Remove unnecessary includes from epicsException.h
...
Fix up byteBuffer.h and epicsException.cpp to match.
2016-03-28 16:41:28 -05:00
Andrew Johnson
5c16357fe2
Don't redefine NOMINMAX (clean up MinGW warnings)
2016-03-28 16:41:28 -05:00
Andrew Johnson
ef2e6079ba
Wrap WIN32 #pragma warning(disable) inside push/pop
...
Exclude from MinGW, G++ doesn't understand these pragmas.
2016-03-28 16:41:28 -05:00
Michael Davidsaver
d35010c1cb
Status: remove m_emptyStringtring
...
No reason to have a global for this.
2016-03-18 14:53:10 -04:00
dhickin
bd4b65225c
Merge pull request #28 from mdavidsaver/overhaulbitset
...
bitSet: macros and vector storage
2016-03-17 14:20:20 +00:00
Michael Davidsaver
efa5795193
Default implementation for Requester::message()
...
This is what many sub-classes do (or should)
so lets prepare to remove some boilerplate.
2016-02-26 12:16:28 -05:00
Michael Davidsaver
a8ba831f5e
fix freeze() of shared_vector<void>
2016-02-26 12:13:23 -05:00
Michael Davidsaver
a90405c25a
shared_vector update doc
2016-02-26 12:13:23 -05:00
Michael Davidsaver
b02f771146
shared_vector: vtype lost when freeze/thaw untyped
...
The vtype code is not copied for freeze/thaw
of shared_vector<void> to/from shared_vector<const void>.
2016-02-26 12:13:23 -05:00
Michael Davidsaver
dc94b26e50
fix static_shared_vector_cast<>() no-op casting
...
Turns out that Enablers as typically used for
member functions don't work to select
constructors.
Move this selection logic to
struct detail::static_shared_vector_caster<>
to correctly allow no-op casts (eg. void to void).
Previously this would not compile.
Allows PVScalarArray getAs() and putFrom() using
shared_vector<const void>.
2016-02-26 12:13:23 -05:00
Michael Davidsaver
4c32f37ede
bitSet: macros and vector storage
...
use std::vector<uint64> to manage storage.
Make some global variable "constants" into macros.
add swap()
2016-02-18 18:39:32 -05:00
Dave Hickin
35fd991fdc
Improve directSerialize/Deserialize() documentation
...
Add explanation of returned values and more description of the methods.
2016-02-11 10:51:43 +00:00
Michael Davidsaver
57e1acba79
add missing epicsShareFunc
2016-02-10 11:22:07 -05:00
Michael Davidsaver
620d351946
current_function.h not executable
2016-02-10 14:43:58 +00:00
Michael Davidsaver
3b2e9b2485
move all headers to pv/
2016-02-10 14:40:29 +00:00