Commit Graph

57 Commits

Author SHA1 Message Date
Michael Davidsaver
890c72bad4 factory: templates for BasePV*Array implementations 2011-02-08 13:28:03 -05:00
Michael Davidsaver
3dae9f8728 factory: templates for BasePV* implementations 2011-02-08 13:28:03 -05:00
Michael Davidsaver
7d3e58fcc9 CDRMonitor: lazy node creation 2011-02-08 13:28:02 -05:00
Michael Davidsaver
8adb8b7766 rename showConstructDestruct.h to CDRMonitor.h 2011-02-02 10:11:07 -05:00
Michael Davidsaver
3dd943d3b3 undercounting field
The reference count is 1 on construction
2011-02-02 10:11:07 -05:00
Michael Davidsaver
4a65bf9342 switch remaining to use REFCOUNT macros 2011-02-02 10:11:07 -05:00
Michael Davidsaver
099215986f Use epicsThreadOnce for safe lazy initialization
Also use epicsAtExit to handle cleanup.
2011-02-02 10:11:07 -05:00
Marty Kraimer
52ee919845 Massive name changes to factory.
The changes make it clear what is a default implementation and
what implements base classes defined in pvData.h.
2011-02-01 05:31:55 -05:00
Marty Kraimer
ca3e22fd81 add methods append and remove to PVStructureArray 2011-01-31 09:38:12 -05:00
Matej Sekoranja
62e0495c3d structure equals fix 2011-01-26 00:00:38 +01:00
Matej Sekoranja
7f23d511bf deserialization fix 2011-01-23 23:32:29 +01:00
Marty Kraimer
f4a1173e7a More work on introspection memory management.
Required changes to pvIntrospect.h and pvData.h
2011-01-20 09:16:33 -05:00
Marty Kraimer
85811ffb69 pulled changes 2011-01-19 14:31:54 -05:00
Marty Kraimer
f73f18d692 fix problem in PVField::replaceStructure.
There is still a memory leak
2011-01-19 14:29:12 -05:00
Matej Sekoranja
12b7a51ea7 bitSet serialization 2011-01-16 23:50:56 +01:00
Marty Kraimer
608d74c400 Fix many memory leaks 2011-01-12 10:28:00 -05:00
Matej Sekoranja
b5cc749a94 Field equality test 2010-12-28 11:01:03 +01:00
Marty Kraimer
531a63f913 fix append problem
still may have memory leak problem
2010-12-26 15:34:26 -05:00
Matej Sekoranja
f522fe8e07 StatusCreateFactory moved to misc, bitSet ref. counting added, minor Status mods 2010-12-20 16:17:48 +01:00
Marty Kraimer
b7f5dc5444 resolve diffs with committs for status; some Gold changes in test. 2010-12-20 06:53:49 -05:00
Marty Kraimer
fdf2342157 minor changes 2010-12-20 06:30:48 -05:00
Matej Sekoranja
e4ea15aff3 Status factory added. 2010-12-19 21:17:59 +01:00
Marty Kraimer
188c256dda documentation more complete 2010-12-13 13:12:43 -05:00
Marty Kraimer
381c6de7e9 change build so that only one library pvData gets built 2010-12-08 07:08:42 -05:00
Marty Kraimer
3b90f6b719 property and propertyTest now ready. doc not updated 2010-12-07 14:21:15 -05:00
Marty Kraimer
9db054cc54 timer and timeStamp added to misc. copyright and license info added 2010-11-23 07:30:13 -05:00
Marty Kraimer
28aad96b34 redid showConstructDestruct 2010-11-17 15:28:18 -05:00
Marty Kraimer
6e90ae7f12 added event thread executor timeFunction showConstructDestruct timeStamp 2010-11-17 11:14:38 -05:00
Marty Kraimer
5a7438e028 added linkedList and test for linkedList 2010-11-09 14:23:30 -05:00
Marty Kraimer
2502b381d3 added a test for auxInfo and field offsets 2010-11-04 15:48:06 -04:00
Marty Kraimer
4f871aae05 a complete set of tests for PVData now exists 2010-11-04 09:38:53 -04:00
Marty Kraimer
7f03a52200 Merged conflicts with matej's push 2010-11-02 08:54:15 -04:00
Marty Kraimer
f259c4451d refactor introspection interfaces. replace epicsTypes by pvData types. 2010-11-02 07:53:03 -04:00
Matej Sekoranja
f751d075c5 serialization added 2010-11-01 23:28:03 +01:00
Marty Kraimer
304a9c60d0 Fix bug an indentation in AbstractPVField.h 2010-10-29 05:45:55 -04:00
Marty Kraimer
59c2d447c1 testIntrospection now complete 2010-10-28 10:08:20 -04:00
Marty Kraimer
55b44e953d standardPVField now complete 2010-10-27 13:26:29 -04:00
Marty Kraimer
4e5e4ea782 added StandardPVField
StandardField, which creates standard introspection interfaces, is complele
2010-10-27 08:18:31 -04:00
Marty Kraimer
d2a4a6da8f Except for serialization all pv classes are implemented 2010-10-26 09:11:38 -04:00
Marty Kraimer
59eeadcd10 BasePVStructure now complete 2010-10-26 06:12:44 -04:00
Marty Kraimer
a2b35d1e82 AbstractPVField now finished 2010-10-22 10:41:17 -04:00
Marty Kraimer
fce7b9914b PVDataCreateFactory.cpp now complete 2010-10-21 16:23:28 -04:00
Marty Kraimer
ebbb1191bd ConvertFactory.cpp is now complete 2010-10-21 10:19:42 -04:00
Marty Kraimer
e0ca45a028 added operator!=
Convert.cpp almost done
2010-10-20 16:06:25 -04:00
Marty Kraimer
e5aac3b8e4 Main change is epicsBoolean=>bool
equuals => operator==
Additional implementation in Convert.cpp
2010-10-19 14:52:07 -04:00
Marty Kraimer
4b912a3c30 scalars and arrays implemented 2010-10-01 10:01:27 -04:00
Marty Kraimer
419f340aaa All PVScalar interfaces now implemented 2010-09-30 07:49:29 -04:00
Marty Kraimer
355ac3aa1d Fixed const mess 2010-09-29 09:24:17 -04:00
Marty Kraimer
f6c9b0eea3 1) implemented noDefaultMethods. See effective C++ Item 6. There it is called Uncopyable
2) implemented Lock. See effective C++ item 14.
     This is as easy to use as Java synchronize.
3) wrapper on top of std::string. All usage of string in pvData is one of:
      String - Just a std::string
     StringBuilder - Used where StringBuilder is used in Java
     StringConst - Just a "std::string const". This is used wherever String is used in Java
     StringConstArray - Just like a String[] in Java.
4) The reference counting (incReferenceCount and decReferenceCount) are now private. It is completely handled by the implenentaion.
    NO code that uses pvData needs even know about reference counting.
2010-09-27 08:33:10 -04:00
Marty Kraimer
dd6ecf9bec all pvData interfaces and implementration stubs now defined
Most methods are not implemented and throw an exception
2010-09-24 09:52:08 -04:00