int cdds_putxx(bin, tag, out_buf, in_array, count);
tag identifies a specific field associated with bin obtained from fdds_member. Note that there is a distinct difference between tags generated from different bin values. This means that you should not be using a tag from the in_bin for anything related to the out_bin. If tag is zero, the default target (trace) is used.
out_buf is the output type buffer into which the output field is found.
The last two arguments describe an input array. The type of in_array is implied by the function name suffix. The number of elements is specified by count.
The function return value is count, or zero if an error occurred.
A simple byte copy is performed, if the binary formats are the same. The put functions convert between most numeric representations. The allowed combinations are implementation dependent. The functions also convert between ascii and ebcdic character formats. Byte fields can be copied, without conversion, from any array. The cdds_put function copies an array into any field type, without conversion. Conversion is not allowed between numeric and character types. If conversion is not possible, an error is reported and the output field is not changed.
Function HostType in_array Pad
cdds_put char zero
cdds_putcs char null terminated
cdds_putcb char blank
cdds_puti int zero
cdds_puts short zero
cdds_putl long zero
cdds_putu unsigned zero
cdds_putus unsigned short zero
cdds_putul unsigned long zero
cdds_putf float zero
cdds_putff float zero (USP fake float)
cdds_putd double zero
BIN_TAG out_bin;
FIELD_TAG tag;
char *out_buf;
const int *in_array;
...
tag = cdds_member(out_bin, 0, "TagName");
...
// Store 100 integers of "TagName" header from in_array in out_buf at correct offsets
cdds_puti(out_bin, tag, out_buf, in_array, 100);
// Write a single trace to output
cddx_write(out_bin, out_buf, 1);
cdds_get Get one field from a buffer