Public Member Functions | Private Member Functions | Private Attributes

DemandCalculator Class Reference

Calculate the demands. More...

#include <demands.h>

Public Member Functions

 DemandCalculator (LinkGraphComponent *graph)
 Create the DemandCalculator and immediately do the calculation.

Private Member Functions

template<class Tscaler >
void CalcDemand (LinkGraphComponent *graph, Tscaler scaler)
 Do the actual demand calculation, called from constructor.

Private Attributes

int32 max_distance
 maximum distance possible on the map
int32 mod_dist
 distance modifier, determines how much demands decrease with distance
int32 accuracy
 accuracy of the calculation

Detailed Description

Calculate the demands.

This class has a state, but is recreated for each call to of DemandHandler::Run.

Definition at line 124 of file demands.h.


Constructor & Destructor Documentation

DemandCalculator::DemandCalculator ( LinkGraphComponent graph  ) 

Create the DemandCalculator and immediately do the calculation.

Parameters:
graph the component to calculate the demands for

Definition at line 168 of file demands.cpp.

References LinkGraphSettings::accuracy, accuracy, LinkGraphSettings::demand_distance, LinkGraphSettings::demand_size, DT_ASYMMETRIC, DT_SYMMETRIC, LinkGraphComponent::GetCargo(), LinkGraphComponent::GetSettings(), and mod_dist.


Member Function Documentation

template<class Tscaler >
void DemandCalculator::CalcDemand ( LinkGraphComponent graph,
Tscaler  scaler 
) [private]

Do the actual demand calculation, called from constructor.

Parameters:
graph the component to calculate the demands for

Definition at line 66 of file demands.cpp.

References accuracy, Node::demand, Edge::distance, LinkGraphComponent::GetEdge(), LinkGraphComponent::GetNode(), LinkGraphComponent::GetSize(), max_distance, min(), mod_dist, Node::supply, and Node::undelivered_supply.


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