DaStGen means data structure generator. It has been designed and written by Wolfgang Eckhardt and Tobias Weinzierl in 2007. We were unhappy about the way C++ handles classes: If you have a set of bools, they are held in bytes even though multiple of the boolean bits could be combined into one bitfield, we missed the opportunity to have MPI datatypes (automatically), and wanted to play around with different float storage formats. So we created a new class specification language and a Java tool that translated these specs into proper C++ classes. With the second generation of DaStGen, we decided to rewrite the tool with Python and push the whole idea into a C++ preprocessor. Ah, we also added a lot of new features.

Disclaimer: DaStGen’s MPI generation feature as you find it in DaStGen 1.0 seems not to work with C++14 and newer (Intel) MPI versions. I therefore will not maintain DaStGen 1.0 anymore for a while and instead write DaStGen 2.

Code generated by/produced with DaStGen has no copyright, i.e. you are free to choose a license model of your own.