The following result-buffer structure, resbuf, is defined in conjunction with a union, ads_u_val, that accommodates the various AutoCAD and ObjectARX data types, as follows:
union ads_u_val { ads_real rreal; ads_real rpoint[3]; short rint; // Must be declared short, not int. char *rstring; long rlname[2]; long rlong; struct ads_binary rbinary; }; struct resbuf { struct resbuf *rbnext; // Linked list pointer short restype; union ads_u_val resval; };
The following figure shows the schematic form of a result-buffer list: