Stride Reference Manual  - generated for commit 9643b11
DefaultPopBuilder.h
Go to the documentation of this file.
1 /*
2  * This is free software: you can redistribute it and/or modify it
3  * under the terms of the GNU General Public License as published by
4  * the Free Software Foundation, either version 3 of the License, or
5  * any later version.
6  * The software is distributed in the hope that it will be useful,
7  * but WITHOUT ANY WARRANTY; without even the implied warranty of
8  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9  * GNU General Public License for more details.
10  * You should have received a copy of the GNU General Public License
11  * along with the software. If not, see <http://www.gnu.org/licenses/>.
12  *
13  * Copyright 2017, 2018 Kuylen E, Willem L, Broeckhove J
14  * Copyright 2018, 2019 Jan Broeckhove and Bistromatics group.
15  */
16 
22 #pragma once
23 
24 #include "AbstractPopBuilder.h"
25 
26 #include <memory>
27 
28 namespace stride {
29 
30 class Population;
31 
36 {
37 public:
40 
47  std::shared_ptr<Population> Build(std::shared_ptr<Population> pop) override;
48 
49 private:
51  std::shared_ptr<Population> MakePersons(std::shared_ptr<Population> pop);
52 };
53 
54 } // namespace stride
AbstractPopBuilder(const boost::property_tree::ptree &config, util::RnMan &rnMan, std::shared_ptr< spdlog::logger > strideLogger=nullptr)
Initializing constructor.
Base Class for PopBuilders.
std::shared_ptr< Population > MakePersons(std::shared_ptr< Population > pop)
Generates pop&#39;s individuals and return pop.
std::shared_ptr< Population > Build(std::shared_ptr< Population > pop) override
Build Population and return it afterwards.
Initializes Population objects.
Namespace for the simulator and related classes.
Definition: Calendar.cpp:28
Base Class for PopBuilders.