SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
NIVissimBoundedClusterObject.cpp
Go to the documentation of this file.
1 /****************************************************************************/
7 // -------------------
8 /****************************************************************************/
9 // SUMO, Simulation of Urban MObility; see http://sumo-sim.org/
10 // Copyright (C) 2001-2014 DLR (http://www.dlr.de/) and contributors
11 /****************************************************************************/
12 //
13 // This file is part of SUMO.
14 // SUMO is free software: you can redistribute it and/or modify
15 // it under the terms of the GNU General Public License as published by
16 // the Free Software Foundation, either version 3 of the License, or
17 // (at your option) any later version.
18 //
19 /****************************************************************************/
20 
21 
22 // ===========================================================================
23 // included modules
24 // ===========================================================================
25 #ifdef _MSC_VER
26 #include <windows_config.h>
27 #else
28 #include <config.h>
29 #endif
30 
31 
32 #include <cassert>
33 #include <utils/geom/Boundary.h>
35 
36 #ifdef CHECK_MEMORY_LEAKS
37 #include <foreign/nvwa/debug_new.h>
38 #endif // CHECK_MEMORY_LEAKS
39 
41 
43  : myBoundary(0), myClusterID(-1) {
44  myDict.insert(this);
45 }
46 
47 
49  delete myBoundary;
50 }
51 
52 
53 bool
55  SUMOReal offset) const {
56  assert(myBoundary != 0 && myBoundary->xmax() >= myBoundary->xmin());
57  return myBoundary->overlapsWith(poly, offset);
58 }
59 
60 
61 void
63  myClusterID = id;
64 }
65 
66 
67 bool
69  return myClusterID > 0;
70 }
71 
72 
73 void
75  for (ContType::iterator i = myDict.begin(); i != myDict.end(); i++) {
76  (*i)->computeBounding();
77  }
78 }
79 
80 
81 const Boundary&
83  return *myBoundary;
84 }
85 
86 
87 
88 /****************************************************************************/
89