The function that performs this for a eepgwde::detail::DataFrame is eepgwde::detail::DataFrame::render().
The type for each column in a file can be specified at runtime by using the templated form of this function.
Alternatively, when the eepgwde::detail::DataFrame is constructed, one can specify a service name as a parameter and the constructor will use some pre-compiled definitions of the file format.