QGIS/python/PyQt6/analysis/auto_generated/network/qgsnetworkstrategy.sip.in
Nyall Dawson 3f6b490218 Sipify
2025-04-02 11:11:10 +10:00

65 lines
2.3 KiB
Plaintext

/************************************************************************
* 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")
Defines strategy used for calculation of the edge cost in networks.
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 *
************************************************************************/