diff --git a/src/surface/surface_generator.hh b/src/surface/surface_generator.hh index 8c07ecd..f14c8ac 100644 --- a/src/surface/surface_generator.hh +++ b/src/surface/surface_generator.hh @@ -1,72 +1,73 @@ /** * @file * @section LICENSE * * Copyright (©) 2016-2020 EPFL (École Polytechnique Fédérale de Lausanne), * Laboratory (LSMS - Laboratoire de Simulation en Mécanique des Solides) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published * by the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . * */ /* -------------------------------------------------------------------------- */ #ifndef SURFACE_GENERATOR_HH #define SURFACE_GENERATOR_HH /* -------------------------------------------------------------------------- */ #include "grid.hh" #include /* -------------------------------------------------------------------------- */ namespace tamaas { /// Class generating random surfaces template class SurfaceGenerator { public: /// Default constructor SurfaceGenerator() = default; /// Construct with surface global size - SurfaceGenerator(std::array global_size) - : global_size(std::move(global_size)) {} + SurfaceGenerator(std::array global_size) { + setSizes(std::move(global_size)); + } /// Default destructor virtual ~SurfaceGenerator() = default; public: /// Build surface profile (array of heights) virtual Grid& buildSurface() = 0; /// Set surface sizes void setSizes(std::array n); /// Set surface sizes void setSizes(const UInt n[dim]); /// Get surface sizes auto getSizes() const { return global_size; } long getRandomSeed() const { return random_seed; } void setRandomSeed(long seed); - /// Maintaining old interface + /// TODO [legacy] remove friend class SurfaceGeneratorFilterFFT; protected: Grid grid; std::array global_size{0}; long random_seed = 0; }; /* -------------------------------------------------------------------------- */ } // namespace tamaas #endif // __SURFACE_GENERATOR_HH__