|
Stride Reference Manual
- generated for commit 9643b11
|
An implementation of the GeoGridReader using Protocol Buffers. More...
#include <GeoGridProtoReader.h>


Public Member Functions | |
| GeoGridProtoReader (std::unique_ptr< std::istream > inputStream, stride::Population *pop) | |
| Construct the GeoGridJSONReader with the istream which contains the Protobuf info. More... | |
| GeoGridProtoReader (const GeoGridProtoReader &)=delete | |
| No copy constructor. More... | |
| GeoGridProtoReader | operator= (const GeoGridProtoReader &)=delete |
| No copy assignement. More... | |
| void | Read () override |
| Actually perform the read and return the GeoGrid. More... | |
Public Member Functions inherited from geopop::GeoGridReader | |
| GeoGridReader (std::unique_ptr< std::istream > inputStream, stride::Population *pop) | |
| Parametrized constructor. More... | |
| GeoGridReader (const GeoGridReader &)=delete | |
| No copy constructor. More... | |
| GeoGridReader & | operator= (const GeoGridReader &)=delete |
| No copy assignment. More... | |
| virtual | ~GeoGridReader ()=default |
| Default destructor. More... | |
Private Member Functions | |
| void | ParseContactPools (std::shared_ptr< Location > loc, const proto::GeoGrid_Location_ContactPools &protoContactPools) |
| Create ContactPools based on protobuf ContactPools info. More... | |
| void | ParseContactPool (std::shared_ptr< Location > loc, const proto::GeoGrid_Location_ContactPools_ContactPool &protoContactPool, stride::ContactType::Id typeId) |
| Create a ContactPool based on the provided protobuf ContactPool. More... | |
| Coordinate | ParseCoordinate (const proto::GeoGrid_Location_Coordinate &protoCoordinate) |
| Create a Coordinate based on the provided protobuf Coordinate. More... | |
| std::shared_ptr< Location > | ParseLocation (const proto::GeoGrid_Location &protoLocation) |
| Create a Location based on protobuf Location info. More... | |
| stride::Person * | ParsePerson (const proto::GeoGrid_Person &person) |
| Create a Person based on protobuf Person info. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from geopop::GeoGridReader | |
| void | AddCommutes (GeoGrid &geoGrid) |
| Add the commutes that were found to their respective Locations symmetrically. More... | |
Protected Attributes inherited from geopop::GeoGridReader | |
| std::map< unsigned int, stride::Person * > | m_people |
| < Store the persons (id->person) that were found while loping over the ContactPools. More... | |
| std::vector< std::tuple< unsigned int, unsigned int, double > > | m_commutes |
| std::unique_ptr< std::istream > | m_inputStream |
| File to read. More... | |
| stride::Population * | m_population |
| Population to use in the GeoGrid may be nullptr. More... | |
An implementation of the GeoGridReader using Protocol Buffers.
This class is used to read a GeoGrid from a Proto file.
Definition at line 40 of file GeoGridProtoReader.h.
| geopop::GeoGridProtoReader::GeoGridProtoReader | ( | std::unique_ptr< std::istream > | inputStream, |
| stride::Population * | pop | ||
| ) |
Construct the GeoGridJSONReader with the istream which contains the Protobuf info.
Definition at line 31 of file GeoGridProtoReader.cpp.
|
delete |
No copy constructor.
|
delete |
No copy assignement.
|
overridevirtual |
Actually perform the read and return the GeoGrid.
Implements geopop::GeoGridReader.
Definition at line 36 of file GeoGridProtoReader.cpp.
References geopop::GeoGridReader::AddCommutes(), proto::GeoGrid::locations(), proto::GeoGrid::locations_size(), geopop::GeoGridReader::m_commutes, geopop::GeoGridReader::m_inputStream, geopop::GeoGridReader::m_people, geopop::GeoGridReader::m_population, ParseLocation(), ParsePerson(), proto::GeoGrid::persons(), proto::GeoGrid::persons_size(), and stride::Population::RefGeoGrid().

|
private |
Create ContactPools based on protobuf ContactPools info.
Definition at line 61 of file GeoGridProtoReader.cpp.
References proto::GeoGrid_Location_ContactPools_Type_College, proto::GeoGrid_Location_ContactPools_Type_Household, proto::GeoGrid_Location_ContactPools_Type_K12School, proto::GeoGrid_Location_ContactPools_Type_PrimaryCommunity, proto::GeoGrid_Location_ContactPools_Type_SecondaryCommunity, proto::GeoGrid_Location_ContactPools_Type_Workplace, ParseContactPool(), proto::GeoGrid_Location_ContactPools::pools(), proto::GeoGrid_Location_ContactPools::pools_size(), and proto::GeoGrid_Location_ContactPools::type().
Referenced by ParseLocation().


|
private |
Create a ContactPool based on the provided protobuf ContactPool.
Definition at line 87 of file GeoGridProtoReader.cpp.
References stride::ContactPoolSys::CreateContactPool(), geopop::GeoGridReader::m_people, geopop::GeoGridReader::m_population, proto::GeoGrid_Location_ContactPools_ContactPool::people(), proto::GeoGrid_Location_ContactPools_ContactPool::people_size(), and stride::Population::RefPoolSys().
Referenced by ParseContactPools().


|
private |
Create a Coordinate based on the provided protobuf Coordinate.
Definition at line 82 of file GeoGridProtoReader.cpp.
References proto::GeoGrid_Location_Coordinate::latitude(), and proto::GeoGrid_Location_Coordinate::longitude().
Referenced by ParseLocation().


|
private |
Create a Location based on protobuf Location info.
Definition at line 104 of file GeoGridProtoReader.cpp.
References proto::GeoGrid_Location::commutes(), proto::GeoGrid_Location::commutes_size(), proto::GeoGrid_Location::contactpools(), proto::GeoGrid_Location::contactpools_size(), proto::GeoGrid_Location::coordinate(), proto::GeoGrid_Location::id(), geopop::GeoGridReader::m_commutes, proto::GeoGrid_Location::name(), ParseContactPools(), ParseCoordinate(), proto::GeoGrid_Location::population(), proto::GeoGrid_Location_Commute::proportion(), proto::GeoGrid_Location::province(), and proto::GeoGrid_Location_Commute::to().
Referenced by Read().


|
private |
Create a Person based on protobuf Person info.
Definition at line 127 of file GeoGridProtoReader.cpp.
References proto::GeoGrid_Person::age(), stride::Population::CreatePerson(), proto::GeoGrid_Person::id(), and geopop::GeoGridReader::m_population.
Referenced by Read().

