Commit Graph

77 Commits

Author SHA1 Message Date
Michael Davidsaver
461dbdf0f8 remove Convert pointer from PVField
Allow inline construction of Convert
2013-05-08 17:46:31 -04:00
Michael Davidsaver
ae847aea2b allow putFrom to implicitly resize 2013-05-01 12:18:21 -04:00
Michael Davidsaver
ee5a370c01 misc 2013-04-30 18:14:05 -04:00
Michael Davidsaver
a6bfab2d74 replace copyScalarArray with PVScalarArray::assign 2013-04-30 18:14:04 -04:00
Michael Davidsaver
e948af1851 PVScalar::assign and PVScalarArray::assign 2013-04-30 18:14:04 -04:00
Michael Davidsaver
0e0ab66d45 add PVScalarArray::getAs and PVScalarArray::putFrom 2013-04-30 18:14:02 -04:00
Michael Davidsaver
5e689f94f4 add PVScalar::getAs and PVScalar::putFrom
Allow get/put to a scalar without knowledge of ScalarType

Currently won't work correctly for PVBoolean
2013-04-26 15:44:05 -04:00
Michael Davidsaver
704007092c Convert::getFullName becomes PVField::getFullName
Compatibility wrapper using current Convert API
Allow PVField::getFieldName to be inline'd
Avoid multiple resize and copy operations
on result String.
2013-04-22 14:48:59 -04:00
Matej Sekoranja
c4f6132aca added simple operators 'test', added <<= >>= operators to PVScalar 2013-02-08 22:45:04 +01:00
Matej Sekoranja
a0de4f126f operator<< for all PVField, indent and array_at manipulator 2013-02-07 22:52:16 +01:00
Marty Kraimer
4bc7e9c8fe several minor problems found while developing pvDatabaseCPP 2012-12-12 14:59:33 -05:00
Marty Kraimer
d627e08419 fix bug in PVStructure::appendPVField and PVStructure::appendPVFields 2012-10-11 06:19:08 -04:00
Matej Sekoranja
bd9f1d1949 StandardField IDs, dumpValue fix for (u)int8 2012-10-10 17:59:12 +02:00
Marty Kraimer
5ba0209f39 get rid of all static global objects 2012-10-03 08:59:23 -04:00
Matej Sekoranja
519601595c PVStructure de/serialization fixed 2012-09-12 11:30:58 +02:00
Unknown
55df2e06e2 compatibility with vxWorks 2012-09-05 14:11:07 +02:00
Marty Kraimer
5e3311a024 LICENSE, COPYRIGHT, file header 2012-08-22 14:39:19 -04:00
Matej Sekoranja
4b26e1c442 dumpValue methods 2012-08-21 23:34:59 +02:00
Marty Kraimer
8f3a1dde34 Use "String const &" in many more places 2012-08-20 09:16:43 -04:00
Marty Kraimer
66fb300873 documentation updated; changes for Field::ID 2012-08-17 06:45:20 -04:00
Marty Kraimer
5d6205cb44 changes to PVStructureArray 2012-07-08 08:38:57 -04:00
Marty Kraimer
126fe9c711 use const where appropriate 2012-05-22 11:51:53 -04:00
Marty Kraimer
e9b0dcd9f4 lots of work on Scalar Arrays 2012-05-21 10:06:28 -04:00
Matej Sekoranja
8040ad5fc7 serialization test, shared-ptr const 2012-05-18 11:42:57 +02:00
Marty Kraimer
ca195b44cf more debuging 2012-05-15 11:58:24 -04:00
Marty Kraimer
a396d8e6ac change the way PVField::getFieldName is implemented 2012-05-15 09:40:44 -04:00
Marty Kraimer
87bff33c30 support unsigned; move fieldName; pvData use shared_pointer everywhere 2012-05-08 09:29:30 -04:00
Marty Kraimer
d1a773bcbd revise location od documentation 2011-12-12 09:38:40 -05:00
Marty Kraimer
33183d3dd1 add virtual destructors 2011-08-24 15:44:29 -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
Marty Kraimer
bea5beefcc minor changes to monitor.h 2011-05-12 09:15:15 -04:00
Marty Kraimer
d13284da7f PVField no longer extends Requester. 2011-05-10 07:38:04 -04: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
fc74317993 use Michael Davidsaver version of introspection 2011-04-21 15:21:18 -04:00
Marty Kraimer
b1ffcf37d7 In PVField make extend Request virtual 2011-04-19 05:17:45 -04:00
Marty Kraimer
3a00b879ee Added a new method to PVDataCreate that allows a PVStructure to be created from a PVField array where the elements have a null parent.
PVField::message was changed to pass the message to the top level field adding the field name at each level.
2011-04-15 14:21:55 -04:00
Matej Sekoranja
6357722bb1 PVString now extends Serializable array, serialization/deserialization template of all scalars fixed 2011-03-03 09:39:43 +01: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
67ae45521b PVStructure: implements method of SerializableArray without inheriting
And the implementation is a noop...
2011-02-15 11:11:48 -05:00
Michael Davidsaver
6eabee97fe remove redundant pure virtual definitions
These only need to be given once in the hierarchy as pure virtual,
and then once for each concrete implementation.
2011-02-14 11:26:23 -05:00
Marty Kraimer
54782139c7 simplified definition and implementation of PVAuxInfo. 2011-02-10 07:46:38 -05:00
Michael Davidsaver
294684636d pvData.h: apply templates to PV* and PV*Array classes
The scalar and array value interface classes are largely
copy+paste so can easily be made templates PVScalarValue<>
and PVValueArray<>.  Currently parametrized only by value
type.

Also the *ArrayData helpers become PVArrayData<>
2011-02-04 16:22:15 -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
Marty Kraimer
ad9633c8f6 moved pvType.h from misc to pv.
Made changes to make it clear that is defining the pvData primitive types for pvData.
2011-01-28 08:22:46 -05: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
608d74c400 Fix many memory leaks 2011-01-12 10:28:00 -05:00