Commit Graph

103 Commits

Author SHA1 Message Date
Marty Kraimer
d1a773bcbd revise location od documentation 2011-12-12 09:38:40 -05:00
Matej Sekoranja
2f71c5cf85 merge 2011-10-05 22:17:21 +02:00
Matej Sekoranja
5a9eff29fa alive access synced 2011-10-05 22:10:15 +02:00
Guobao Shen
ced144c4c4 add messageTypeCount (=4 by default) for messageTypeName. 2011-09-26 15:08:33 -04:00
Matej Sekoranja
ed0e8d0782 alignData/Buffer methods 2011-09-21 22:27:53 +02:00
Matej Sekoranja
f25177d612 merge 2011-09-17 21:29:30 +02:00
Matej Sekoranja
d76600121c EPICS_BYTE_ORDER != EPICS_FLOAT_WORD_ORDER support 2011-09-17 21:20:12 +02:00
jr76
2e0f0244ad dont include winsock with windows.h or osiSock include fails 2011-09-16 11:23:36 +01:00
jrowlandls
90bc9dbfac merged 2011-09-16 09:06:37 +01:00
jrowlandls
1abdde0c3d fixes for windows xp sp3 sdk 7.1, typedefs for non-portable types, removed variable-length stack allocated arrays in tests, fixed inconsistent timeFunction interface declaraion, replaced variable-length stack allocated array in with std::vector in PVStructure factory as it is followed immediately by further heap allocation 2011-09-16 09:04:00 +01:00
Matej Sekoranja
6f26caf40d float/double swapping fixed 2011-09-15 20:44:08 +02:00
Guobao SHEN
9ef3a62994 solve header include bug 2011-09-13 11:10:51 -04:00
Matej Sekoranja
9e2586fd51 RTEMS support 2011-09-13 09:47:10 +02:00
Matej Sekoranja
c762d94f7a new ByteBuffer and faster/fixed array serialization support 2011-09-08 10:59:56 +02:00
Matej Sekoranja
d862b770d9 minor optimization 2011-09-02 11:50:31 +02:00
Matej Sekoranja
7250d621a2 destroy support added 2011-09-02 11:47:02 +02:00
Matej Sekoranja
042d4ba805 status initialization order fixed 2011-07-29 12:37:58 +02:00
Marty Kraimer
0363478df9 added POINTER_DEFINITIONS to status.h 2011-07-01 07:47:22 -04:00
Marty Kraimer
0a744984ca moved POINTER_DEFS from pvAccess.h to sharedPtr.h 2011-07-01 07:37:18 -04:00
Marty Kraimer
619534b984 include files put into include/pv 2011-06-07 08:30:15 -04:00
Matej Sekoranja
fae332c09f shared pointer def 2011-05-10 10:01:14 +02:00
Marty Kraimer
95ae684d3d add == for introspection; == of PVField is done in base class via convert.
Make monitorQueue compatible with monitor, i.e. shared_pointer
2011-04-27 08:27:10 -04:00
Matej Sekoranja
b45b965f14 added shared_pointer typedefs, monitor.h IF changed to used shared_pointers 2011-04-24 23:56:58 +02:00
Marty Kraimer
f611f0550b add method to messageQueue. Reorganize includes in CDRMonitor.h 2011-04-21 05:23:20 -04:00
Marty Kraimer
efdef77461 fix bug in Convert.cpp; In misc add virtual destructor to abstract classes 2011-04-12 08:26:58 -04:00
Marty Kraimer
323a2d7321 major changes to monitor. Bug in Convert::copyScalar (change every break to rerurn); minor change to StandardPVField and queueVoid 2011-04-05 08:37:16 -04:00
Matej Sekoranja
617871ece9 static initialization fixed 2011-03-08 21:42:36 +01:00
Michael Davidsaver
c75c5fcfa6 Let Thread specify stack size 2011-03-07 12:23:51 -05:00
Michael Davidsaver
226cc62771 identify OSX 2011-03-07 12:23:51 -05:00
Michael Davidsaver
899c22fbf8 tr1 shared_ptr 2011-03-07 12:23:51 -05:00
Michael Davidsaver
fa77eacd4e use epicsMutex for Mutex
Now non-copyable, wasn't before...
2011-03-07 12:23:51 -05:00
Michael Davidsaver
4c88ef8e99 switch to epicsThread
Create a thin wrapper to account for the current interface and behavior
differences.
2011-03-07 12:23:51 -05:00
Michael Davidsaver
0c61ac0833 stack traces with any exception class
Define THROW_EXCEPTION(E) which takes an exception class instance,
and uses it to construct an instance of a class which is a subclass
of E and ExceptionMixin.  The original instance is discarded, and
the newly constructed sub-class is thrown.  Equivalent to
"throw E;".

Define THROW_EXCEPTION2(ETYPE,MSG) which takes an exception class
type, and argument.  Directly constructs a ExceptionMixin sub-class
with the given message argument.  Equivalent to
"throw ETYPE(MSG);".

Define PRINT_EXCEPTION2(E, FP) If E is a instance of a sub-class of
ExceptionMixin then write information to FP (FILE*).

Define SHOW_EXCEPTION(E) If E is a instance of a sub-class of
ExceptionMixin then return a std::string with information.
2011-03-07 12:23:51 -05:00
Matej Sekoranja
9fd158df1f string serialization optimization 2011-03-04 12:13:57 +01:00
Matej Sekoranja
4c7784671b recalculateWordsInUse fix 2011-03-01 23:02:34 +01:00
Marty Kraimer
6d3ef2f5b6 use & instead of * in misc.
Simplify lock.h
2011-02-18 08:17:17 -05:00
Matej Sekoranja
b0c04eea53 Status changes 2011-02-17 01:21:16 +01:00
Michael Davidsaver
bb6cf7c00b avoid method resolution problem from diamond inheritance
Serializable -> SerializableArray
Serializable -> PVField
SerializableArray -> PVArray
PVField -> PVArray

Thus for PVArray the members of SerializeSerializable are reachable
by two paths.  This means that The vtable for PVArray has two seperate
entries for serialize.

Correct resolution is to use virtual inheritance to avoid the
ambiguity.
2011-02-15 11:39:38 -05:00
Michael Davidsaver
afa17f8f4f CDRMonitor: print to streams 2011-02-09 21:07:52 -05:00
Michael Davidsaver
89f5e27577 not everything is boolean
Use correct calls to (de)serialize POD types
2011-02-09 21:07:52 -05:00
Michael Davidsaver
72b5354cb5 CDRMonitor: NDEBUG 2011-02-08 13:28:02 -05:00
Michael Davidsaver
7d3e58fcc9 CDRMonitor: lazy node creation 2011-02-08 13:28:02 -05:00
Michael Davidsaver
29bbaa60f6 Merge remote branch 'origin/master'
* origin/master:
  change #ifndef name
  static init. problem removed
2011-02-04 16:29:30 -05:00
Michael Davidsaver
624dff139d executor: revise run and shutdown
Instead of a flag use a special marker Command inserted into
the queue.
2011-02-04 16:22:15 -05:00
Michael Davidsaver
6a5e908509 timer: avoid unnecessary allocations
Rename *Pvt types to *::Pvt
2011-02-04 16:22:15 -05:00
Michael Davidsaver
2a4f614b7a thread: avoid unnecessary allocations
Use auto_ptr<> for pImpl

Eliminate redundant ThreadListElement class.  It just contains
a Thread* and a ThreadListNode which contains itself?

Make thread main function a static class function to avoid
problems with accessing private members of ThreadPvt.
In this context "private" means used by the implementation
class only.
2011-02-04 16:22:15 -05:00
Michael Davidsaver
07487c1a7b lock: unique_lock not unlocking
oops
2011-02-04 16:22:15 -05:00
Marty Kraimer
71cc5e625d change #ifndef name 2011-02-03 09:16:11 -05:00
Matej Sekoranja
e6c521bfb9 static init. problem removed 2011-02-02 20:34:56 +01:00
Michael Davidsaver
a67a9a5eaa Merge
update test baselines
  rename showConstructDestruct.h to CDRMonitor.h
  undercounting field
  switch tests to CDRMonitor
  switch remaining to use REFCOUNT macros
  Use epicsThreadOnce for safe lazy initialization
  replace ShowConstructDestruct with simpler CDRMonitor
  executor: remove redundant allocations
  lock: Partial implementation of Boost lock templates

Conflicts:
	pvDataApp/misc/StatusCreateFactory.cpp
	pvDataApp/misc/bitSet.cpp
2011-02-02 11:16:03 -05:00