Code review comment for lp:~epics-core/epics-base/link-support-2

Revision history for this message
mdavidsaver (mdavidsaver) wrote :

As an exercise in exercising the new API I started on a second implementation of CA links. Only input links work w/o CP. In the process I came across two points.

* What to do about pvlOptTSELisTime? How does TSEL work wrt. link support. It seems quite redundant to copy+paste INP/OUT into TSEL every time.

* I realized that the meta-data functions in struct lset taken together are equivalent to struct dbr_ctrl_double (aka always double). So the typeiness of dbGet() with *poptions isn't needed. Why not have a single lset call which is given a struct to fill in. Perhaps with a bit-mask to reduce work (although I wonder if the locking overhead would be greater).

> long (*getValue)(struct link *plink, short dbrType, void *pbuffer,
> long *pnRequest, dbr_ctrl_double *meta);

(I'm aware that dbr_ctrl_double is in db_access.h, and can't appear in dbLink.h, this is an example)

https://github.com/mdavidsaver/epics-base/blob/integration/src/std/link/lnkCa.c

« Back to merge proposal