26 #include <spdlog/logger.h> 36 template <
typename str
ide::ContactType::Id ID>
58 for (
auto i = 0U; i < ggConfig.
pools[ID]; ++i) {
Configuration data mostly for generating a population, but also for computing the required number of ...
~Generator()=default
Default is OK.
void RegisterPool(stride::ContactPool *p, stride::ContactType::Id typeId)
Register a ContactPool pointer in this Location's pool system.
A Geographic grid of simulation region contains Locations that in turn contain an index to the Contac...
ContactPoolSys & RefPoolSys()
Reference the ContactPoolSys of the Population.
std::shared_ptr< spdlog::logger > m_logger
Logger used by generators.
Key Data structure: container for (a) all individuals in the population (b) the ContactPoolSys wchich...
Definition of ContactPool Id Type.
Logging (spdlog) utilities.
Namespace for the geographic and demograhic classes.
void Apply(GeoGrid &, const GeoGridConfig &)
Generate ContactPools for ContactType::Id as sepcified by data in GeoGridConfig.
stride::util::RnMan m_rn_man
RnManager used by generators.
Header file for the core Population class.
Generator uses geo & pop data to construct ContactPools in the GeoGrid.
ContactPool * CreateContactPool(ContactType::Id typeId)
Create a new contact pool of a given type.
Generator(stride::util::RnMan rnMan, std::shared_ptr< spdlog::logger > logger=nullptr)
Constructor with random number manager and logger.
Location for use within the GeoGrid, contains Coordinate and index to ContactPools.
void AddPools(Location &loc, stride::Population *pop, const GeoGridConfig &ggConfig)
Create a given number ContactPools in the GeoGrid.
stride::ContactType::IdSubscriptArray< unsigned int > pools
Pools per unit (= Household, K12School, College, etc.) for each of the ContactTypes.
static std::shared_ptr< spdlog::logger > CreateNullLogger(const std::string &logger_name="null_logger")
Return a (not-yet-registered) null logger, without registering it.