NIVissimConnectionCluster::NodeSubCluster Class Reference


Detailed Description

Definition at line 116 of file NIVissimConnectionCluster.h.


Public Types

typedef std::vector
< NIVissimConnection * > 
ConnectionCont

Public Member Functions

void add (const NodeSubCluster &c)
void add (NIVissimConnection *c)
IntVector getConnectionIDs () const
 NodeSubCluster (NIVissimConnection *c)
bool overlapsWith (const NodeSubCluster &c, SUMOReal offset=0)
size_t size () const
 ~NodeSubCluster ()

Data Fields

Boundary myBoundary
ConnectionCont myConnections

Friends

class NIVissimConnectionCluster

Member Typedef Documentation

Definition at line 128 of file NIVissimConnectionCluster.h.


Constructor & Destructor Documentation

NIVissimConnectionCluster::NodeSubCluster::NodeSubCluster ( NIVissimConnection c  ) 

Definition at line 66 of file NIVissimConnectionCluster.cpp.

00066                                                                              {
00067     add(c);
00068 }

NIVissimConnectionCluster::NodeSubCluster::~NodeSubCluster (  ) 

Definition at line 71 of file NIVissimConnectionCluster.cpp.

00071 {}


Member Function Documentation

void NIVissimConnectionCluster::NodeSubCluster::add ( const NodeSubCluster c  ) 

Definition at line 82 of file NIVissimConnectionCluster.cpp.

References myConnections.

00082                                                                                              {
00083     for (ConnectionCont::const_iterator i=c.myConnections.begin(); i!=c.myConnections.end(); i++) {
00084         add(*i);
00085     }
00086 }

void NIVissimConnectionCluster::NodeSubCluster::add ( NIVissimConnection c  ) 

Definition at line 75 of file NIVissimConnectionCluster.cpp.

References Boundary::add(), NIVissimConnection::getBoundingBox(), myBoundary, and myConnections.

00075                                                                   {
00076     myBoundary.add(c->getBoundingBox());
00077     myConnections.push_back(c);
00078 }

IntVector NIVissimConnectionCluster::NodeSubCluster::getConnectionIDs (  )  const

Definition at line 96 of file NIVissimConnectionCluster.cpp.

References NIVissimConnectionCluster::getNextFreeNodeID(), and myConnections.

00096                                                                 {
00097     IntVector ret;
00098     int id = NIVissimConnectionCluster::getNextFreeNodeID();
00099     for (ConnectionCont::const_iterator i=myConnections.begin(); i!=myConnections.end(); i++) {
00100         ret.push_back((*i)->getID());
00101         (*i)->setNodeCluster(id);
00102     }
00103     return ret;
00104 }

bool NIVissimConnectionCluster::NodeSubCluster::overlapsWith ( const NodeSubCluster c,
SUMOReal  offset = 0 
)

Definition at line 108 of file NIVissimConnectionCluster.cpp.

References myBoundary, Boundary::overlapsWith(), Boundary::xmax(), and Boundary::xmin().

00110                      {
00111     assert(myBoundary.xmax()>=myBoundary.xmin());
00112     assert(c.myBoundary.xmax()>=c.myBoundary.xmin());
00113     return myBoundary.overlapsWith(c.myBoundary, offset);
00114 }

size_t NIVissimConnectionCluster::NodeSubCluster::size (  )  const

Definition at line 90 of file NIVissimConnectionCluster.cpp.

References myConnections.

00090                                                     {
00091     return myConnections.size();
00092 }


Friends And Related Function Documentation

friend class NIVissimConnectionCluster [friend]

Definition at line 125 of file NIVissimConnectionCluster.h.


Field Documentation

Definition at line 127 of file NIVissimConnectionCluster.h.

Referenced by add(), and overlapsWith().


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

Generated on Wed May 5 00:06:53 2010 for Sumo - Simulation of Urban MObility by  doxygen 1.5.6