FIELD_TAG cdds_member(bin_tag, field_tag, field_name);
NOTE: for the cdds_member, if the field_name is "Horz..." and the member cannot be found, the "Horz" will be replaced with "TVPT" and tried again so that "Horz01" thru "Horz20" can be overloaded and used in the cdds_getff and cdds_putff calls.
field_tag is the tag associated with a particular field known by bin_tag.
field_name is a string that names a member or object field within field_tag. If field_name is zero length or blank, the returned tag defaults to the first member or object in the structure, field_tag.
NOTE: for cases where "Horz..." was used in cdds_member, then the return value is the negative ( < -1) of the associated field so that cdds_getf will know to divert the call to cdds_getff with the absolute value of the tag.
int ndx, rec, *ibuf;
BIN_TAG bin;
FIELD_TAG tag, ptag;
...
// find index of header RecNum
tag = cdds_member(bin, 0, "RecNum");
ndx = cdds_index(bin, tag, DDS_INT);
rec = ibuf[ndx];
...
/* find all trace header tags */
tag = cdds_member(bin, 0, "");
while (tag)
{
ptag = cdds_prime(bin, tag);
...
tag = cdds_next(bin, tag);
}
cdds_prec Field precision
cdds_count Field count
cdds_align Field alignment
cdds_genus Field generic type
cdds_name Field name