#pragma once #include "BuildLattice.h" template<class CellType> class BuilderGenericLattice : public BuildLattice<CellType> { public: BuilderGenericLattice(GenericLatticeData& data) { _cellX = data.dx; _cellY = data.dy; _cellZ = data.dz; _cellPositions = std::move(data.positions); if (data.radii.size() == 1) { size_t nCells = _cellPositions.size(); data.radii.resize(nCells); for (size_t i = 1; i < nCells; i++) data.radii[i] = data.radii[0]; } _cellRadii = std::move(data.radii); } };