LCOV - code coverage report
Current view: top level - src/utils/router - StopEdge.h (source / functions) Coverage Total Hit
Test: lcov.info Lines: 100.0 % 8 8
Test Date: 2024-10-24 15:46:30 Functions: 87.5 % 8 7

            Line data    Source code
       1              : /****************************************************************************/
       2              : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
       3              : // Copyright (C) 2001-2024 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    StopEdge.h
      15              : /// @author  Michael Behrisch
      16              : /// @date    Mon, 03 March 2014
      17              : ///
      18              : // The StopEdge is a special intermodal edge representing bus and train stops
      19              : /****************************************************************************/
      20              : #pragma once
      21              : #include <config.h>
      22              : 
      23              : #include "IntermodalEdge.h"
      24              : 
      25              : 
      26              : // ===========================================================================
      27              : // class definitions
      28              : // ===========================================================================
      29              : /// @brief the stop edge type representing bus and train stops
      30              : template<class E, class L, class N, class V>
      31              : class StopEdge : public IntermodalEdge<E, L, N, V> {
      32              : public:
      33        23924 :     StopEdge(const std::string id, int numericalID, const E* edge, const double startPos, const double endPos) :
      34        71772 :         IntermodalEdge<E, L, N, V>(id, numericalID, edge, "!stop", 0), myStartPos(startPos), myEndPos(endPos) { }
      35              : 
      36        57303 :     bool includeInRoute(bool /* allEdges */) const {
      37        57303 :         return true;
      38              :     }
      39              : 
      40           16 :     double getStartPos() const {
      41           16 :         return myStartPos;
      42              :     }
      43              : 
      44          856 :     double getEndPos() const {
      45          856 :         return myEndPos;
      46              :     }
      47              : 
      48              : private:
      49              :     /// @brief start position
      50              :     const double myStartPos;
      51              : 
      52              :     /// @brief end position
      53              :     const double myEndPos;
      54              : 
      55              : };
        

Generated by: LCOV version 2.0-1