Avoid heap-allocation of ParticleDataTable
- prefer
optionaloverunique_ptrto create a 'nullable' object which avoids the need for the explicit heap allocation of ParticleDataTable
optional over unique_ptr to create a 'nullable' object
which avoids the need for the explicit heap allocation of ParticleDataTable