Branch data Line data Source code
1 : : /*************************************************************************** 2 : : qgsnetworkspeedstrategy.h 3 : : -------------------------------------- 4 : : Date : 2011-04-01 5 : : Copyright : (C) 2010 by Yakushev Sergey 6 : : Email : YakushevS <at> list.ru 7 : : **************************************************************************** 8 : : * * 9 : : * This program is free software; you can redistribute it and/or modify * 10 : : * it under the terms of the GNU General Public License as published by * 11 : : * the Free Software Foundation; either version 2 of the License, or * 12 : : * (at your option) any later version. * 13 : : * * 14 : : ***************************************************************************/ 15 : : 16 : : #ifndef QGSNETWORKSPEEDSTRATEGY_H 17 : : #define QGSNETWORKSPEEDSTRATEGY_H 18 : : 19 : : #include "qgsnetworkstrategy.h" 20 : : #include "qgis_analysis.h" 21 : : 22 : : /** 23 : : * \ingroup analysis 24 : : * \class QgsNetworkSpeedStrategy 25 : : * \brief Strategy for calculating edge cost based on travel time. Should be 26 : : * used for finding fastest path between two points. 27 : : * \since QGIS 3.0 28 : : */ 29 : 0 : class ANALYSIS_EXPORT QgsNetworkSpeedStrategy : public QgsNetworkStrategy 30 : : { 31 : : public: 32 : : 33 : : /** 34 : : * Default constructor 35 : : */ 36 : : QgsNetworkSpeedStrategy( int attributeId, double defaultValue, double toMetricFactor ); 37 : : 38 : : QVariant cost( double distance, const QgsFeature &f ) const override; 39 : : QSet< int > requiredAttributes() const override; 40 : : 41 : : private: 42 : : int mAttributeId; 43 : : double mDefaultValue; 44 : : double mToMetricFactor; 45 : : 46 : : }; 47 : : 48 : : #endif // QGSNETWORKSPEEDSTRATEGY_H