19 Commits

Author SHA1 Message Date
Nyall Dawson
e0c7daa2d8 Rename QgsProcessingAlgorithm::clone to ::create
Since it better describes what the function does. It returns a new
pristine copy of the algorithm, not a clone of its current state
2017-07-07 09:27:35 +10:00
Nyall Dawson
c2621b1275 Split algorithm execution into separate prepare/process/postProcess steps
The prepare and postProcess steps are designed to be run in main
thread only, while the process step can safely be run in a background
thread.
2017-07-07 09:26:17 +10:00
Nyall Dawson
9156933c9e Add a pure virtual clone method for algorithms
This is required for safely executing the algorithm in a background
thread.
2017-07-07 09:26:17 +10:00
Nyall Dawson
921939e4ec Add method to determine whether dependencies exist between model parameters 2017-07-03 10:50:35 +10:00
Nyall Dawson
77588b9b61 Convert model child algorithm parameter sources to a list
So that multiple input type parameters are correctly handled,
allowing models with child algorithms like merge to correctly
use any combination of static layers/model inputs/child outputs
as their input parameter
2017-06-30 12:50:38 +10:00
Nyall Dawson
60f80f9355 Mark QgsProcessingModelAlgorithm as non-stable API
We want to be able to extend this in future without any
stable API contract.
2017-06-27 08:33:13 +10:00
Nyall Dawson
0a32add69e Port exporting model as python code to c++ 2017-06-27 08:33:13 +10:00
Nyall Dawson
a8b364e2e2 Port another member to c++ 2017-06-24 07:36:46 +10:00
Nyall Dawson
10aeba2e72 Move more modelling code to c++ 2017-06-24 07:36:13 +10:00
Nyall Dawson
e7f13f5bd8 Port model help code to c++ 2017-06-24 07:36:07 +10:00
Nyall Dawson
24eb6fd780 Fix loss of output names in graphical modeler 2017-06-23 13:32:31 +10:00
Nyall Dawson
86f33c682d Expand model unit test coverage 2017-06-22 06:49:09 +10:00
Nyall Dawson
1df9f6b6f0 Start on executing models 2017-06-22 06:47:11 +10:00
Nyall Dawson
fe0f2498d4 Fix generation of destination parameters for models 2017-06-22 06:45:21 +10:00
Nyall Dawson
d3a2f7cd65 Models can now be saved and restored 2017-06-20 19:23:21 +10:00
Nyall Dawson
9a2f14b931 First steps to model/save restore in c++
Models now save to QVariantMap, using QgsXmlUtils to save to
an xml based format (with extension .model3)
2017-06-20 17:26:57 +10:00
Nyall Dawson
179a377da0 Port more model to c++ 2017-06-20 15:31:53 +10:00
Nyall Dawson
1a4a654f8b Port more model API across to c++ 2017-06-20 14:45:13 +10:00
Nyall Dawson
f6358b2118 Begin port of modeler algorithm to c++ 2017-06-20 14:45:13 +10:00