LCOV - code coverage report
Current view: top level - src/netimport/vissim/tempstructs - NIVissimBoundedClusterObject.cpp (source / functions) Coverage Total Hit
Test: lcov.info Lines: 65.0 % 20 13
Test Date: 2025-11-13 15:38:19 Functions: 50.0 % 8 4

            Line data    Source code
       1              : /****************************************************************************/
       2              : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
       3              : // Copyright (C) 2001-2025 German Aerospace Center (DLR) and others.
       4              : // This program and the accompanying materials are made available under the
       5              : // terms of the Eclipse Public License 2.0 which is available at
       6              : // https://www.eclipse.org/legal/epl-2.0/
       7              : // This Source Code may also be made available under the following Secondary
       8              : // Licenses when the conditions for such availability set forth in the Eclipse
       9              : // Public License 2.0 are satisfied: GNU General Public License, version 2
      10              : // or later which is available at
      11              : // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
      12              : // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
      13              : /****************************************************************************/
      14              : /// @file    NIVissimBoundedClusterObject.cpp
      15              : /// @author  Daniel Krajzewicz
      16              : /// @date    Sept 2002
      17              : ///
      18              : // -------------------
      19              : /****************************************************************************/
      20              : #include <config.h>
      21              : 
      22              : 
      23              : #include <cassert>
      24              : #include <utils/geom/Boundary.h>
      25              : #include "NIVissimBoundedClusterObject.h"
      26              : 
      27              : NIVissimBoundedClusterObject::ContType NIVissimBoundedClusterObject::myDict;
      28              : 
      29         1342 : NIVissimBoundedClusterObject::NIVissimBoundedClusterObject()
      30         1342 :     : myBoundary(nullptr), myClusterID(-1) {
      31         1342 :     myDict.insert(this);
      32         1342 : }
      33              : 
      34              : 
      35         1342 : NIVissimBoundedClusterObject::~NIVissimBoundedClusterObject() {
      36         1342 :     delete myBoundary;
      37         1342 : }
      38              : 
      39              : 
      40              : bool
      41        25798 : NIVissimBoundedClusterObject::crosses(const AbstractPoly& poly,
      42              :                                       double offset) const {
      43              :     assert(myBoundary != 0 && myBoundary->xmax() >= myBoundary->xmin());
      44        25798 :     return myBoundary->overlapsWith(poly, offset);
      45              : }
      46              : 
      47              : 
      48              : void
      49            0 : NIVissimBoundedClusterObject::inCluster(int id) {
      50            0 :     myClusterID = id;
      51            0 : }
      52              : 
      53              : 
      54              : bool
      55            0 : NIVissimBoundedClusterObject::clustered() const {
      56            0 :     return myClusterID > 0;
      57              : }
      58              : 
      59              : 
      60              : void
      61            9 : NIVissimBoundedClusterObject::closeLoading() {
      62         1351 :     for (ContType::iterator i = myDict.begin(); i != myDict.end(); i++) {
      63         1342 :         (*i)->computeBounding();
      64              :     }
      65            9 : }
      66              : 
      67              : 
      68              : const Boundary&
      69            0 : NIVissimBoundedClusterObject::getBoundary() const {
      70            0 :     return *myBoundary;
      71              : }
      72              : 
      73              : 
      74              : /****************************************************************************/
        

Generated by: LCOV version 2.0-1