SUMO - Simulation of Urban MObility
AGPerson.cpp
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2010-2018 German Aerospace Center (DLR) and others.
4 // activitygen module
5 // Copyright 2010 TUM (Technische Universitaet Muenchen, http://www.tum.de/)
6 // This program and the accompanying materials
7 // are made available under the terms of the Eclipse Public License v2.0
8 // which accompanies this distribution, and is available at
9 // http://www.eclipse.org/legal/epl-v20.html
10 // SPDX-License-Identifier: EPL-2.0
11 /****************************************************************************/
20 // Parent object of every person, contains age and any natural characteristic
21 /****************************************************************************/
22 
23 
24 // ===========================================================================
25 // included modules
26 // ===========================================================================
27 #include <config.h>
28 
29 #include "AGPerson.h"
31 #include <iostream>
32 
33 
34 // ===========================================================================
35 // method definitions
36 // ===========================================================================
37 AGPerson::AGPerson(int age) : age(age) {}
38 
39 
41 
42 
43 void
44 AGPerson::print() const {
45  std::cout << "- Person: Age=" << age << std::endl;
46 }
47 
48 
49 int
51  return age;
52 }
53 
54 
55 bool
56 AGPerson::decide(double proba) const {
57  return (RandHelper::rand(1000) < static_cast<int>(1000.0f * proba));
58 }
59 
60 /****************************************************************************/
virtual ~AGPerson()
Cleans up everything.
Definition: AGPerson.cpp:40
virtual bool decide(double probability) const
Lets the person make a decision.
Definition: AGPerson.cpp:56
static double rand(std::mt19937 *rng=0)
Returns a random real number in [0, 1)
Definition: RandHelper.h:61
virtual void print() const
Puts out a summary of the class properties.
Definition: AGPerson.cpp:44
AGPerson(int age)
Initialises the class attributes.
Definition: AGPerson.cpp:37
virtual int getAge() const
Provides the age of the person.
Definition: AGPerson.cpp:50
int age
Definition: AGPerson.h:65