The main changes since release 5.1.1 are:
The main changes since release 5.0 are:
Linux shared library version numbers have been added by setting SHRLIB_VERSION (to 5.1 in this case). So shared object will be libnt.so.5.1 instead of libpvData.so.
Source has moved out of nt directory directly into src.
Headers have been moved into a pv directory. This facilitates using some IDEs such as Qt Creator.
src/nt/ntscalar.cpp -> src/ntscalar.cpp src/nt/ntscalar.h -> src/pv/ntscalar.h
is_a(PVStructurePtr const &) implementation has been added for each type.
This release adds support through wrapper classes and builders for the remaining Normative Types:
Release 5.0 therefore implements fully the 16 Mar 2015 version of the normativeTypes specification.
Each wrapper class has an extended API:
Other changes are:
This is the first release of normativeTypesCPP that is part of an official EPICS V4 release. It is a major rewrite of the previous versions of normativeTypesCPP.
This release provides support through wrapper classes and builders for the following Normative Types:
Each type has a wrapper class of the same name which has functions for checking compatibility of existing PVStructures (isCompatible) and the reported types of Structures (is_a), wraps existing PVStructures (wrap, wrapUnsafe) and provides a convenient interface to all required and optional fields.
Each type has a builder which can create a Structure, a PVStructure or a wrapper around a new PVStructure. In each case optional or extra fields can be added and options such as choice of scalar type can be made.
Additional features are: