Two natural options: |
Follow the MPI standard route: derived datatypes describe buffers consisting of mixed primitive fields scattered in local memory. |
Follow the Java standard route: automatic marshalling of complex structures through object serialization. |