Automatic
Conversion between Dynamic C-DATA
Structures
and XML
Files
Augustin Lux
Prima (Gravir/INRIA Rhone-Alpes) and Orion (INRIA
Sophia-Antipolis)
Abstract
Given
the importance of C as a programming language, C data structures are the most
important medium for representing dynamic program data, i.e. data during
program execution. XML based representations make
data
persistent, easy to inspect and to communicate. However, converting between
these two types of representation is technically complex.
We
present a set of tools to make conversion between complex arbitrary C data
structures and XML files (almost) as easy as using printf/scanf functions in C.
The tools comprise a program generator to automatically produce the necessay
code from data definitions (header files), and a library for execution support.
Owing to their simplicity, these tools are useful for a range of applications,
e.g. documentation of program executions, data exchange between different
programs, or high-level program inspection.