@@ -7,7 +7,39 @@ class QgsRasterInterface
77{
88%TypeHeaderCode
99#include <qgsrasterinterface.h>
10+ #include <qgsrasterresamplefilter.h>
11+ //#include <qgsrasternuller.h>
12+ #include <qgsrasterrenderer.h>
13+ #include <qgsrasterprojector.h>
14+ #include <qgsrasterdataprovider.h>
15+
16+ // QgsRasterRenderer subclass headers must be here because ConvertToSubClassCode
17+ // from QgsRasterRenderer is probably included
18+ #include <qgspalettedrasterrenderer.h>
19+ #include <qgsmultibandcolorrenderer.h>
20+ #include <qgssinglebandpseudocolorrenderer.h>
21+ #include <qgssinglebandgrayrenderer.h>
22+ #include <qgssinglebandcolordatarenderer.h>
1023%End
24+
25+ %ConvertToSubClassCode
26+ if (dynamic_cast<QgsRasterResampleFilter*>(sipCpp) != NULL)
27+ sipClass = sipClass_QgsRasterResampleFilter;
28+ // if (dynamic_cast<QgsRasterNuller*>(sipCpp) != NULL)
29+ // sipClass = sipClass_QgsRasterNuller;
30+ if (dynamic_cast<QgsRasterRenderer*>(sipCpp) != NULL)
31+ sipClass = sipClass_QgsRasterRenderer;
32+ if (dynamic_cast<QgsRasterProjector*>(sipCpp) != NULL)
33+ sipClass = sipClass_QgsRasterProjector;
34+ if (dynamic_cast<QgsRasterDataProvider*>(sipCpp) != NULL)
35+ {
36+ sipClass = sipClass_QgsRasterDataProvider;
37+ *sipCppRet = static_cast<QgsRasterDataProvider*>(sipCpp);
38+ }
39+ else
40+ sipClass = 0;
41+ %End
42+
1143 public:
1244
1345 enum DataType
0 commit comments