1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
/************************************************************************
* This file has been generated automatically from *
* *
* src/analysis/network/qgsnetworkstrategy.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.py again *
************************************************************************/
%ModuleHeaderCode
#include <qgsnetworkspeedstrategy.h>
#include <qgsnetworkdistancestrategy.h>
%End
class QgsNetworkStrategy
{
%Docstring(signature="appended")
:py:class:`QgsNetworkStrategy` defines strategy used for calculation of
the edge cost. For example it can take into account travel distance,
amount of time or money. Currently there are two strategies implemented
in the analysis library: :py:class:`QgsNetworkDistanceStrategy` and
:py:class:`QgsNetworkSpeedStrategy`. :py:class:`QgsNetworkStrategy`
implemented using "strategy" design pattern.
%End
%TypeHeaderCode
#include "qgsnetworkstrategy.h"
%End
%ConvertToSubClassCode
if ( dynamic_cast<QgsNetworkDistanceStrategy *>( sipCpp ) != NULL )
sipType = sipType_QgsNetworkDistanceStrategy;
else if ( dynamic_cast<QgsNetworkSpeedStrategy *>( sipCpp ) != NULL )
sipType = sipType_QgsNetworkSpeedStrategy;
else
sipType = NULL;
%End
public:
QgsNetworkStrategy();
virtual ~QgsNetworkStrategy();
virtual QSet<int> requiredAttributes() const;
%Docstring
Returns a list of the source layer attributes needed for cost
calculation. This is method called by :py:class:`QgsGraphDirector`.
%End
virtual QVariant cost( double distance, const QgsFeature &f ) const = 0;
%Docstring
Returns edge cost
%End
};
/************************************************************************
* This file has been generated automatically from *
* *
* src/analysis/network/qgsnetworkstrategy.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.py again *
************************************************************************/
|