SUMO - Simulation of Urban MObility
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
ODDistrictCont.cpp
Go to the documentation of this file.
1
/****************************************************************************/
8
// A container for districts
9
/****************************************************************************/
10
// SUMO, Simulation of Urban MObility; see http://sumo.sourceforge.net/
11
// Copyright (C) 2001-2013 DLR (http://www.dlr.de/) and contributors
12
/****************************************************************************/
13
//
14
// This file is part of SUMO.
15
// SUMO is free software: you can redistribute it and/or modify
16
// it under the terms of the GNU General Public License as published by
17
// the Free Software Foundation, either version 3 of the License, or
18
// (at your option) any later version.
19
//
20
/****************************************************************************/
21
22
23
// ===========================================================================
24
// included modules
25
// ===========================================================================
26
#ifdef _MSC_VER
27
#include <
windows_config.h
>
28
#else
29
#include <
config.h
>
30
#endif
31
32
#include <string>
33
#include "
ODDistrict.h
"
34
#include "
ODDistrictCont.h
"
35
#include <
utils/common/MsgHandler.h
>
36
#include <
utils/common/UtilExceptions.h
>
37
#include <
utils/common/NamedObjectCont.h
>
38
#include <
od2trips/ODDistrictCont.h
>
39
#include <
od2trips/ODDistrictHandler.h
>
40
#include <
utils/xml/XMLSubSys.h
>
41
#include <
utils/common/RandHelper.h
>
42
#include <
utils/common/FileHelpers.h
>
43
#include <
utils/options/OptionsCont.h
>
44
#ifdef CHECK_MEMORY_LEAKS
45
#include <
foreign/nvwa/debug_new.h
>
46
#include <
utils/options/OptionsCont.h
>
47
#endif // CHECK_MEMORY_LEAKS
48
49
50
// ===========================================================================
51
// method definitions
52
// ===========================================================================
53
ODDistrictCont::ODDistrictCont
() {}
54
55
56
ODDistrictCont::~ODDistrictCont
() {}
57
58
59
std::string
60
ODDistrictCont::getRandomSourceFromDistrict
(
const
std::string& name)
const
throw
(
OutOfBoundsException
,
InvalidArgument
) {
61
ODDistrict
* district =
get
(name);
62
if
(district == 0) {
63
throw
InvalidArgument
(
"There is no district '"
+ name +
"'."
);
64
}
65
return
district->
getRandomSource
();
66
}
67
68
69
std::string
70
ODDistrictCont::getRandomSinkFromDistrict
(
const
std::string& name)
const
throw
(
OutOfBoundsException
,
InvalidArgument
) {
71
ODDistrict
* district =
get
(name);
72
if
(district == 0) {
73
throw
InvalidArgument
(
"There is no district '"
+ name +
"'."
);
74
}
75
return
district->
getRandomSink
();
76
}
77
78
void
79
ODDistrictCont::loadDistricts
(std::string districtfile) {
80
if
(!
FileHelpers::exists
(districtfile)) {
81
throw
ProcessError
(
"Could not find network '"
+ districtfile +
"' to load."
);
82
}
83
PROGRESS_BEGIN_MESSAGE
(
"Loading districts from '"
+ districtfile +
"'"
);
84
// build the xml-parser and handler
85
ODDistrictHandler
handler(*
this
, districtfile);
86
if
(!
XMLSubSys::runParser
(handler, districtfile)) {
87
PROGRESS_FAILED_MESSAGE
();
88
}
else
{
89
PROGRESS_DONE_MESSAGE
();
90
}
91
}
92
93
/****************************************************************************/
94
build
buildd
sumo-0.17.1~dfsg
src
od2trips
ODDistrictCont.cpp
Generated on Sun Jun 16 2013 17:30:18 for SUMO - Simulation of Urban MObility by
1.8.3.1