SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
AGCity Class Reference

#include <AGCity.h>

Collaboration diagram for AGCity:
Collaboration graph

Public Member Functions

 AGCity (RONet *net)
 
void carAllocation ()
 
void completeBusLines ()
 
void completeStreets ()
 
void generatePopulation ()
 
void generateWorkPositions ()
 
const AGStreetgetRandomStreet ()
 
const AGStreetgetStreet (const std::string &edge)
 
void schoolAllocation ()
 
void workAllocation ()
 

Data Fields

std::list< AGBusLinebusLines
 
std::vector< AGPositioncityGates
 
std::list< AGHouseholdhouseholds
 
std::list< AGAdultpeopleIncoming
 
std::list< AGSchoolschools
 
AGDataAndStatisticsstatData
 
std::vector< AGStreet * > streets
 
std::vector< AGWorkPositionworkPositions
 

Private Member Functions

AGSchool closestSchoolTo (AGPosition pos)
 
void generateIncomingPopulation ()
 
void generateOutgoingWP ()
 
AGCityoperator= (const AGCity &)
 invalidated assignment operator More...
 

Private Attributes

int nbrCars
 
RONetnet
 
bool streetsCompleted
 

Detailed Description

Definition at line 60 of file AGCity.h.

Constructor & Destructor Documentation

AGCity::AGCity ( RONet net)
inline

Definition at line 62 of file AGCity.h.

Member Function Documentation

AGSchool AGCity::closestSchoolTo ( AGPosition  pos)
private
void AGCity::completeBusLines ( )

Definition at line 160 of file AGCity.cpp.

References busLines.

Referenced by AGActivityGen::importInfoCity().

void AGCity::generateIncomingPopulation ( )
private

generates people from outside the city for incoming traffic generation

Definition at line 263 of file AGCity.cpp.

References AGDataAndStatistics::getRandomPopDistributed(), AGDataAndStatistics::incomingTraffic, AGDataAndStatistics::limitAgeChildren, AGDataAndStatistics::limitAgeRetirement, peopleIncoming, and statData.

Referenced by generatePopulation().

void AGCity::generateOutgoingWP ( )
private

generates workpositions on the city's gates (entrances) for the outgoing work traffic.

N_out = N_in * (ProportionOut / (1 - ProportionOut)) = N_out = N_in * (Noutworkers / (Nworkers - Noutworkers))

Definition at line 132 of file AGCity.cpp.

References cityGates, AGDataAndStatistics::getPeopleYoungerThan(), AGDataAndStatistics::getRandomCityGateByOutgoing(), getStreet(), AGDataAndStatistics::limitAgeChildren, AGDataAndStatistics::limitAgeRetirement, AGDataAndStatistics::outgoingTraffic, statData, SUMOReal, AGDataAndStatistics::unemployement, AGDataAndStatistics::workPositions, and workPositions.

Referenced by generateWorkPositions().

void AGCity::generateWorkPositions ( )
const AGStreet & AGCity::getRandomStreet ( )
const AGStreet & AGCity::getStreet ( const std::string &  edge)

manipulation functions

verify if it is the first time this function is called in this case, we have to complete the streets with the network edges this means that streets are completely loaded (no any more to be read from stat-file)

Definition at line 394 of file AGCity.cpp.

References completeStreets(), AGDataAndStatistics::consolidateStat(), statData, streets, and streetsCompleted.

Referenced by generateOutgoingWP(), AGActivityGenHandler::parseBusStation(), AGActivityGenHandler::parseCityGates(), and AGActivityGenHandler::parseSchool().

AGCity& AGCity::operator= ( const AGCity )
private

invalidated assignment operator

void AGCity::schoolAllocation ( )

Definition at line 271 of file AGCity.cpp.

References households.

Referenced by AGActivityGen::importInfoCity().

void AGCity::workAllocation ( )

people from the city

people from outside

Definition at line 292 of file AGCity.cpp.

References AGDataAndStatistics::AdultNbr, households, peopleIncoming, statData, AGDataAndStatistics::workPositions, and workPositions.

Referenced by AGActivityGen::importInfoCity().

Field Documentation

std::list<AGBusLine> AGCity::busLines
std::vector<AGPosition> AGCity::cityGates
std::list<AGHousehold> AGCity::households
int AGCity::nbrCars
private

Definition at line 116 of file AGCity.h.

Referenced by carAllocation(), and generatePopulation().

RONet* AGCity::net
private

Definition at line 109 of file AGCity.h.

Referenced by completeStreets().

std::list<AGAdult> AGCity::peopleIncoming
std::list<AGSchool> AGCity::schools
bool AGCity::streetsCompleted
private

false until the function completeStreets is called this function completes streets and turn this parameter to true

Definition at line 114 of file AGCity.h.

Referenced by completeStreets(), and getStreet().

std::vector<AGWorkPosition> AGCity::workPositions

The documentation for this class was generated from the following files: