This commit fixes a problem introduced in Bazaar commit 12658.
Local CA channels were seeing the data type of a channel as an
IOC-specific (dbFldTypes.h) type value instead of the CA type
value from db_access.h.
We introduce a pair of dbChannel*CAType() macros which convert
the dbChannel's dbr_field_type and final_type values into the
CA equivalent type values, and use these macros whenever the
CA encoded field type value is needed. This ensures that the
meaning of the dbChannel member fields never changes (in 3.14
the addr.dbr_field_type was overwritten with the converted
value when connected to by rsrv).
* ...Show functions take an indent argument (number of spaces to print
in front of each line) instead of a char* intro to avoid allocation at each level,
replacing '\t' with 8 spaces in top level code where necessary
* Refactor element_size -> field_size (as used in dbAddr), also in dbChannel
functions
* Fix: wrong macro name in unused part of db_field_log.h
* Routines with a db_access interface are named dbChannel_xxx
* Using dbch for member variable names in Jeff's code
It seems to work!
TODO: Make dbChannel use a freelist