6 #ifndef OWSSERVICEMANAGER_H
7 #define OWSSERVICEMANAGER_H
10 #include <QNetworkAccessManager>
12 #include <QDomDocument>
27 enum OwsCapabilitiesStatus {
29 OwsCapabilitiesSuccess,
30 OwsCapabilitiesNoOwsServer,
31 OwsCapabilitiesReplyUnreadable,
40 WmsImageFailedServerMessage
43 class OwsMappingCapabilities {
46 OwsMappingCapabilities();
48 void setVersion(
const QString& version);
51 void setTitle(
const QString& title);
54 void setAbstract(
const QString&
abstract);
74 class WmsCapabilities :
public OwsMappingCapabilities {
80 void setContactInformation(
const QString& info);
81 QString contactInformation()
const;
83 void setFees(
const QString& fee);
92 void setReferenceSystemType(
const QString& refSystem);
93 QString referenceSystemType()
const;
111 class WmtsCapabilities :
public OwsMappingCapabilities {
125 enum ImageResultType {
132 class ImageRequestResult {
135 ImageRequestResult();
137 void setImageStatus(WmsImageStatus imageStatus);
138 WmsImageStatus imageStatus()
const;
140 void setResultImage(
const QImage& image);
141 QImage resultImage()
const;
143 void setResultRaw(
const QByteArray& resultRaw);
146 void setResultFormat(
const QString& resultFormat);
149 void setResultType(
const ImageResultType);
150 ImageResultType resultType()
const;
153 WmsImageStatus m_imageStatus;
157 ImageResultType m_resultType;
160 class OwsServiceManager :
public QObject
164 explicit OwsServiceManager(
QObject *parent =
nullptr);
167 void queryOwsCapabilities(
const QUrl& queryUrl,
const QString& serviceString =
"WMS");
170 void queryWmsLevelZeroTile(
const QUrl& url,
const QString &layers,
const QString &projection,
172 void queryWmsPreviewImage(
const QUrl& url,
const QString &layers,
const QString &projection,
174 void queryWmsLegendImage(
const QUrl& url);
181 void queryXYZPreviewImage(
const QString& urlString);
182 void queryXYZLevelZeroTile(
const QString& urlString);
183 void queryXYZImage(
const QString urlString);
187 void setCapabilitiesStatus(OwsCapabilitiesStatus capabilitiesStatus);
188 OwsCapabilitiesStatus capabilitiesStatus()
const;
190 OwsServiceType owsServiceType();
191 WmsCapabilities wmsCapabilities();
192 WmtsCapabilities wmtsCapabilities();
193 ImageRequestResult imageRequestResult();
198 ImageResultType resultType();
201 void wmsCapabilitiesReady();
202 void wmtsCapabilitiesReady();
203 void imageRequestResultReady();
216 OwsCapabilitiesStatus m_capabilitiesStatus;
217 OwsServiceType m_owsServiceType;
218 WmsCapabilities m_wmsCapabilities;
219 WmtsCapabilities m_wmtsCapabilities;
220 ImageRequestResult m_imageRequestResult;
225 #endif // OWSSERVICEMANAGER_H